我得到了分贝:
pat exp t wt
0 abc 1 10 0
1 abc 1 20 0
2 abc 1 30 0
3 dfg 2 20 0
4 dfg 3 15 0
5 dfg 3 30 0
6 dfg 2 40 0
7 hij 4 25 0
8 hij 4 50 0
我想通过为每个“ pat”和“ exp”减去“ t”的第一个和最后一个值来更改“ wt”列的值,例如,对于“ pat” =“ dfg”和“ exp” =在图3中,“ wt”的值将减去30-15。所需的输出如下所示:
pat exp t wt
0 abc 1 10 20
1 abc 1 20 20
2 abc 1 30 20
3 dfg 2 20 20
4 dfg 3 15 15
5 dfg 3 30 15
6 dfg 2 40 20
7 hij 4 25 25
8 hij 4 50 25
如果不对数据进行排序,则可以通过减去每个“ pat”和“ exp”的“ t”的上限值和下限值来实现相同的效果。我尝试过
for i in db["pat"]:
for j in db["exp"]:
db= db["t"].iloc[-1]-db["t"].iloc[0]
但是没有任何反应,并返回错误。请帮助!
让我们试着numpy
ptp
用transform
df['wt']=df.groupby(['pat','exp']).t.transform(np.ptp)
df
pat exp t wt
0 abc 1 10 20
1 abc 1 20 20
2 abc 1 30 20
3 dfg 2 20 20
4 dfg 3 15 15
5 dfg 3 30 15
6 dfg 2 40 20
7 hij 4 25 25
8 hij 4 50 25
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句