从 Kaggle 下载了一份数据做练习, 其中一列的内容是字典列表, 格式如下:
[{"id": 28, "name": "Action"}, {"id": 12, "name": "Adventure"}, {"id": 14, "name": "Fantasy"}, {"id": 878, "name": "Science Fiction"}]
请问,如何获取到 每个字典中 name 对应的值?
data = load_data() # 读取 csv 文件获取数据, data 为 DataFrame 类型
production=data['production_companies'] # 获取指定列的数据, production 为 Series 类型
p_values = production.values # 获取 values 列表, p_values 为 numpy.ndarray 类型
# 问题出现了 p_values 中的元素为字符串类型!
# ndarray 中的元素是字符串, 如何再进一步提取所需内容(每个字典中 name 对应的值)?
print(p_values)
获得输出如下所示:
['[{"name": "Ingenious Film Partners", "id": 289}, {"name": "Twentieth Century Fox Film Corporation", "id": 306}, {"name": "Dune Entertainment", "id": 444}, {"name": "Lightstorm Entertainment", "id": 574}]' '[{"name": "Walt Disney Pictures", "id": 2}, {"name": "Jerry Bruckheimer Films", "id": 130}, {"name": "Second Mate Productions", "id": 19936}]' '[{"name": "Columbia Pictures", "id": 5}, {"name": "Danjaq", "id": 10761}, {"name": "B24", "id": 69434}]' ... '[{"name": "Front Street Pictures", "id": 3958}, {"name": "Muse Entertainment Enterprises", "id": 6438}]' '[]' '[{"name": "rusty bear entertainment", "id": 87986}, {"name": "lucky crow films", "id": 87987}]']
尝试将 ndarray 转为 list, 结果元素类型依旧是 string
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.