gpt4 book ai didi

python - 从 Pandas Dataframe 列中提取字符串形式的 JSON 对象列表

转载 作者:行者123 更新时间:2023-12-01 09:20:29 26 4
gpt4 key购买 nike

我有一个完全正常的 pandas 数据框,是在加载此数据集后创建的:https://www.kaggle.com/tmdb/tmdb-movie-metadata/data

正如您所看到的,流派列包含一个嵌套结构,它似乎是一个字典列表,或者是 json 对象,具体取决于您如何看待它?这些字典的键是“id”和“name”。

不管怎样,我已经尝试了一切,包括使用 tojson() 将列转换为 json,或者使用 pandas json_normalize() 方法,但没有任何运气。

如果我使用 json_normalize() ,我会得到一个 AttributeError: 'str' object has no attribute 'itervalues':

pd.io.json.json_normalize(obj_movies['genres'], meta = ['id','name']) 

实际上,我的目标是解析此列表,为每一行创建一组唯一的流派名称...

最佳答案

用途:

import ast

obj_movies = pd.read_csv('tmdb_5000_movies.csv')
obj_movies['uniq'] = [list(set([y['name'] for y in x])) for x in obj_movies['genres'].apply(ast.literal_eval)]
print (obj_movies[['uniq'] ].head(10))
uniq
0 [Fantasy, Science Fiction, Adventure, Action]
1 [Fantasy, Adventure, Action]
2 [Crime, Adventure, Action]
3 [Drama, Crime, Thriller, Action]
4 [Science Fiction, Adventure, Action]
5 [Fantasy, Adventure, Action]
6 [Family, Animation]
7 [Science Fiction, Adventure, Action]
8 [Fantasy, Family, Adventure]
9 [Fantasy, Adventure, Action]

关于python - 从 Pandas Dataframe 列中提取字符串形式的 JSON 对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50829492/

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