我有一个如下所示的熊猫数据框
this.$nextTick(() => {
var self = this;
self.$forceUpdate();
});
我正在寻找输出类似
的json Col1 Col2
0 a apple
1 a anar
2 b ball
3 b banana
答案 0 :(得分:3)
您可以groupby()
'Col1'
和apply()
列表到'Col2'
并转换to_dict()
,使用:
df.groupby('Col1')['Col2'].apply(list).to_dict()
输出:
{'a': ['apple', 'anar'], 'b': ['ball', 'banana']}
答案 1 :(得分:2)
将groupby
与apply
一起使用,最后通过Series.to_json
将Series
转换为json
:
j = df.groupby('Col1')['Col2'].apply(list).to_json()
print (j)
{"a":["apple","anar"],"b":["ball","banana"]}
如果要向文件中写入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'>