簡體   English   中英

數據框計數值

[英]dask dataframe count values

在我DASK數據幀我有一個Series列表。 因此,列觸發器如下所示:

['a', 'b']
['c']
['a', 'c']

我希望統計一下系列中每個獨特元素的出現,以便得出以下結論:

{'a' : 2,
'b' : 1
'c' : 2}

我設法使其正常工作的唯一方法是:

from collections import Counter

a = df.triggers.loc[:1000000]
b = a.sum()
trigger_counts = Counter(b.compute())

我必須執行.loc[:10000]以將計算保持在合理的時間內。 我覺得我可以更快地完成此操作。 .value_counts()b不起作用,因為它的類型為dask.dataframe.core.Scalar ,並且沒有該屬性。

您可以嘗試:

  import dask.dataframe as dd
  ddf = dd.read_csv('file.csv')
  ddf.country.value_counts().compute().plot(kind='bar')

在我的案例中,“國家”是一列。

您會在上面得到一個不錯的情節!

您可以執行以下操作:

import pandas as pd

triggers_dummies = (pd.get_dummies(df.triggers.apply(pd.Series)
                                              .stack()).sum(level=0))
counts = np.sum(triggers_dummies, axis=0).to_dict()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM