事实上,我有一个feather
文件,即时载入到一个数据框。
这个数据框有一列,每行都有languages
,就像abone:
| 学生标识|姓名|创建时间|语言|
| - ------| - ------| - ------| - ------|
| 1个|富|2019年1月3日14时30分32.146000 + 00时|[{"语言标识":1、"名称":"英文"、"optin_......"|
| 第二章|酒吧|2019年1月3日14时30分32.146000 + 00时|[{"语言标识":1、"名称":"英文"、"optin_......"|
我的问题是:如何仅使用student_id
列和languages
数组的其余部分生成新的 Dataframe ?
例如上面这个:
| 学生标识|语言标识|语言名称|选择|
| - ------| - ------| - ------| - ------|
| 1个|1个|英语|2019年1月3日14时30分32.148秒|
| 第二章|1个|英语|2021年5月30日上午00时33分02秒915秒|
| 第二章|第二章|葡萄牙语|2022年3月7日星期一07:42:07.082中文|
//编辑:
出于测试目的,将 Dataframe 导出为JSON(orient='records'
):
[{"student_id":"1","name":"Foo","created_at":"2019-01-03T14:30:32.146Z","languages":[{"language_id":1,"name":"English","optin_at":"2019-01-03T14:30:32.148Z"}]},{"student_id":"2","name":"Bar","created_at":"2019-01-03T14:30:32.146Z","languages":[{"language_id":1,"name":"English","optin_at":"2021-05-30T00:33:02.915Z"},{"language_id":2,"name":"Portuguese","optin_at":"2022-03-07T07:42:07.082Z"}]}]
1条答案
按热度按时间krcsximq1#
您可以使用
explode
,然后使用json_normalize
转换为列:输出: