pandas fillna多列无效

pandas fillna多列无效

方法1

df.fillna(value={'f_job_desc_text': '',
                      'f_project_desc_text': '',
                      'f_job_desc1' : '',
                      'f_job_desc2':'',
                      'f_job_desc3':'',
                      'f_self_assignment':''
                      }, inplace=True)

方法2

df.fillna(value={'f_job_desc_text': ''}, inplace=True)
df.fillna(value={'f_project_desc_text': ''}, inplace=True)
df.fillna(value={'f_job_desc1': ''}, inplace=True)
df.fillna(value={'f_job_desc2': ''}, inplace=True)
df.fillna(value={'f_job_desc3': ''}, inplace=True)
df.fillna(value={'f_self_assignment': ''}, inplace=True)

方法3

df = df.fillna(value={'f_job_desc_text': ''})
df = df.fillna(value={'f_project_desc_text': ''})
df = df.fillna(value={'f_job_desc1': ''})
df = df.fillna(value={'f_job_desc2': ''})
df = df.fillna(value={'f_job_desc3': ''})
df = df.fillna(value={'f_self_assignment': ''})

方法4

textfileds = ['f_job_desc_text','f_project_desc_text','f_job_desc1','f_job_desc2','f_job_desc3','f_self_assignment']
df.loc[:, textfileds] = df.loc[:, textfileds].fillna('')

方法5

 df.loc[:, 'f_job_desc_text'].fillna(value='',inplace=True)
 df.loc[:, 'f_project_desc_text'].fillna(value='',inplace=True)
 df.loc[:, 'f_job_desc1'].fillna(value='',inplace=True)
 df.loc[:, 'f_job_desc2'].fillna(value='',inplace=True)
 df.loc[:, 'f_job_desc3'].fillna(value='',inplace=True)
 df.loc[:, 'f_self_assignment'].fillna(value='',inplace=True)

试了五种方法,只有方法5有效,可能是pandas版本问题,具体原因未知,记录之
参考:
https://www.zhihu.com/question/67146387
https://www.zhihu.com/question/67146387

你可能感兴趣的:(【python】,pandas)