我想从数据框中选择一个特定的值,但不知道怎么做。这是数据框:
我想从“ X1”列中选择一个特定值,但是我不想通过索引(1到10)来访问它,而是要使用“时间”列。
如果我想通过索引从第8行(0.89)中选择值X1,我可以这样做:
df[8,"X1"]
但是我想通过日期和时间访问值。我还没有找到解决方案。时间列基本上是将X和X.1列合并为一个具有POSIXct格式(%Y-%m-%d%H:%M:%S)的单独列。
类似的东西(但不能那样工作):
df[df$time[2018-08-10 13:29:20], "X1"]
如果有任何想法,我将不胜感激。
答案 0 :(得分:0)
这很容易。 您只需要进行类似的比较
df[df$time == "2018-08-10 13:29:20", "X1"]
如果您希望“ X1”的所有值都大于特定时间,则可以使用更大或更小的比较,例如
df[df$time > "2018-08-10 13:29:20", "X1"]
df[df$time >= "2018-08-10 13:29:20", "X1"]
df[df$time < "2018-08-10 13:29:20", "X1"]
df[df$time <= "2018-08-10 13:29:20", "X1"]
比较将创建一个逻辑向量,该逻辑向量为您提供逻辑向量为TRUE
的所有行
如果它不能正常工作,则必须确保时间列采用POSIXct之类的正确格式。您可以使用as.POSIXct