8

たとえば、本、著者、日付情報のデータがあるとします。1 か月あたりの著者の書籍数のクロスフィルターを作成できますか?

4

3 に答える 3

8

受け入れられた答えはそれほど役に立ちませんでした。

代わりに以下を使用しました。

私は最初にキー付きグループを作成しました(あなたの場合は月)

   var authors = cf.dimension(function (d) {
     return +d['month'];
   })

次に、キー付きデータセットに対して map reduce メソッドを使用して平均を計算しました。

グループ化ヘルパー関数:

var monthsAvg = authors.group().reduce(reduceAddbooks, reduceRemovebooks, reduceInitialbooks).all();

map-reduce 関数:

function reduceAddbooks(p, v) {
    p.author = v['author'];
    p.books = +v['books'];
    return p;
}

function reduceRemovebooks(p, v) {
    p.author = v['author'];
    p.books = +v['books'];
    return p;
}

function reduceInitialbooks() {
    return {
        author:0,
        books:0
    };
}
于 2015-01-18T21:08:51.857 に答える