如何在data frame中新增一列存储每行其他列的最小值?
R语言为数据框新增行最小值列的操作方法
你的示例数据构造代码如下:df = data.frame(A = 1:3, B = 4:2)
你可以选择以下任意一种方法实现需求:
- 方法1:使用
pmin()并行取最小值函数,运算效率更高
列数较少时可以直接指定列名:
数据框列数较多时,可以用如下写法无需逐一指定列:df$min_val <- pmin(df$A, df$B)df$min_val <- do.call(pmin, df) - 方法2:使用
apply()按行遍历计算最小值df$min_val <- apply(df, MARGIN = 1, FUN = min)
操作完成后得到的df结果如下,完全符合你要求的第三列取值1、2、2:
A B min_val 1 1 4 1 2 2 3 2 3 3 2 2
内容的提问来源于stack exchange,提问作者Sergei Walankov
相关产品推荐
相关产品推荐

