複数の行に基づく合計

アノン

私は次のような巨大なcsvを持っています

name      year     count
Sam       2012       3   
Mike      2012       4
Jeff      2013       5
.
.
.
Sam       2012       8  
Sam       2013       8       
Jeff      2013       9

名前と年の両方が同じである場合にのみカウントを合計するためにd3を使用するにはどうすればよいですか?したがって、出力は次のようになります。

name year sum
Jeff 2013  14
Sam  2012  11
Sam  2013  8
Mike 2012  4

私はこれまでこれを試しました

var test = d3.nest()
    .key(function(d) { return d.name })
    .key(function(d) { return d.year })
    .rollup(function(v) { total: d3.sum(v, function(d) { return d.count }) })
    .object(data);

ただし、これは合計を未定義として出力します。

ジェラルド・フルタド

まず第一に、出力あなたの質問で説明あなたはあなたが欲しいの出力を得ることができるので、あなたのCSVが持っていたいだけの構造だあなたが探している実際の出力は、ありません:d3.csvのように、d3.csvParse(内部的に使用)、返しますオブジェクトの配列これも当てはまりd3.tsvます(質問のCSVはTSVのように見えます...幸い、それは実際には問題ではありません。解決策はCSVでもTSVでも同じです)。

そうは言っても、d3.nestとにかくすぐに非推奨になる、を使用しないでくださいまた、CSV内のすべての行に対して行関数が呼び出されるため、行関数を使用することはできませんしたがって、最も簡単な代替方法は、純粋なJavaScriptソリューションを使用して新しいデータ構造を作成することです。

たとえば、次を使用しreduceます。

const csv = `name,year,count
Sam,2012,3
Mike,2012,4
Jeff,2013,5
Sam,2012,8
Sam,2013,8
Jeff,2013,9`;

const data = d3.csvParse(csv, d3.autoType);

const newData = data.reduce(function(acc, curr) {
  const foundObject = acc.find(function(d) {
    return d.name === curr.name && d.year === curr.year;
  });
  if (foundObject) {
    foundObject.count += curr.count;
  } else {
    acc.push(curr)
  };
  return acc;
}, [])

console.log(newData);
<script src="https://d3js.org/d3.v5.min.js"></script>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

複数の行+ヘッダー基準に基づく合計

分類Dev

複数の基準に基づく合計

分類Dev

複数の列に基づくPandasaggfuncの合計

分類Dev

複数の条件に基づくExcelの合計値

分類Dev

単一行に基づく複数行の計算列

分類Dev

複数の条件に基づく累計

分類Dev

R: 複数の条件に基づいて行を合計する

分類Dev

複数のパラメータに基づくSQLクエリの合計行の追加と品質の向上

分類Dev

パンダの複数の列にわたるIDに基づく合計

分類Dev

行と列の条件の基準に基づく合計

分類Dev

複数の基準を使用した集計と、カウントキーに基づく合計の一致

分類Dev

複数の条件に基づいて行を合計する方法-R?

分類Dev

複数の基準に基づいて異なる合計

分類Dev

Excelの基準に基づく合計

分類Dev

行番号に基づくSSRS合計値

分類Dev

マトリックス条件と複数の基準に基づくExcelの合計

分類Dev

Excel:複数の列の基準に基づく行検索

分類Dev

複数の基準に基づく列から行への値

分類Dev

Numpyのインデックスに基づく行の合計

分類Dev

位置桁の合計(位置に基づく2つの数値の桁の合計)

分類Dev

複数の列にわたる基準に基づいて行を合計する

分類Dev

複数の列の合計に基づいて行を順番に複製する

分類Dev

VBA DIctionaryを使用して、複数の基準に基づいて同じIDの行を合計します

分類Dev

論理を使用した行列に基づく行の合計

分類Dev

行の合計に基づくサブセット列

分類Dev

条件に基づくMySQL複数結合

分類Dev

WHEREに基づく複数の集計クエリ

分類Dev

idフィルター基準に基づいて複数の行を合計する方法は?

分類Dev

col値に基づくMySQLの合計

Related 関連記事

  1. 1

    複数の行+ヘッダー基準に基づく合計

  2. 2

    複数の基準に基づく合計

  3. 3

    複数の列に基づくPandasaggfuncの合計

  4. 4

    複数の条件に基づくExcelの合計値

  5. 5

    単一行に基づく複数行の計算列

  6. 6

    複数の条件に基づく累計

  7. 7

    R: 複数の条件に基づいて行を合計する

  8. 8

    複数のパラメータに基づくSQLクエリの合計行の追加と品質の向上

  9. 9

    パンダの複数の列にわたるIDに基づく合計

  10. 10

    行と列の条件の基準に基づく合計

  11. 11

    複数の基準を使用した集計と、カウントキーに基づく合計の一致

  12. 12

    複数の条件に基づいて行を合計する方法-R?

  13. 13

    複数の基準に基づいて異なる合計

  14. 14

    Excelの基準に基づく合計

  15. 15

    行番号に基づくSSRS合計値

  16. 16

    マトリックス条件と複数の基準に基づくExcelの合計

  17. 17

    Excel:複数の列の基準に基づく行検索

  18. 18

    複数の基準に基づく列から行への値

  19. 19

    Numpyのインデックスに基づく行の合計

  20. 20

    位置桁の合計(位置に基づく2つの数値の桁の合計)

  21. 21

    複数の列にわたる基準に基づいて行を合計する

  22. 22

    複数の列の合計に基づいて行を順番に複製する

  23. 23

    VBA DIctionaryを使用して、複数の基準に基づいて同じIDの行を合計します

  24. 24

    論理を使用した行列に基づく行の合計

  25. 25

    行の合計に基づくサブセット列

  26. 26

    条件に基づくMySQL複数結合

  27. 27

    WHEREに基づく複数の集計クエリ

  28. 28

    idフィルター基準に基づいて複数の行を合計する方法は?

  29. 29

    col値に基づくMySQLの合計

ホットタグ

アーカイブ