0

我有一个类似于以下内容的 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. 所有其他变量

一种方法可能是:

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 的几个变量中获取所有值的列表?

4

1 回答 1

1

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

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

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

range(subset(data,select=2:4))
于 2013-10-16T02:00:42.280 回答