0
我每小时的数据值为八年,并且我希望将特定年份内的所有值分组。例如2007年的数据集,2008年的数据集等等。目前,我在日期格式上遇到了很多问题,因为当我特定一段时间时,我会得到另一个日期。R - 如何在两个特定日期之间对表进行子集划分?
这里是我的表:LValley,那就是我曾尝试:
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"))
但它返回我的另一个日期期间,我想正是从2007年
我的所有数据也都用这个例子的功能,和我有同样的结果#Subset a dataframe between 2 dates
mydatefunc <- function(x,y){LValley[LValley$date >= x & LValley$date <= y,]}
DATE1 <- as.Date("01.01.2007 01:00", "%d.%m.%Y %H:%M")
DATE2 <- as.Date("01.01.2008 00:00", "%d.%m.%Y %H:%M")
Test2007 <- mydatefunc(DATE1,DATE2)
我会非常感谢你的帮助,
亲切的问候, 达尔文
坚持'LValley'在功能上是一个坏主意,最好在把它作为一个参数。或者使用'subset',或者使用'dplyr'中的'filter'。 – Spacedman 2014-09-05 18:01:48
@Spacedman谢谢,编辑了代码。 – akrun 2014-09-05 18:20:52
谢谢@akrun和Spacedman它工作的很棒! – 2014-09-06 09:29:27