gpt4 book ai didi

python - Pandas 有条件地创建一个新的数据框列

转载 作者:太空宇宙 更新时间:2023-11-04 00:46:46 24 4
gpt4 key购买 nike

这个问题是Pandas conditional creation of a series/dataframe column的延伸.如果我们有这个数据框:

    Col1       Col2
1 A Z
2 B Z
3 B X
4 C Y
5 C W

我们想做的是:

if Col2 in ('Z','X') then Col3 = 'J' 
else if Col2 = 'Y' then Col3 = 'K'
else Col3 = {value of Col1}

我该怎么做?

最佳答案

您可以使用 locisin最后fillna :

df.loc[df.Col2.isin(['Z','X']), 'Col3'] = 'J'
df.loc[df.Col2 == 'Y', 'Col3'] = 'K'
df['Col3'] = df.Col3.fillna(df.Col1)
print (df)
Col1 Col2 Col3
1 A Z J
2 B Z J
3 B X J
4 C Y K
5 C W C

关于python - Pandas 有条件地创建一个新的数据框列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39226656/

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