如何使用变量索引确定data.frame的几个变量的整体范围?

时间:2013-10-16 01:52:18

标签: arrays r list indexing dataframe

我有一个类似于:

的data.frame
data <- data.frame(
  x=c(1:10)
  , y1=c(3,5,1,8,2,4,5,0,8,2)
  , y2=c(1,8,2,1,4,5,3,0,8,2)
  , y3=c(13,88,2,1,4,5,3,0,-8,1)
)

(实际上,data.frame中存在更多变量,变量的名称更长。)

我想确定

的范围
  1. 变量x
  2. 所有其他变量的
  3. 一种方式可能是:

    xRange = range(data$x)
    
    # using variable names:
    yRange = range(data$y1, data$y2, data$y3)
    
    # using variable indices
    yRange = range(data[[2]], data[[3]], data[[4]])
    

    我也尝试使用范围,所以我不想添加每个变量名称或索引:

    yRange = range(data[[c(2:4)]])
    yRange = range(data[[2:4]])
    

    有没有办法从data.frame的几个变量中获取所有值的列表?

1 个答案:

答案 0 :(得分:1)

目前尚不清楚您尝试做什么。但是为什么不使用subset按名称删除某些变量并得到结果的范围?

range(subset(data,select=-x))
-8 88

或者通过使用变量索引(不推荐)等同于此

range(subset(data,select=2:4))