gpt4 book ai didi

python - 将(设置)应用于 Pandas 数据框中的两列

转载 作者:太空宇宙 更新时间:2023-11-04 02:17:23 25 4
gpt4 key购买 nike

我在数据框中有三列。我想让第二列和第三列有集合而不是列表。使用 df['column_name_2 和 column_name_3'].apply(set) 会导致错误,因为据我所知,此函数只会接受 1 个参数。然而,将它们分成两个独立的功能,完全消除了第三列。

这是我的:

    column_1     column_2     column_3
1 [lk, 18m] [kjaf]

这就是我想要的:

    column_1     column_2     column_3
1 {lk, 18m} {kjaf}

最佳答案

我认为需要在嵌套列表中定义列,然后 applymap使用设置:

df[['column_2', 'column_3']] = df[['column_2', 'column_3']].applymap(set)

或者使用循环:

cols = ['column_2', 'column_3']
for c in cols:
df[c] = df[c].apply(set)

示例:

df = pd.DataFrame({'column_1': [1, 1], 
'column_2': [['lk', '18m'], ['lk', 'r']],
'column_3': [['kjaf'], ['ddd']]})

print (df)
column_1 column_2 column_3
0 1 [lk, 18m] [kjaf]
1 1 [lk, r] [ddd]

df[['column_2', 'column_3']] = df[['column_2', 'column_3']].applymap(set)
print (df)
column_1 column_2 column_3
0 1 {18m, lk} {kjaf}
1 1 {r, lk} {ddd}

关于python - 将(设置)应用于 Pandas 数据框中的两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52367388/

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