Python 计算列中某个值的出现次数并存储到字典
假设我有一个名称和年龄的数据框架,其中name(type object)是索引,age(type int)是唯一的列 我想计算每个名字出现的次数,不管这个名字是否重复了不止一次,并将它们存储在字典中。例如,如果有7个Ann,那么字典中的键值对应该是{'Ann':7}。这似乎不起作用:Python 计算列中某个值的出现次数并存储到字典,python,pandas,dataframe,dictionary,Python,Pandas,Dataframe,Dictionary,假设我有一个名称和年龄的数据框架,其中name(type object)是索引,age(type int)是唯一的列 我想计算每个名字出现的次数,不管这个名字是否重复了不止一次,并将它们存储在字典中。例如,如果有7个Ann,那么字典中的键值对应该是{'Ann':7}。这似乎不起作用: name_dict = df.groupby(df['name']).count() 谢谢。你就快到了。如果你有一个数据帧 df = pd.DataFrame({'Name':['Ann','Bob','Ann'
name_dict = df.groupby(df['name']).count()
谢谢。你就快到了。如果你有一个数据帧
df = pd.DataFrame({'Name':['Ann','Bob','Ann','Bob','Ann',], 'Age':[23,34,45,56,12]})
然后运行以下命令:
df.groupby('Name').count().to_dict(orient='dict')['Age']
产生
{'Ann': 3, 'Bob': 2}
上面的代码应该可以正常工作,您在尝试时遇到了什么错误?您好,谢谢您的回复。我的代码返回一个错误“dict”not understoodhmm。你用的是什么版本的熊猫
pip show pandas
实际上你根本不需要那个位,我认为这应该也可以df.groupby('Name').count().to_dict()['Age']