我想将cast列中json格式的每一行的键和值分别解压为单独的列和它们的值。所以基本上,cast_id,character应该在数据框中用各自的值分隔成列
我试过:
from pandas.io.json import json_normalize
data_1 = json_normalize(data = casts['cast'],
meta =['cast_id', 'character', 'credit_id', 'gender', 'id','name','order', 'profile_path'])
代码正在抛出错误:AttributeError: 'str' object has no attribute 'values'
我查找了您正在使用的数据集,这将起作用:
from ast import literal_eval
casts['cast'] = casts['cast'].apply(literal_eval)
您现在可以通过执行
找到每部电影(例如第一部)的演员阵容
json_normalize(data=casts['cast'][0])
如果您想要包含所有电影的所有演员阵容成员的数据帧,请执行以下操作:
total_cast = pd.DataFrame()
for i in range(len(casts)): total_cast = total_cast.append(json_normalize(data=casts['cast'][i]))
相关问题 更多 >
编程相关推荐