Pandas 基于行长度求和列值
我有一个pd df,我想根据行长条件对“Price”列求和 例如,假设:Pandas 基于行长度求和列值,pandas,Pandas,我有一个pd df,我想根据行长条件对“Price”列求和 例如,假设: row_len=5, 如果 我想将“Price”列的总和从15.6增加到12.5 有人能帮上忙吗 Year Price 0 1 15.6 1 2 20.4 2 3 24.8 3 4 45.1 4 5 12.5 6 6 17.4 year=1可能与index=
row_len=5,
如果
我想将“Price”
列的总和从15.6增加到12.5
有人能帮上忙吗
Year Price
0 1 15.6
1 2 20.4
2 3 24.8
3 4 45.1
4 5 12.5
6 6 17.4
year=1
可能与index=0
不匹配,因此:
1)根据索引使用:
row_len=5
df.iloc[0:row_len]['Price'].sum()
year_value=5
rows_sum=df['Year'].eq(year_value).cumsum().shift().fillna(0).eq(0)
df.loc[rows_sum,'Price'].sum()
输出:
118.4
118.4
2)根据年份的价值:
row_len=5
df.iloc[0:row_len]['Price'].sum()
year_value=5
rows_sum=df['Year'].eq(year_value).cumsum().shift().fillna(0).eq(0)
df.loc[rows_sum,'Price'].sum()
输出:
118.4
118.4
year=1
可能与index=0
不匹配,因此:
1)根据索引使用:
row_len=5
df.iloc[0:row_len]['Price'].sum()
year_value=5
rows_sum=df['Year'].eq(year_value).cumsum().shift().fillna(0).eq(0)
df.loc[rows_sum,'Price'].sum()
输出:
118.4
118.4
2)根据年份的价值:
row_len=5
df.iloc[0:row_len]['Price'].sum()
year_value=5
rows_sum=df['Year'].eq(year_value).cumsum().shift().fillna(0).eq(0)
df.loc[rows_sum,'Price'].sum()
输出:
118.4
118.4
我想从15.6求和到12.5,即15.6+20.4+24.8+45.1+12.5。我想从15.6求和到12.5,即15.6+20.4+24.8+45.1+12.5。我很乐意帮忙!。你能接受和/或投票给我的答案吗?我很乐意帮忙!。你能接受和/或投票表决我的答案吗?