Sou*_*jee 7 python numpy pandas
以下是我的数据框:
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
Run Code Online (Sandbox Code Playgroud)
我想用空白替换 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')
Run Code Online (Sandbox Code Playgroud)
请帮助我了解我哪里出错了,我该如何解决。
我认为nans 是字符串,因为.astype(str). 所以需要:
df1 = df.replace('nan',"")
Run Code Online (Sandbox Code Playgroud)
小智 5
您应该尝试 DataFrame.fillna() 方法
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.fillna.html
在你的情况下:
df1 = df.fillna("")
Run Code Online (Sandbox Code Playgroud)
我认为应该工作