私は、特定の時間に人が行うコミットの数を数えるデータセットで遊んでいます。私は、人がコミット作られ、彼らが犯した回数を時間配列オブジェクトを作成することができます。私はこだわっているアンダースコアを使用して配列内に不足しているオブジェクトを埋め込む
[ { hour: '6', commits: 2 },
{ hour: '7', commits: 6 },
{ hour: '8', commits: 6 },
{ hour: '9', commits: 4 },
{ hour: '10', commits: 4 },
{ hour: '11', commits: 6 },
{ hour: '12', commits: 18 },
{ hour: '13', commits: 18 },
{ hour: '14', commits: 14 },
{ hour: '15', commits: 30 },
{ hour: '16', commits: 24 },
{ hour: '17', commits: 18 },
{ hour: '18', commits: 24 },
{ hour: '19', commits: 22 },
{ hour: '20', commits: 6 },
{ hour: '21', commits: 16 },
{ hour: '22', commits: 8 } ]
が不足している時間を埋めるためにしようとしています。上記の例では、コミットされていない時間を含める必要があります。私は1日中0-24の範囲を使用しています。これは私が結果として得ることを望んだものです:
ここ[
{ hour: '0', commits: 0 },
{ hour: '1', commits: 0 },
{ hour: '2', commits: 0 },
{ hour: '3', commits: 0 },
{ hour: '4', commits: 0 },
{ hour: '5', commits: 0 },
{ hour: '6', commits: 2 },
{ hour: '7', commits: 6 },
{ hour: '8', commits: 6 },
{ hour: '9', commits: 4 },
{ hour: '10', commits: 4 },
{ hour: '11', commits: 6 },
{ hour: '12', commits: 18 },
{ hour: '13', commits: 18 },
{ hour: '14', commits: 14 },
{ hour: '15', commits: 30 },
{ hour: '16', commits: 24 },
{ hour: '17', commits: 18 },
{ hour: '18', commits: 24 },
{ hour: '19', commits: 22 },
{ hour: '20', commits: 6 },
{ hour: '21', commits: 16 },
{ hour: '22', commits: 8 },
{ hour: '23', commits: 0 },
{ hour: '24', commits: 0 }
]
私は、これらのオブジェクトを作成するために使用している機能は次のとおりです。
var getAuthorAndHourCounts = (groupedByAuthor) => {
var result = _.map(groupByAuthor, (value, key, list) => {
var author = key;
var hours = _.countBy(value, 'hour');
var commitHourList = [];
_.each(hours, (v,k) => {
var obj = {};
obj.hour = k;
obj.commits = v;
commitHourList.push(obj);
});
return {
person: author,
times: commitHourList
};
});
return result;
};
どのように私は行方不明の時間を追加することができますか?私はリスト(0-24)を作成し、オブジェクトにゼロの値を追加するために時間がリストにないかどうかを見ていました。それがどのように達成されるかわからない。ちょうどそれが実際のデータでそれを埋める、その後0
コミットして、すべての時間が含まれていて、そのcommitHourList
などの初期化に関する
をコピーする最もパフォーマンスの方法です:あなたあなたのリストには24時間ではなく25時間があることを認識しています。「時間:0」と「時:24」の違いは何ですか? – Wh1T3h4Ck5
これをキャッチしていただきありがとうございます。私は24時間使用するつもりです。 0は真夜中、1は午前1時などとなります。 – AldoTheApache