Python 将nan转换为nan有多有用?
我正在尝试运行其他人已经编写的代码。但是,我不确定需要将Python 将nan转换为nan有多有用?,python,python-3.x,pandas,dataframe,nan,Python,Python 3.x,Pandas,Dataframe,Nan,我正在尝试运行其他人已经编写的代码。但是,我不确定需要将nan转换为nan 关于该问题的一段代码行 obs['valuestring'].astype(str).str.strip().mask(obs['valuestring'].isna()) 上面的代码给出如下输出 但我觉得下面的代码应该很好。不是吗 obs['valuestring'].astype(str).str.strip() 并且它产生与上面相同的输出,但是是nan而不是nan 我知道np.nan是np.nan,所以试着去
nan
转换为nan
关于该问题的一段代码行
obs['valuestring'].astype(str).str.strip().mask(obs['valuestring'].isna())
上面的代码给出如下输出
但我觉得下面的代码应该很好。不是吗
obs['valuestring'].astype(str).str.strip()
并且它产生与上面相同的输出,但是是nan
而不是nan
我知道np.nan
是np.nan
,所以试着去了解这有什么有用的东西,我是不是错过了
您能帮助我理解将nan
转换为nan
的必要性吗?我应该在什么时候进行此类转换
这是不同的,因为在秒中没有缺少的值,而是
NaN
-stringNaN
:
obs = pd.DataFrame({'valuestring':['a ', np.nan, np.nan]})
print (obs)
valuestring
0 a
1 NaN
2 NaN
s = obs['valuestring'].astype(str).str.strip().mask(obs['valuestring'].isna())
print (s)
0 a
1 NaN
2 NaN
Name: valuestring, dtype: object
print (s.isna())
0 False
1 True
2 True
Name: valuestring, dtype: bool
s = obs['valuestring'].astype(str).str.strip()
print (s)
0 a
1 nan
2 nan
Name: valuestring, dtype: object
print (s.isna())
0 False
1 False
2 False
Name: valuestring, dtype: bool
print (s.eq('nan'))
0 False
1 True
2 True
Name: valuestring, dtype: bool