R-如何在两个特定日期之间对表进行子集划分?

R-如何在两个特定日期之间对表进行子集划分?,r,R,我有八年的每小时数据值,我想在特定的一年内对所有值进行子集。例如,2007年的数据集,2008年的数据集等等。目前,我对日期格式有很多问题,因为当我指定一个时间段时,我会得到另一个日期段 这是我的桌子:,这就是我尝试过的: LValley <- read.table("C:/LValley.txt", header=TRUE, dec = ",", sep="\t") year2007 <- subset(LValley, date > as.Date("01.01.2007

我有八年的每小时数据值,我想在特定的一年内对所有值进行子集。例如,2007年的数据集,2008年的数据集等等。目前,我对日期格式有很多问题,因为当我指定一个时间段时,我会得到另一个日期段

这是我的桌子:,这就是我尝试过的:

LValley <- read.table("C:/LValley.txt", header=TRUE, dec = ",", sep="\t")

year2007 <- subset(LValley, date > as.Date("01.01.2007 01:00", "%d.%m.%Y %H:%M") & date < as.Date("01.02.2008 01:00", "%d.%m.%Y %H:%M"))

LValley您需要将文件中的
date
列转换为
date
类。例如:

 LValley <- read.table("LValley.txt", header=TRUE,dec=",", sep="\t", stringsAsFactors=FALSE)

  date1 <- as.Date(LValley$date, "%d.%m.%Y %H:%M")
  Test2007 <- subset(LValley, date1>=DATE1 & date1 <=DATE2)
  dim(Test2007)
   #[1] 6249    4

LValley在函数中粘贴
LValley
是个坏主意,最好将其作为参数传入。或者使用
子集
,或者使用
dplyr
中的
过滤器
 LValley <- read.table("LValley.txt", header=TRUE,dec=",", sep="\t", stringsAsFactors=FALSE)

  date1 <- as.Date(LValley$date, "%d.%m.%Y %H:%M")
  Test2007 <- subset(LValley, date1>=DATE1 & date1 <=DATE2)
  dim(Test2007)
   #[1] 6249    4