gpt4 book ai didi

python - pandas groupby 并转换为 json 列表

转载 作者:太空狗 更新时间:2023-10-29 17:47:39 26 4
gpt4 key购买 nike

我有一个像下面这样的 Pandas 数据框

idx, f1, f2, f3
1, a, a, b
2, b, a, c
3, a, b, c
.
.
.
87 e, e, e

我需要将其他列转换为基于 idx 列的字典列表。所以,最终结果应该是:

idx, features
1 , [{f1:a, f2:a, f3:b}, {f1:b, f2:a, f3:c}, {f1:a, f2:b, f3:c}]
.
.
.
87, [{f1: e, f2:e, f3:e}]

是否可以在 pandas 中使用 groupby 做这样的事情?

最佳答案

您可以使用 groupbyindex 然后 apply to_json :

print df
f1 f2 f3
idx
1 a a b
1 b a c
1 a b c
87 e e e

print df.groupby(level=0).apply(lambda x: x.to_json(orient='records'))

1 [{"f1":"a","f2":"a","f3":"b"},{"f1":"b","f2":"...
87 [{"f1":"e","f2":"e","f3":"e"}]
dtype: object

或者如果 idx 列不是 index:

print df
idx f1 f2 f3
0 1 a a b
1 1 b a c
2 1 a b c
3 87 e e e

print df.groupby('idx').apply(lambda x: x.to_json(orient='records'))
idx
1 [{"idx":1,"f1":"a","f2":"a","f3":"b"},{"idx":1...
87 [{"idx":87,"f1":"e","f2":"e","f3":"e"}]
dtype: object

关于python - pandas groupby 并转换为 json 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35608208/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com