这不会赢得任何速度方面的奖励,但是如果Dataframe不太长,则使用列表推导进行重新分配将完成以下任务:
df1['date'] = [d.strftime('%Y-%m-%d') if not pd.isnull(d) else '' for d in df1['date']]
import numpy as npimport pandas as pdTimestamp = pd.Timestampnan = np.nanNaT = pd.NaTdf1 = pd.Dataframe({ 'col1': list('ac'), 'col2': ['b', nan], 'date': (Timestamp('2014-08-14'), NaT) })df1['col2'] = df1['col2'].fillna('')df1['date'] = [d.strftime('%Y-%m-%d') if not pd.isnull(d) else '' for d in df1['date']]print(df1)
col1 col2 date0 a b 2014-08-141 c
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)