我正在尝试使用 pandas.Series.value_counts 来获取数据框中值的频率,因此我遍历每一列并获取 values_count ,这给了我一个系列:
我正在努力将这个结果系列转换为字典:
groupedData = newData.groupby('class')
for k, group in groupedData:
dictClass[k] = {}
for eachlabel in dataLabels:
myobj = group[eachlabel].value_counts()
for eachone in myobj:
print type(myobj)
print myobj
我需要的是一个字典:
{'high': 3909 , 'average': 3688, 'less': '182 , 'veryless' : 62}
最佳答案
如果你想将一个Series
转换成一个dict
,你可以调用dict
或.to_dict()
:
>>> s
high 3909
average 3688
less 182
veryless 62
dtype: int64
>>> type(s)
<class 'pandas.core.series.Series'>
>>> dict(s)
{'high': 3909, 'average': 3688, 'veryless': 62, 'less': 182}
>>> s.to_dict()
{'high': 3909, 'average': 3688, 'veryless': 62, 'less': 182}
关于python - 将 pandas.Series.value_counts 返回的系列转换为字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29403192/