0

在这个例子中

cars <- c("FORD", "GM")
price  <- list( c(1000, 2000, 3000),  c(2000, 500, 1000))
myDF <- data.frame(cars=cars, price=cbind(price))

如何访问价格的各个值,例如 500:

就像是myDF$price[2][2]

非常感谢。


与此问题相关: data.frame 中具有多个值的列

4

2 回答 2

2

这里有三个选项:

> myDF[[2]][[2]][2]
[1] 500
> myDF[[c(2, 2, 2)]]
[1] 500
> myDF$price[[2]][2] ## This is like what you were after...
[1] 500

基本上都说,获取第二列,然后从第二列获取第二个向量,然后获取向量中的第二项。

第三个选项似乎是您想要做的,但[[在这种情况下需要,而不是[.

于 2013-04-03T19:26:52.783 回答
1

[我无法评论,所以我必须给出答案]

一种更简单的方法来做你正在尝试的事情是

price  <- data.frame(FORD=c(1000, 2000, 3000), GM=c(2000, 500, 1000))
price$GM[2]
于 2013-04-03T20:49:35.780 回答