R中的军事时间子集

R中的军事时间子集,r,csv,time,subset,R,Csv,Time,Subset,我在R中有一个.csv文件,我想获取使用时间的子集 数据如下所示: 您可以使用以下代码重新创建数据示例: library(tidyverse) library(stringr) tibble( trap = "LS_trap_29u", serial_no = "D900000039601641", canopy_understory = "u", time = str_pad(round(runif(28, min = 0, max = 2300),-2), 4, pad =

我在R中有一个.csv文件,我想获取使用时间的子集

数据如下所示:

您可以使用以下代码重新创建数据示例:

library(tidyverse)
library(stringr)

tibble(
  trap = "LS_trap_29u",
  serial_no = "D900000039601641",
  canopy_understory = "u",
  time = str_pad(round(runif(28, min = 0, max = 2300),-2), 4, pad = "0"),
  temp = round(runif(28, min = 20, max = 30), 2),
  humidity = NA
)
我想根据时间挑选数据的某些部分,用于以后的统计。我想选择在000和0100之间发生的所有数据,例如我这样做:
mid_temp 0&time正如注释(@Erin)中所建议的,问题是您正在尝试
字符
-比较。转换为
数值
(或
整数
,如果您确信完整性)将有助于:

 my_file$time <- as.numeric(my_file$time)

尽管这有两次转换的开销;最好转换一次并重新使用。

如果您将
用作.numeric(time)
,而不是
time
@r2evans,那么您的第一个
子集
代码将可以工作。我想知道如何转换我的日期栏,但我认为这是一个不同的问题。
subset(my_file, as.numeric(time) > 0 & as.numeric(time) < 100)