python dataframe列应用函数

python dataframe列应用函数,python,pandas,Python,Pandas,我有一个数据帧 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

我有一个数据帧

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'。如何求解?

与由或创建的布尔掩码一起使用:

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