Pandas 熊猫将两列合并为Json
我有一个熊猫数据框,如下所示Pandas 熊猫将两列合并为Json,pandas,Pandas,我有一个熊猫数据框,如下所示 Col1 Col2 0 a apple 1 a anar 2 b ball 3 b banana 我希望输出json,输出如下 { 'a' : ['apple', 'anar'], 'b' : ['ball', 'banana'] } 您可以'Col1'并将其列表到'Col2'并转换,使用: 输出: {'a': ['apple', 'anar'], 'b': ['ball', 'ban
Col1 Col2
0 a apple
1 a anar
2 b ball
3 b banana
我希望输出json,输出如下
{ 'a' : ['apple', 'anar'], 'b' : ['ball', 'banana'] }
您可以'Col1'
并将其列表到'Col2'
并转换,使用:
输出:
{'a': ['apple', 'anar'], 'b': ['ball', 'banana']}
与Series
一起使用,并通过以下方式最后转换为json
:
如果要将json
写入文件:
s = df.groupby('Col1')['Col2'].apply(list)
s.to_json('file.json')
检查差异:
j = df.groupby('Col1')['Col2'].apply(list).to_json()
d = df.groupby('Col1')['Col2'].apply(list).to_dict()
print (j)
{"a":["apple","anar"],"b":["ball","banana"]}
print (d)
{'a': ['apple', 'anar'], 'b': ['ball', 'banana']}
print (type(j))
<class 'str'>
print (type(d))
<class 'dict'>
j=df.groupby('Col1')['Col2'].apply(list).to_json()
d=df.groupby('Col1')['Col2'].应用(列表).to_dict()
印刷品(j)
{“a”:[“苹果”、“香蕉”],“b”:[“球”、“香蕉”]}
印刷品(d)
{'a':['apple','anar'],'b':['ball','banana']}
打印(类型(j))
印刷品(d类)
它们输出的不是相同的东西吗?不是,不同。dictionary vs json。我刚刚看到了输出:)@anky_91-是的,但它不是json,只是看起来像json。@garg10may-json是字符串,所以to_json
返回json字符串
,但to_dict
重新输入字典。答案是对差异进行修改。
s = df.groupby('Col1')['Col2'].apply(list)
s.to_json('file.json')
j = df.groupby('Col1')['Col2'].apply(list).to_json()
d = df.groupby('Col1')['Col2'].apply(list).to_dict()
print (j)
{"a":["apple","anar"],"b":["ball","banana"]}
print (d)
{'a': ['apple', 'anar'], 'b': ['ball', 'banana']}
print (type(j))
<class 'str'>
print (type(d))
<class 'dict'>