我有一个数据帧(df
),具有两个不同位置(A
和B
)和不同深度(5米C.I.5m
,12米C.I.12m
,20米C.I.20m
的平均电流强度) ,28米C.I.28m
和35米C.I.35m
)。这里我展示一个例子:
df<- data.frame(Datetime=c("2018-08-06 00:00:00","2018-08-06 00:00:00","2018-08-06 03:00:00","2018-08-06 03:00:00","2018-08-06 06:00:00","2018-08-06 06:00:00"),
Site=c("A","B","A","B","A","B"),
C.I.5m=c(0.1,0.3,0.8,0.2,0.4,0.2),
C.I.12m=c(0.2,0.1,0.6,0.3,0.2,0.4),
C.I.20m=c(0.1,0.3,0.7,0.4,0.4,0.2),
C.I.28m=c(0.2,0.3,0.4,0.1,0.1,0.2),
C.I.35m=c(0.3,0.5,0.2,0.3,0.4,0.1))
df
Datetime Site C.I.5m C.I.12m C.I.20m C.I.28m C.I.35m
1 2018-08-06 00:00:00 A 0.1 0.2 0.1 0.2 0.3
2 2018-08-06 00:00:00 B 0.3 0.1 0.3 0.3 0.5
3 2018-08-06 03:00:00 A 0.8 0.6 0.7 0.4 0.2
4 2018-08-06 03:00:00 B 0.2 0.3 0.4 0.1 0.3
5 2018-08-06 06:00:00 A 0.4 0.2 0.4 0.1 0.4
6 2018-08-06 06:00:00 B 0.2 0.4 0.2 0.2 0.1
我想计算深度在不同变量之间(即,在数据框的列之间)的当前强度有多少不同。我将第一个变量称为MCICC
(Maximum Current Intensity Change in Column
),它是来自与电流强度相关的不同列(C.I.5m
,C.I.12m
,C.I.20m
,C.I.28m
和[C0 ])。然后,另一个变量C.I.35m
总结了MCIC10m
和C.I.5m
之间的差异。然后另一个称为C.I.12m
的摘要总结了MCIC20m
,C.I.12m
和C.I.20m
之间的差异。最后,一个名为C.I.28m
的变量总结了MCIC30m
和C.I.28m
之间的差异。
我希望这样:
C.I.35m
棘手的是,每个新变量都是从不同数量的主列中计算出来的。 > df
Datetime Site C.I.5m C.I.12m C.I.20m C.I.28m C.I.35m MWCICC MWCIC10 MWCIC20 MWCIC30
1 2018-08-06 00:00:00 A 0.1 0.2 0.1 0.2 0.3 0.2 0.1 0.1 0.1
2 2018-08-06 00:00:00 B 0.3 0.1 0.3 0.3 0.5 0.4 0.2 0.2 0.2
3 2018-08-06 03:00:00 A 0.8 0.6 0.7 0.4 0.2 0.6 0.2 0.3 0.2
4 2018-08-06 03:00:00 B 0.2 0.3 0.4 0.1 0.3 0.3 0.1 0.3 0.2
5 2018-08-06 06:00:00 A 0.4 0.2 0.4 0.1 0.4 0.3 0.2 0.3 0.3
6 2018-08-06 06:00:00 B 0.2 0.4 0.2 0.2 0.1 0.3 0.2 0.2 0.1
考虑5个深度(五列),MCICC
考虑5和12米的深度(两列),MCIC10
考虑12、20和28米的深度(两列),[C0 ]考虑了28米和35米的深度(三列)。
有人知道如何一次计算全部吗?
我们可以使用MCIC20
计算不同列之间的成对差异
MCIC30