我正在尝试从一个数据框列中提取每个唯一条目的数量,并将其存储为新的数据框,如下所示:
输入
sample_name
sample1
sample2
sample2
sample3
sample3
sample3
所需的输出
sample_name count
sample1 1
sample2 2
sample3 3
修改 我猜这是因为没有显示我尝试过的东西而被推崇,所以对于可能发现自己处于相同情况的其他用户来说,这就是我停滞不前的地方:
鉴于输入数据框,我能够提取唯一条目:
input_df["sample_name"].unique() # ['sample1', 'sample2', 'sample3']
出现次数(不是每个唯一条目):
input_df.groupby("sample_name")["sample_name"].transform("count")
输出
0 1
1 2
2 2
3 3
4 3
5 3
我没想到的是如何提取每个唯一条目的计数。
答案 0 :(得分:2)
您想要value_counts
:
In [142]:
df['sample_name'].value_counts()
Out[142]:
sample3 3
sample2 2
sample1 1
Name: sample_name, dtype: int64
答案 1 :(得分:0)
您也可以在python中使用collections模块中的宝贵Counter类来做到这一点:
from collections import Counter
Counter(df['sample_name'])
这将返回带有sample_name键和出现次数作为值的字典。