如何多次从一列中的某一行减去第N行
How to subtract Nth rows from a certain row within a column multiple times
我希望能够多次从另一组特定的行中减去特定数量的行。我假设我会使用 for 循环来执行此操作,但我无法弄清楚如何执行此操作。
例如,我想从同一田间的对照中减去治疗组的产量。每6行我想一遍又一遍地从第1-3行减去第4-6行
这是我目前所拥有的:
dfArray = df ['Crop_Yield'].to_numpy()
`for i in range(len(dfArray('Crop_Yield') //6):`
提前感谢您帮助我解决这个问题。很抱歉,如果以前有人问过类似的问题,我看累了,但没有找到类似的东西。
下面是 table 的例子。
Treatment
Field
Crop_Yield
Control
1 Top
14
Control
2 Top
18
Control
3 Top
16
Fert A
1 Bottom
12
Fert A
2 Bottom
17
Fert A
3 Bottom
15
Control
4 Top
10
Control
5 Top
13
Control
6 Top
15
Fert B
4 Bottom
17
Fert B
5 Bottom
13
Fert B
6 Bottom
18
希望我没听错:
for i in range(len(df) // 6):
df.loc[i * 6 : i * 6 + 2, "Crop_Yield"] -= df.loc[i * 6 + 3 : i * 6 + 5, "Crop_Yield"].to_numpy()
print(df)
打印:
Treatment Field Crop_Yield
0 Control 1 Top 2
1 Control 2 Top 1
2 Control 3 Top 1
3 Fert A 1 Bottom 12
4 Fert A 2 Bottom 17
5 Fert A 3 Bottom 15
6 Control 4 Top -7
7 Control 5 Top 0
8 Control 6 Top -3
9 Fert B 4 Bottom 17
10 Fert B 5 Bottom 13
11 Fert B 6 Bottom 18
我希望能够多次从另一组特定的行中减去特定数量的行。我假设我会使用 for 循环来执行此操作,但我无法弄清楚如何执行此操作。
例如,我想从同一田间的对照中减去治疗组的产量。每6行我想一遍又一遍地从第1-3行减去第4-6行
这是我目前所拥有的:
dfArray = df ['Crop_Yield'].to_numpy()
`for i in range(len(dfArray('Crop_Yield') //6):`
提前感谢您帮助我解决这个问题。很抱歉,如果以前有人问过类似的问题,我看累了,但没有找到类似的东西。
下面是 table 的例子。
Treatment | Field | Crop_Yield |
---|---|---|
Control | 1 Top | 14 |
Control | 2 Top | 18 |
Control | 3 Top | 16 |
Fert A | 1 Bottom | 12 |
Fert A | 2 Bottom | 17 |
Fert A | 3 Bottom | 15 |
Control | 4 Top | 10 |
Control | 5 Top | 13 |
Control | 6 Top | 15 |
Fert B | 4 Bottom | 17 |
Fert B | 5 Bottom | 13 |
Fert B | 6 Bottom | 18 |
希望我没听错:
for i in range(len(df) // 6):
df.loc[i * 6 : i * 6 + 2, "Crop_Yield"] -= df.loc[i * 6 + 3 : i * 6 + 5, "Crop_Yield"].to_numpy()
print(df)
打印:
Treatment Field Crop_Yield
0 Control 1 Top 2
1 Control 2 Top 1
2 Control 3 Top 1
3 Fert A 1 Bottom 12
4 Fert A 2 Bottom 17
5 Fert A 3 Bottom 15
6 Control 4 Top -7
7 Control 5 Top 0
8 Control 6 Top -3
9 Fert B 4 Bottom 17
10 Fert B 5 Bottom 13
11 Fert B 6 Bottom 18