我有一个大型的pandas数据框,我想计算其中每个唯一值的出现次数,我尝试了以下方法,但它花费了太多时间和内存。有什么更符合Python规范的方法吗?
pack=[]
for index,row in packets.iterrows ():
pack.extend(pd.Series(row).dropna().values.tolist())
unique, count= np.unique(pack, return_counts=True)
counts= np.asarray((unique, count))
packets.value_counts()
怎么样? - cs95pack
列表却不对它进行任何操作? - cs95u,c = np.unique(packets.values.ravel(), return_counts=True)
。 - cs95(array([ 58., 59., 62., ..., nan, nan, nan]), array([120, 3, 5, ..., 1, 1, 1], dtype=int64))
,这不是整个数据框中每个唯一值的计数。 - user3806649pd.Series(packets.values.ravel()).dropna().value_counts()
是什么意思? - cs95