清单理解为if,else条件和填充缺失值

时间:2019-05-02 06:26:10

标签: python python-3.x pandas

我想使用列表理解中的if else条件在已经存在的字段的帮助下在现有数据框中创建一个新字段,并使用条件填充未命中的

想用5填充丢失的数据,并用(df_delta ['model_trigger']-1)休息

df_delta['time_periods_st'] = [(model_trigger - 1) if model_trigger != "np.NaN" else 5 for model_trigger in df_delta['model_trigger']]

具有上述名称的新字段,并符合条件。

1 个答案:

答案 0 :(得分:0)

使用np.whereisnull检查NaN

例如:

import pandas as pd
import numpy as np

df_delta = pd.DataFrame({"model_trigger": [np.NaN, 10]})
df_delta['time_periods_st'] = np.where(df_delta['model_trigger'].isnull(), 5, df_delta['model_trigger'] - 1)
print(df_delta)

输出:

   model_trigger  time_periods_st
0            NaN              5.0
1           10.0              9.0