我有这个字符串列表:
list = ['a.xxx', 'b.yyy', 'c.zzz', 'a.yyy', 'b.xxx', 'a.www']
我想通过 item.split('.')[0] 来计算项目的出现次数。
需要的东西:
a 3
b 2
c 1
请您参考如下方法:
设置
我不喜欢给内置类的变量名赋值
l = ['a.xxx', 'b.yyy', 'c.zzz', 'a.yyy', 'b.xxx', 'a.www']
选项 1
pd.value_counts(pd.Series(l).str.split('.').str[0])
选项 2
pd.value_counts([x.split('.', 1)[0] for x in l])
选项 3
将 Counter 包装在 pd.Series
pd.Series(Counter([x.split('.', 1)[0] for x in l]))
选项 4
pd.Series(l).apply(lambda x: x.split('.', 1)[0]).value_counts()
选项 5
使用查找
pd.value_counts([x[:x.find('.')] for x in l])
所有产量
a 3
b 2
c 1
dtype: int64
