原始文件是json数据。我只是将json数据转换为dataframe。数据集中有两列。一个是desp
,另一个是info
。info
有嵌套字典。
desp info
this is a {'user_id':12349578,'group':'a','request':False}
looks nice{'user_id':23789094,'group':'b','request':False}
sunny day {'user_id':12398467,'group':'c','request':False}

我希望获得一个新的数据框,该数据框只能包含desp
和user_id
作为列名。
所以预期的数据框将是这样的:
desp user_id
this is a 12349578
looks nice 23789094
sunny day 12398467

我想我需要使用concat
和join
来重建数据框,但仍然有一些问题。
答案 0 :(得分:0)
您可以尝试这样的事情:
#if info is a string, then you can yaml to convert to dictionary
import yaml
df = df.applymap(yaml.load)
然后使用transform
:
df['user'] = df['info'].transform(lambda x: x['user_id'])
输出:
desp info user
0 this is a {'user_id': 12349578, 'group': 'a', 'request':... 12349578
1 looks nice {'user_id': 23789094, 'group': 'b', 'request':... 23789094
2 sunny day {'user_id': 12398467, 'group': 'c', 'request':... 12398467