[英]Replacing Values in Pandas Columns
是否可以根據邏輯用值N / A替換大熊貓DataFrame
的值,該邏輯確定值是高於還是低於某個閾值?
import pandas as pd
df = pd.DataFrame({'date': pd.date_range(start='2015-12-31',
periods=13,
freq='M'),
'val': [1, 10, 25, -1000, 45, 66, 99, 88,128, 256,512,1024, 2048]}).set_index('date')
所以我想用N / A替換任何> abs 10的值
您可以創建一個布爾掩碼來僅設置滿足布爾條件的行,還可以使用abs
測試值是否為+/- 10:
In [107]:
df.loc[df['val'].abs() > 10, 'val' ] = np.NaN
df
Out[107]:
val
date
2015-12-31 1.0
2016-01-31 10.0
2016-02-29 NaN
2016-03-31 NaN
2016-04-30 NaN
2016-05-31 NaN
2016-06-30 NaN
2016-07-31 NaN
2016-08-31 NaN
2016-09-30 NaN
2016-10-31 NaN
2016-11-30 NaN
2016-12-31 NaN
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.