[英]Replacing nan with blanks in Python
以下是我的数据框:
Id,ReturnCreated,ReturnTime,TS_startTime
O108808972773560,Return Not Created,nan,2018-08-23 12:30:41
O100497888936380,Return Not Created,nan,2018-08-18 14:57:20
O109648374050370,Return Not Created,nan,2018-08-16 13:50:06
O112787613729150,Return Not Created,nan,2018-08-16 13:15:26
O110938305325240,Return Not Created,nan,2018-08-22 11:03:37
O110829757146060,Return Not Created,nan,2018-08-21 16:10:37
我想用Blanks替换nan。 试过下面的代码,但它不起作用。
import pandas as pd
import numpy as np
df = pd.concat({k:pd.Series(v) for k, v in ordercreated.items()}).unstack().astype(str).sort_index()
df.columns = 'ReturnCreated ReturnTime TS_startTime'.split()
df1 = df.replace(np.nan,"", regex=True)
df1.to_csv('OrderCreationdetails.csv')
请帮助我了解我哪里出错了,我该怎样才能解决问题。
您应该尝试DataFrame.fillna()方法
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.fillna.html
在你的情况下:
df1 = df.fillna("")
应该工作我想
我认为nan
是字符串,因为.astype(str)
。 所以需要:
df1 = df.replace('nan',"")
要么你可以使用df.fillna("")
(我认为会表现更好)或简单地用空白替换这些值
df1 = df.replace('NaN',"")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.