我有這樣一個數據幀:表本周至今
> df
week month year x
1 1-7 sep 2013 566
2 8-14 sep 2013 65
3 15-21 sep 2013 144
4 22-28 sep 2013 455
5 29-30 sep 2013 1212
而且需要將其轉換爲:
> df_out
date x
1 01/09/2013 80.86
2 02/09/2013 80.86
3 03/09/2013 80.86
4 04/09/2013 80.86
5 05/09/2013 80.86
6 06/09/2013 80.86
7 07/09/2013 80.86
8 08/09/2013 9.29
9 09/09/2013 9.29
10 10/09/2013 9.29
11 11/09/2013 9.29
12 12/09/2013 9.29
13 13/09/2013 9.29
14 14/09/2013 9.29
說明:2013年9月的1-7周有566臺X。我想要構建一個時間序列,爲每週的每一天(從2013-09-01到2013-09-07)提供單位,等於566/7。
注意可能是一排(如我的df第5行),我們只有2天。因此,2013-09-29的值x將是1212/2 = 606
我試圖在Excel中執行此操作,構建每行df的開始日期和結束日期。這是由「 - 」分裂周列和構建日期列。我可以在R中完成,但然後我卡住了。
數據:
df <- structure(list(week = c("1-7", "8-14", "15-21", "22-28", "29-30"
), month = c("sep", "sep", "sep", "sep", "sep"), year = c(2013L,
2013L, 2013L, 2013L, 2013L), x = c(566L, 65L, 144L, 455L, 1212L
)), .Names = c("week", "month", "year", "x"), class = "data.frame", row.names = c(NA,
-5L))
是你的日期是否正確?它們不應該相差7天而不是1天嗎?例如,不是01/09/2013 80.86 02/09/2013 80.86但是01/09/2013 80.86 ** 08 **/09/2013 80.86等... – user1945827
否,可以。請參閱@ Robert的答案 –
順便說一句,我也製作了一個Excel解決方案。我會找到一個時間在這裏發佈它 –