gpt4 book ai didi

python - Pandas 从列表列中获取唯一值

转载 作者:行者123 更新时间:2023-11-28 21:31:17 26 4
gpt4 key购买 nike

如何获取 pandas 或 numpy 中列表列的唯一值,以便第二列来自

enter image description here

会导致'action', 'crime', 'drama'

我能想到的最接近(但不起作用)的解决方案是:

 genres = data['Genre'].unique()

但这可以预见地导致 TypeError 说明列表是如何不可哈希的。

TypeError: unhashable 类型: 'list'

Set 似乎是个好主意但是

genres = data.apply(set(), columns=['Genre'], axis=1)

但也会导致TypeError: set() 没有关键字参数

最佳答案

你可以使用explode:

data = pd.DataFrame([
{
"title": "The Godfather: Part II",
"genres": ["crime", "drama"],
"director": "Fracis Ford Coppola"
},
{
"title": "The Dark Knight",
"genres": ["action", "crime", "drama"],
"director": "Christopher Nolan"
}
])
# Changed from data.explode("genres")["genres"].unique() as suggested by rafaelc
data["genres"].explode().unique()

结果:

array(['crime', 'drama', 'action'], dtype=object)

关于python - Pandas 从列表列中获取唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58528989/

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