![](/img/trans.png)
[英]Parse multiple columns from a dictionary column in python pandas dataframe
[英]python dictionary to pandas dataframe with multiple columns
我有以下python字典:
d= {'data' : Counter({ 'important' : 2,
'very' : 3}),
'analytics' : Counter({ 'boring' : 5,
'sleep' : 3})
}
我想以以下格式将其另存为pandas数据框:
category | word | count
data | important | 2
data | very | 3
analytics | boring | 5
analytics | sleep | 3
我尝试了以下方法,但均无效果
df = pd.DataFrame(d.items())
df = pd.DataFrame.from_dict(d, orient='index').reset_index()
df = pd.DataFrame(data)
您可以使用stack
:
df = pd.DataFrame(d).stack().reset_index()
df.columns = ['word','category','count']
print(df)
word category count
0 boring analytics 5.0
1 important data 2.0
2 sleep analytics 3.0
3 very data 3.0
df = pd.DataFrame.from_dict(d, orient='index').stack().reset_index()
df.columns = ['category','word','count']
print(df)
category word count
0 analytics boring 5.0
1 analytics sleep 3.0
2 data important 2.0
3 data very 3.0
嵌套列表理解的另一个解决方案:
df = pd.DataFrame([(key,key1,val1) for key,val in d.items() for key1,val1 in val.items()])
df.columns = ['category','word','count']
print(df)
category word count
0 analytics boring 5
1 analytics sleep 3
2 data important 2
3 data very 3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.