使用R,我想將兩個不同列中包含的月份nb(月份)和日期nb(日期)合併成一列(日期),並使用創建的列日期格式。將月份和日期合併到一個日期列中
我的數據幀是這樣的:
St Dep Month Day
A 2 1 1
B 2 1 1
B 2 2 1
A 5 1 1
A 7 1 1
C 2 1 1
C 5 1 1
我想的東西,如「一月-01」添加一列。
使用R,我想將兩個不同列中包含的月份nb(月份)和日期nb(日期)合併成一列(日期),並使用創建的列日期格式。將月份和日期合併到一個日期列中
我的數據幀是這樣的:
St Dep Month Day
A 2 1 1
B 2 1 1
B 2 2 1
A 5 1 1
A 7 1 1
C 2 1 1
C 5 1 1
我想的東西,如「一月-01」添加一列。
嘗試......
df <- data.frame(Month = sample(1:12 , 10 , repl = TRUE) , Day = sample(1:30 , 10 , repl = TRUE))
df$Date <- as.Date(paste(df$Month , df$Day , sep = ".") , format = "%m.%d")
df
# Month Day Date
# 1 1 8 2013-01-08
# 2 1 17 2013-01-17
# 3 7 23 2013-07-23
# 4 11 21 2013-11-21
# 5 3 30 2013-03-30
# 6 12 15 2013-12-15
# 7 2 30 <NA>
# 8 7 10 2013-07-10
# 9 1 16 2013-01-16
# 10 8 1 2013-08-01
我得到了一些來港,因爲我做了隨機日期,其中一些不存在的,如2月30日
我這裏假設通過「日期格式」你只是意味着一個字符串,它看起來像一個日期,而不是一個合適的日期類R.
data <- data.frame(Month=c(1,5,2), Day=c(1,2,3))
data$MonthDay <- paste(month.abb[data$Month], data$Day, sep="-")
data
# Month Day MonthDay
# 1 1 1 Jan-1
# 2 5 2 May-2
# 3 2 3 Feb-3
+1更好的解決方案(假設他不想要日期!) – 2013-03-14 13:26:11
@ SimonO101,OP說他想在帖子底部顯示「Jan-01」之類的東西:)。 – Arun 2013-03-14 13:29:39
@Arun我知道,這就是爲什麼我說這是一個更好的解決方案:-)但有時候人們並不總是完全解釋他們想要的東西。 – 2013-03-14 13:32:33
OK,就是它!我不希望有一年(我感興趣的變量是30年的平均值),但我可能會找到一種方法,不要在我的斧頭(我使用ggplot2)中計劃一年。 – user2165907 2013-03-14 13:27:16
我建議你看一下@ndoogan的解決方案,並接受它,而不是*完全*你想要的。 – 2013-03-14 13:33:33