如何将列名映射到行最小值
how to map column names to row minimum value
我有以下数据:
df
dc1 dc2 dc3 min_colname
[1,] 12.9 13.4 13.4
[2,] 6.1 6.5 6.5
[3,] 6.3 6.7 6.7
[4,] 21.0 21.4 21.4
[5,] 1.6 1.8 1.8
[6,] 3.3 3.7 3.7
[7,] 7.0 7.4 7.4
[8,] 3.2 3.6 3.6
[9,] 14.8 15.2 15.2
[10,] 7.9 8.3 8.3
我正在尝试再添加一列,比如 min_colname
,它将包含每行的最小值,但映射到列名....例如,第 1 行的最小值是 12.9
..所以 min_colname 中的第一项应该是 dc1
而不是实际的 obs 值.....
这应该有效:
df$min_colname <- apply(df, 1, function(x) colnames(df)[which.min(x)])
我有以下数据:
df
dc1 dc2 dc3 min_colname
[1,] 12.9 13.4 13.4
[2,] 6.1 6.5 6.5
[3,] 6.3 6.7 6.7
[4,] 21.0 21.4 21.4
[5,] 1.6 1.8 1.8
[6,] 3.3 3.7 3.7
[7,] 7.0 7.4 7.4
[8,] 3.2 3.6 3.6
[9,] 14.8 15.2 15.2
[10,] 7.9 8.3 8.3
我正在尝试再添加一列,比如 min_colname
,它将包含每行的最小值,但映射到列名....例如,第 1 行的最小值是 12.9
..所以 min_colname 中的第一项应该是 dc1
而不是实际的 obs 值.....
这应该有效:
df$min_colname <- apply(df, 1, function(x) colnames(df)[which.min(x)])