Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pandas 熊猫将两列合并为Json_Pandas - Fatal编程技术网

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'>