在R中为指定的月份和年份子集数据帧
我有一个数据框,其中第二列是m/d/y格式的日期。有4个主列:名称、日期、花费的时间、homequeue 我想为一年中的特定月份(如11/11、12/11等)创建子集,我将使用这些子集计算从2020年4月1日到2020年4月7日工作的特定家庭队列中的人员所花费的总时间 我尝试了这个答案中建议的代码:使用多个条件() 这对我来说不起作用。请检查数据集的图像: **在R中为指定的月份和年份子集数据帧,r,dataframe,date,R,Dataframe,Date,我有一个数据框,其中第二列是m/d/y格式的日期。有4个主列:名称、日期、花费的时间、homequeue 我想为一年中的特定月份(如11/11、12/11等)创建子集,我将使用这些子集计算从2020年4月1日到2020年4月7日工作的特定家庭队列中的人员所花费的总时间 我尝试了这个答案中建议的代码:使用多个条件() 这对我来说不起作用。请检查数据集的图像: ** dfOP相对不清楚,所以这个答案一定是推测性的。但似乎缺少的是将date值转换为POSIXct值。这种转换可以通过以下方式实现: 假
dfOP相对不清楚,所以这个答案一定是推测性的。但似乎缺少的是将date
值转换为POSIXct值。这种转换可以通过以下方式实现:
假设您有类似于以下内容的数据:
my.data <- read.csv(text = '
Date, Var2, Var3
05/10/2011, AK, aa
06/15/2011, AK, bb
07/21/2011, OH, cc
NA, OH, dd
05/13/2012, PA, ee
07/22/2012, AL, ff
03/28/2013, NY, gg
', header=TRUE, stringsAsFactors = FALSE, na.strings = 'NA', strip.white = TRUE)
要使R正确识别日期,请使用as.POSIXct
:
my.data$my_Date <- as.POSIXct(my.data$Date, format = "%m/%d/%Y")
或者,选择某一特定年份的五月,例如2012年:
my.data[format.Date(my.data$my_Date, "%Y")=="2012" &
format.Date(my.data$my_Date, "%m")=="05" &
!is.na(my.data$my_Date),]
Date Var2 Var3 my_Date
5 05/13/2012 PA ee 2012-05-13
请使用dput
添加数据,并显示相同数据的预期输出。请阅读相关信息以及如何给出建议。
my.data[format.Date(my.data$my_Date, "%m")=="05" &
!is.na(my.data$my_Date),]
Date Var2 Var3 my_Date
1 05/10/2011 AK aa 2011-05-10
5 05/13/2012 PA ee 2012-05-13
my.data[format.Date(my.data$my_Date, "%Y")=="2012" &
format.Date(my.data$my_Date, "%m")=="05" &
!is.na(my.data$my_Date),]
Date Var2 Var3 my_Date
5 05/13/2012 PA ee 2012-05-13