我有以下資料框。我想回傳第二列,該列是具有條件的列中每個專案的總和:僅那些大于 -1 的專案。
輸入
Price
0 12
1 14
2 15
3 10
4 2
5 4
6 -5
7 -4
8 -3
9 -5
10 16
11 15
輸出
Price Total Sum
0 12 88
1 14
2 15
3 10
4 2
5 4
6 -5
7 -4
8 -3
9 -5
10 16
11 15
uj5u.com熱心網友回復:
要獲得列中正值的總和,請使用適當的條件
import pandas as pd
df = pd.DataFrame({'price': [12, 14, 15, 10, 2, 4, -5, -4, -3, -5, 16, 15]})
total = df.loc[df['price'] > 0, 'price'].sum()
print(total) # 88
設定一列的值與另一行引數無關,這不是一個好主意,這里是一個值。但是為了得到邏輯
# you need to pad with zeros, if you not you'll have 88 at every row
df['total'] = [total] [0] * (len(df) - 1)
print(df)
price total
0 12 88
1 14 0
2 15 0
3 10 0
4 2 0
5 4 0
6 -5 0
7 -4 0
8 -3 0
9 -5 0
10 16 0
11 15 0
uj5u.com熱心網友回復:
我不建議制作另一列只有一個值。要獲得所有價格的總和,您可以執行以下操作:
all_prices = []
df = pandas.read_csv("prices.csv")
df_price = df["price"]
print(df_price.sum())
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/369017.html
上一篇:創建資料框串列的資料框
