我有一个下面的示例数据框
df <- data.frame("Group"= c(1,1,2,2,2),"H" =
c("H1","H3","H3","H4","H2"), "W1" = c(95, 0, 0,0,50) , "W2" = c(0,
95,95, 0,85),"W3" = c(85, 50,50 ,95,0))
需要计算两个额外指标:
第一个度量:基于该组的w1、w2、w3的每个组和行,如果w1、w2和w3的值等于或大于85,则输出为100%。
例如:对于第2组,对于W2和W3,最大值等于85以上。
对于w1,它小于85,所以结果是
66.7条
第二个度量:该组的W1、W2、W3列的最大行最小值。例如:对于组2,min(max[0 0 50]、max[95 0 85]、max[50 95 0])=
50个
DesiredDf <- data.frame("Group"= c(1,1,2,2,2),"H" =
c("H1","H3","H3","H4","H2"), "W1" = c(95, 0, 0,0,50) ,
"W2" = c(0, 95,95, 0,85), "W3" = c(85, 50,50 ,95,0),
"W" = c(100,100,66.7 ,66.7,66.7),MINMAX = c(85,85,50,50,50))
已经尝试了for循环和sapply方法,但是实际数据集太大,执行太慢。正在寻找在R中更无缝地计算这些度量的方法。