如何从此数据框中提取数据?

时间:2020-01-10 16:48:47

标签: r dataframe

我正在尝试从该数据框中提取一些数据。

但是我不知道该怎么做

这是我称为 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类型。

我该怎么做?

2 个答案:

答案 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
相关问题