Python 3.x 在应用程序中的逻辑之前检查null

Python 3.x 在应用程序中的逻辑之前检查null,python-3.x,pandas,Python 3.x,Pandas,我目前正在执行以下操作。在对数据帧中的列执行任何数学运算之前,我需要检查x是否为null。请让我知道如何实现这一目标 df['converted_value'] = df['main_value'].apply(lambda x: (float(x)/10000) * 350000) 您使用的函数NaNs非常好,速度更快,是矢量化的替代方案: df['converted_value'] = (df['main_value'] /10000) * 350000) 一种可能的解决方案是仅过滤非

我目前正在执行以下操作。在对数据帧中的列执行任何数学运算之前,我需要检查x是否为null。请让我知道如何实现这一目标

df['converted_value'] = df['main_value'].apply(lambda x: (float(x)/10000) * 350000)

您使用的函数
NaN
s非常好,速度更快,是矢量化的替代方案:

df['converted_value'] = (df['main_value'] /10000) * 350000)

一种可能的解决方案是仅过滤非缺失值并应用函数:

mask = df['main_value'].notna()
f = lambda x: function_not_working_with_nan(x)
df.loc[mask, 'converted_value'] = df.loc[mask, 'main_value'].apply(f)

您使用的函数
NaN
s非常好,速度更快,是矢量化的替代方案:

df['converted_value'] = (df['main_value'] /10000) * 350000)

一种可能的解决方案是仅过滤非缺失值并应用函数:

mask = df['main_value'].notna()
f = lambda x: function_not_working_with_nan(x)
df.loc[mask, 'converted_value'] = df.loc[mask, 'main_value'].apply(f)
当你说“null”时,我不确定你的意思是
None
还是
NaN
(如
np.NaN
,它是一个浮点数)

如果您的意思是“无”:

df['converted_value']=df['main_value']。应用(λx:(x/10000)*350000,如果x不是None,则为None)

如果您的意思是
NaN
np.NaN
),那么您已经为
NaN
输入返回了
NaN
,但是,正如注释中所建议的,您可以在这种情况下执行列操作。

当您说“null”时,我不确定您的意思是
None
还是
NaN
(如
np.nan
,它是一个浮点数)

如果您的意思是“无”:

df['converted_value']=df['main_value']。应用(λx:(x/10000)*350000,如果x不是None,则为None)


如果您的意思是
NaN
np.NaN
),那么您已经为
NaN
输入返回了
NaN
,但是,正如注释中所建议的,您可以在这种情况下执行列操作。

您可以添加一些数据样本吗?为什么不使用
df['converted\u value']=(df['main\u value']/10000)*350000)
?能否添加一些数据样本?还有,为什么不使用
df['converted_value']=(df['main_value']/10000)*350000)