我正在尝试从该数据框中提取一些数据。
但是我不知道该怎么做
这是我称为 Time
的数据帧的代码 Time = structure(list(NA. = structure(11180, class = "Date"), V2 = structure(11463, class = "Date"),
V3 = structure(11744, class = "Date"), V4 = structure(12024, class = "Date"),
V5 = structure(12305, class = "Date"), V6 = structure(12585, class = "Date"),
V7 = structure(12865, class = "Date"), V8 = structure(13145, class = "Date"),
V9 = structure(13425, class = "Date"), V10 = structure(13705, class = "Date"),
V11 = structure(13985, class = "Date"), V12 = structure(14265, class = "Date"),
V13 = structure(14545, class = "Date"), V14 = structure(14825, class = "Date"),
V15 = structure(15105, class = "Date"), V16 = structure(15385, class = "Date"),
V17 = structure(15665, class = "Date"), V18 = structure(15945, class = "Date"),
V19 = structure(16225, class = "Date"), V20 = structure(16505, class = "Date"),
V21 = structure(16785, class = "Date"), V22 = structure(17065, class = "Date"),
V23 = structure(17345, class = "Date"), V24 = structure(17625, class = "Date"),
V25 = structure(17905, class = "Date"), V26 = structure(18185, class = "Date"),
V27 = structure(NA_real_, class = "Date")), row.names = c(NA,
-1L), class = "data.frame")
我想从该数据集中提取所有时间数据,并将其存储在向量中。 如果我尝试提取
以这种方式存储不是as.data类型的数字。 像这样
temp = NA
for(i in 1:n) {
temp = c(temp,as.Date(Time[1,i]))
}
唯一可行的方法是分别提取所有这些。.
t1 = Time[1,1]
t2 = Time[1,2]
.
.
.
.
temp1 = c(t1,t2,t3,...,t27)
我想使用 t1 和 t2 这样的元素来保留as.Data类型。
我该怎么做?
答案 0 :(得分:3)
我能够获得数据框架代码,以使其正常工作。我认为您可以完全不用循环来完成此操作:
t= as.Date(t(Time[1,]))
这将获取数据帧的第一行,将其与t()
进行转置,然后使用as.Date()
重新声明日期,并将其放入日期向量中,您可以使用class()
进行验证< / p>
> class(t)
[1] "Date"
答案 1 :(得分:1)
您需要告诉R temp
应该是什么。它应该是一个时间对象。通过从数据框中的第一个元素进行分配来声明它。现在,您可以通过循环轻松将所有其他值附加到该值。或者完全没有循环,就像@sconfluentus节目一样。
temp <- Time[1, 1]
for(i in 2:ncol(Time)) temp <- c(temp,as.Date(Time[1, i]))
现在:
print(temp)
# [1] "2000-08-11" "2001-05-21" "2002-02-26" "2002-12-03" "2003-09-10" "2004-06-16" "2005-03-23"
# [8] "2005-12-28" "2006-10-04" "2007-07-11" "2008-04-16" "2009-01-21" "2009-10-28" "2010-08-04"
# [15] "2011-05-11" "2012-02-15" "2012-11-21" "2013-08-28" "2014-06-04" "2015-03-11" "2015-12-16"
# [22] "2016-09-21" "2017-06-28" "2018-04-04" "2019-01-09" "2019-10-16" NA