使用R将年度数据转换为每日数据

时间:2016-02-27 02:17:01

标签: r

我每天都要制作年度销售数据。但我不确定如何。 我希望这些日子只有工作日(不包括周末),并且从1993年1月1日开始全年重复相同的值

MainActivity

1 个答案:

答案 0 :(得分:2)

步骤1.使用seq创建开始日期和结束日期之间的所有日期序列。这可以通过指定by = "days"

来完成

步骤2.使用weekdays查找一周中的日期。然后,使用! %in% c("Saturday", "Sunday")选择那些非星期六或星期日的日子。

步骤3.创建一个仅包含format(datedays2, "%Y")年份的向量。使用rle查看每年有多少个工作日。选择lengths元素并在rep中使用该元素重复revenue每年的工作日数。

datedays <- seq(as.Date("1993-01-01"), as.Date("2014-12-31"), by = "days")

datedays2 <- datedays[!weekdays(datedays) %in% c("Saturday","Sunday")]

revenue2 <- rep(revenue, rle(format(datedays2, "%Y"))$lengths)