gpt4 book ai didi

python - 对于 pandas 数据框中的特定单元格,删除列表的元素

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

所以我使用 python 3 并将 pandas 导入为 pd,并且我有一个数据框 df,其元素是整数列表。我正在尝试编写一个函数,该函数将从数据帧的特定单元格中的列表中删除元素。

我拥有的是:

def eliminate(r,c,v):
'''for row r and column c eliminate value v'''
df[c][r].remove(v)

但是,当我运行该函数时,它会从每个单元格的列表中删除 v 。我不确定这里出了什么问题。

最佳答案

您可以使用loc用于选择和交换 cr:

def eliminate(r,c,v):
'''for row r and column c eliminate value v'''
df.loc[r, c].remove(v)
return df

示例:

df = pd.DataFrame({'A':[[1,2,3],[3,4]],
'B':[[4,5],[6, 3]]})

print (df)
A B
0 [1, 2, 3] [4, 5]
1 [3, 4] [6, 3]

def eliminate(r,c,v):
'''for row r and column c eliminate value v'''
#another solution
#df.loc[r, c] = [x for x in df.loc[r, c] if x != v]
df.loc[r, c].remove(v)
return df

print (eliminate(0,'A',2))
A B
0 [1, 3] [4, 5]
1 [3, 4] [6, 3]

print (eliminate(1,'B',3))
A B
0 [1, 3] [4, 5]
1 [3, 4] [6]

关于python - 对于 pandas 数据框中的特定单元格,删除列表的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41523090/

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