R中这些对象索引方法有什么区别

时间:2013-08-11 23:26:06

标签: r ggplot2

我正在尝试在我的数据集上使用as.Date(),但不理解两种索引数据的方法之间的区别。

这是我的数据(test2.csv):

Date        Aadfe   Wee     Dell    Percent
10/11/2012  1211    1000    3556    0.03
10/12/2012  100     2000    3221    0.43
10/13/2012  3423    10000   2343    0.54
10/14/2012  10000   3000    332     0.43
10/15/2012  2342    500     4435    0.43
10/16/2012  2342    800     2342    0.23
10/17/2012  2342    1500    1231    0.12
10/18/2012  111     2300    333 
10/19/2012  1231    1313    3433    
10/20/2012  3453    5654    222 
10/21/2012  3453    3453    454 
10/22/2012  5654    7685    3452    

我的代码:

library(ggplot2)
data <- read.csv("test2.csv")
new <- c(data["Date"])
newDates <- as.Date(new, "%m/%d/%Y")
ggplot(data, aes(x = as.character(newDates), y = Percent)) + 
  geom_point(size = 3)

我收到此错误:

Error in as.Date.default(new, "%m/%d/%Y") : 
  do not know how to convert 'new' to class “Date”

然而,当我尝试

library(ggplot2)
data <- read.csv("test2.csv")
new <- data$Date
newDates <- as.Date(new, "%m/%d/%Y")
ggplot(data, aes(x = as.character(newDates), y = Percent)) + 
  geom_point(size = 3)

情节很好,没有错误。我的问题是:数据$ Date和c(data [“Date”])之间有什么区别?在终端中打印时,它们都会产生类似的结果。我需要使用c(data [“Date”]),因为我假设我不知道数据的列名,所以我不能直接使用数据$ Date。在我的实际程序中,列名将是用户的输入,因此我的代码实际上是c(data [input $ x])。我使用c(data [“Date”])作为测试。

1 个答案:

答案 0 :(得分:0)

致baptiste,

我需要做

data[["Date"]]