请考虑以下数据帧:
dfgg
Out[305]:
Parts_needed output
Year Month PartId
2018 1 L27849 72 72
2 L27849 75 147
3 L27849 101 248
4 L27849 103 351
5 L27849 77
6 L27849 120
7 L27849 59
8 L27849 79
9 L27849 28
10 L27849 64
11 L27849 511
12 L27849 34
2019 1 L27849 49
2 L27849 68
3 L27849 75
4 L27849 45
5 L27849 84
6 L27849 42
7 L27849 40
8 L27849 52
9 L27849 106
10 L27849 75
11 L27849 176
12 L27849 58 2193
2020 1 L27849 135 2328
2 L27849 45 2301
3 L27849 21 2247
4 L27849 35
5 L27849 17
6 L27849 39
...
2025 7 L27849 94
8 L27849 13
9 L27849 94
10 L27849 65
11 L27849 141
12 L27849 34
2026 1 L27849 22
2 L27849 132
3 L27849 49
4 L27849 33
5 L27849 48
6 L27849 53
7 L27849 103
8 L27849 122
9 L27849 171
10 L27849 182
11 L27849 68
12 L27849 23
2027 1 L27849 44
2 L27849 21
3 L27849 52
4 L27849 53
5 L27849 57
6 L27849 187
7 L27849 69
8 L27849 97
9 L27849 31
10 L27849 29
11 L27849 33
12 L27849 8
在这个数据帧中,我需要每隔2年获得所需零件的累计和。例如:
for 1-2018, 72
将继续添加到以下行75,101,103..
直到1-2020 135
。类似地,at 2-2018, 75
将继续被添加到以下行101,103..
直到2-2020 45
。然而,在过去的两年中,无论剩余的行数是多少,累计的总和都将是。我不能设定一个范围np.cumsum公司有人能帮帮我吗?在
编辑:我已经编辑,包括预期的输出。2020年2-2020年产量为2328+45-72(因为增加了72年),3-2020年产量为2301+21-75(因为75已经增加了2年),依此类推。在
基本上,如果开头是零填充的话,你需要一个连续的总数。你可以用卷积。下面是一个简单的numpy示例,您应该能够适应您的pandas用例:
返回
^{pr2}$如您所见,这是一个累积的和,直到输出中的
37
,之后是滚动4元素窗口的总和。在假设你每年都有24排工作。在
下面是一个熊猫的例子,每年只使用2个月(因此
width
是4
,而不是24
):现在您只需将最后一个数组分配给
DataFrame
的新列相关问题 更多 >
编程相关推荐