我在 Pandas 資料框中有以下資料集:
| ID | 年 | 月 | 全部的 |
|---|---|---|---|
| 0 | 2020 | 9 | 11788.33 |
| 1 | 2020 | 10 | 18373.99 |
| 2 | 2020 | 11 | 31018.59 |
| 3 | 2020 | 12 | 29279.30 |
| 4 | 2021 | 1 | 1875.10 |
| 5 | 2021 | 2 | 9550.06 |
| 6 | 2021 | 3 | 33844.39 |
| 7 | 2021 | 4 | 33126.53 |
| 8 | 2021 | 5 | 12910.05 |
| 9 | 2021 | 6 | 44628.63 |
| 10 | 2021 | 7 | 25830.03 |
| 11 | 2021 | 8 | 54463.08 |
| 12 | 2021 | 9 | 49723.93 |
| 13 | 2021 | 10 | 23753.81 |
| 14 | 2021 | 11 | 52532.49 |
| 15 | 2021 | 12 | 7467.32 |
| 16 | 2022 | 1 | 24333.54 |
| 17 | 2022 | 2 | 12394.11 |
| 18 | 2022 | 3 | 76575.46 |
| 19 | 2022 | 4 | 95119.82 |
| 20 | 2022 | 5 | 63048.05 |
我正在嘗試根據去年(2021 年)的第一個月(第 1 個月)從總計列中動態回傳值。解決方案是 1875.10。
我在 PyCharm 中使用 Python 來完成這個。
注意:“Id”列是使用 pandas Dataframe 時自動生成的列。我相信它在 Pandas 中被稱為索引。
任何幫助將不勝感激。謝謝你。
uj5u.com熱心網友回復:
您可以使用.loc[]:
df.loc[(df['Year'] == 2021) & (df['Month'] == 1), 'Total']
這會給你:
0 1875.1
Name: Total, dtype: float64
要獲得實際數字,您可以.iloc[]在最后添加:
df.loc[(df['Year'] == 2021) & (df['Month'] == 1), 'Total'].iloc[0]
輸出:
1875.1
uj5u.com熱心網友回復:
另一種方法是這樣做。
df[df['Year']==2021].iloc[0]['Total']
這部分 df[df['Year']==2021]創建了一個新的資料框,其中我們只有 2021 年的值,.iloc 獲取 'Total' 列中位置 0 的值
uj5u.com熱心網友回復:
簡單的過濾器就足夠了嗎?
df[(df.Year == 2021) & (df.Month == 1)].Total
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/478507.html
上一篇:根據函式中的值計數創建虛擬變數
下一篇:在R中重塑和求和資料幀值
