我在Pandas Dataframe中有以下数据集:
我正在尝试根据去年(2021年)的第一个月(第1个月)从Total列动态返回值。解决方案是1875.10。
我正在使用PyCharm中的Python来完成此操作。
注:“Id”列是使用熊猫数据帧时自动生成的列。我相信它在熊猫中被称为索引。
任何帮助都将不胜感激。谢谢你。
您可以使用. 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
另一种方法是这样做。
df[df['Year']==2021].iloc[0]['Total']
这部分df[df['年']==2021]
创建了一个新的数据框,其中我们只有2021年的值,. iloc获取“总计”列中位置0的值
简单的过滤器就足够了吗?
df[(df.Year == 2021) & (df.Month == 1)].Total