在DataFrane.to_csv数据框,我设法写csv文件删除nan
值
df = df.replace('None','')
df = df.replace('nan','')
但我的问题是,对于这种方法,每个nan值都将替换为qoutes:''
是否可以根据类型替换nan值?在
^{pr2}$等等
尝试此代码但失败
df['myStringColumn'].replace('None', '')
编辑:这是我的示例数据框
aTest Vendor name price qty
0 y NewVend 21.20 nan
1 y OldMakes 11.20 3
2 nan nan sample 9.20 1
3 n nan make nan 0
这是我的目标
'y','NewVend','',21.20,,
'y','OldMakes','',11.20,3,
'','','sample',9.20,1,
'n','','make',0.0,0,
这是完整的脚本
dtype_dic= {'price': float, 'qty': float}
df = pd.read_excel(os.path.join(sys.path[0], d.get('csv')), dtype=str)
for col, col_type in dtype_dic.items():
df[col] = df[col].astype(col_type)
df = df.replace('None','')
df = df.replace('nan','')
df.to_csv('test.csv', index=False, header=False, quotechar='"', quoting=csv.QUOTE_NONNUMERIC)
可以使用select_dtypes选择具有所需类型的列,如果nan为np.nan公司,也不适用于任何人
你得到了
^{pr2}$试试这个!!
要知道字符串类型的列:
^{pr2}$将NaN替换为“”:
相关问题 更多 >
编程相关推荐