gpt4 book ai didi

python数据框列应用函数

转载 作者:行者123 更新时间:2023-12-01 01:37:06 25 4
gpt4 key购买 nike

我有一个数据框

import pandas as pd
data = {'A': ['SA01', '0007', 'SA06', '0198', 'SA06'],
'B': [2012, 2012, 2013, 2014, 2014], }
df = pd.DataFrame(data)

df = A B
SA01 2012
0007 2012
SA06 2013
0198 2014
SA06 2014

我想使用 df.apply 或 pandas 的其他函数添加 df['C'] ,如下所示:

df = A     B     C
SA01 2012 M
0007 2012 F
SA06 2013 M
0198 2014 F
SA06 2014 M

如果 df['A'] 包含子字符串 'SA',则 df['C'] 为 'M',否则为 'F'。怎么解决?

最佳答案

使用numpy.where带有 contains 创建的 bool 掩码或startswith :

df['new'] = np.where(df['A'].str.contains('SA'), 'M', 'F')
#alternative solution
#df['new'] = np.where(df['A'].str.startswith('SA'), 'M', 'F')
print (df)
A B new
0 SA01 2012 M
1 0007 2012 F
2 SA06 2013 M
3 0198 2014 F
4 SA06 2014 M

关于python数据框列应用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52295279/

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