我在奇怪的情况下股票
我有 Dataframe ,有些值为空
当我尝试做改变空,我不能这样做,由于某种原因,控制台dosent承认空
- 例如:**
df["volume_fermentor"]=df["volume_fermentor"].replace(np.nan,999)
当我运行它,控制台成功做它,但没有改变在 Dataframe
- 另一个例子:**
df["volume_fermentor"][4]
Out[79]: nan
df["volume_fermentor"][4]==df["volume_fermentor"][4]
Out[80]: False
df["volume_fermentor"][4]==np.nan
Out[81]: False'
2条答案
按热度按时间4ktjp1zp1#
你不能直接和NaN比较:NaN等于零,甚至不等于它自己。
改为使用
np.isnan
(或Pandas中的等效功能):对于整个Pandas Dataframe 或系列,您可以使用
和/或
分别表示。这将产生一个 Dataframe 或一系列布尔值,每个NaN对应
True
。zd287kbt2#
我也遇到了同样的问题,解决方案是使用
str()
。在您的案例中:
str(df["volume_fermentor"][4])==np.nan