Python - 用 Pandas DataFrame 的最新正值替換負值
我們希望用最新正值替換所有負值。如果之前沒有正值,則將該值更新為 0。
輸入
例如,輸入為 −
DataFrame: One two 0 -2 -3 1 4 -7 2 6 5 3 0 -9
輸出
輸出應為 −
One two 0 0 0 1 7 0 2 4 2 3 0 2
我們使用資料幀掩碼來替換負值。為了填充缺失值,我們使用了前向填充。首先,讓我們建立一個 pandas 資料幀 −
# create pandas dataframe
df = pd.DataFrame({'One': [-3, 7, 4, 0], 'two': [-6, -1, 2, -8]})讓我們執行掩碼 −
df = df.mask(df.lt(0)).ffill().fillna(0).astype('int32')示例
以下是程式碼 −
import pandas as pd
# create pandas dataframe
df = pd.DataFrame({'One': [-3, 7, 4, 0],'two': [-6, -1, 2, -8]})
# displaying the DataFrame
print"DataFrame: \n",df
# masking
df = df.mask(df.lt(0)).ffill().fillna(0).astype('int32')
# displaying the updated DataFrame
print"\nUpdated DataFrame: \n",df輸出
這會產生以下輸出 −
DataFrame: One two 0 -3 -6 1 7 -1 2 4 2 3 0 -8 Updated DataFrame: One two 0 0 0 1 7 0 2 4 2 3 0 2
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP