我在 pandas 中有一个包含两列的数据框。一个是 ID,另一个是长 JSON 对象,对于数据框中的每个对象都是相同的对象。我的目标是为 JSON 对象中的每个键创建列。
这里是输入的例子
ID request_json
175431467 {"Rate":"50","Groups":"7 months - 3 years"
我想将其扩展为包含三列的数据框:ID、Rate 和 Groups。
执行此操作的最佳方法是什么?
最佳答案
您可以将 DataFrame
构造函数与 join
或 concat
一起使用:
import json
df = df[['ID']].join(pd.DataFrame(df['request_json'].apply(json.loads).values.tolist()))
print (df)
ID Groups Rate
0 175431467 7 months - 3 years 50
或者:
df = pd.concat([df['ID'],
pd.DataFrame(df['request_json'].apply(json.loads).values.tolist())], axis=1)
print (df)
ID Groups Rate
0 175431467 7 months - 3 years 50
关于python - 将包含 JSON 对象的数据框扩展为更大的数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44529131/