我有这个df:
VELWIND
0
1
34
54
2
3
25
我尝试做的是过滤0到30之间的值,如果df >= 30
,则写nan
,df.type
为float64
我有这个代码:
df['VELWIND_filt']=df.loc[(df['VELWIND'] > 0) & (df['VELWIND'] < 30) & (df['VELWIND'] >=30, np.nan)]
但我有个错误ValueError: setting an array element with a sequence.
我测试它给出了一个错误,具体是这个部分:
(df['VELWIND'] >=30, np.nan)
编辑解决:
我解决这个问题使用这行:df['VELWIND_filt'] = np.where((df['VELWIND'] < 0) | (df['VELWIND'] >= 30), np.nan, df['VELWIND'])
1条答案
按热度按时间y1aodyip1#
这就是你想要的吗?
如果您想将其添加为新列,请先创建新列,然后进行更改: