我不明白为什么在将一个dataframe列指定为一个原本没有空值的序列之后会出现新的空值。举个例子:
df.date_col.shape
返回(100000,)df.date_col.isnull().sum()
返回0
然后创建一个大小相同的新系列:new_series = pd.Series([int(d[:4]) for d in df.date_col])
new_series.shape
返回(100000,)new_series.isnull().sum()
返回0
但是如果我尝试将这个新系列分配给原始列:df.date_col = new_series
df.date_col.isnull().sum()
返回6328
有人能告诉我这里发生了什么事吗
IIUC,您的索引不是continue,当您创建
pd.Series
时,它自动将索引从0分配到len(s)-1,dataframe assign基于索引,index miss match将创建NaN
相关问题 更多 >
编程相关推荐