使用if else语句来操作日期

时间:2016-07-03 00:35:30

标签: r date-formatting

我正在尝试使用if else语句来说明如果值小于10则在前面添加一个零,如果没有保持原样。我想让我所有的日期都是2位数。请协助。

if(df$col < 10){
paste '0'
else df$col
}

我试图将其分解为不同的列

EventID SampleDate SampleTime
130466  3/19/2008   12:30:00
131392  4/30/2008   08:45:00
131658  5/14/2008   10:00:00
117770  6/11/2008   08:45:00
118680  7/23/2008   09:15:00
118903   8/6/2008   09:00:00

SampleDatech year month day2
3/19/2008 2008     3   19
4/30/2008 2008     4   30
5/14/2008 2008     5   14
6/11/2008 2008     6   11
7/23/2008 2008     7   23
 8/6/2008 2008     8    6

1 个答案:

答案 0 :(得分:0)

如果您尝试仅将具有前导零的日输出到新列,则可以使用strftimeas.Date的组合。

df$day = strftime(as.Date(df$SampleDate, "%m/%d/%Y"), "%d")

或者,如果您想保留整个日期,但是将前导零添加到您可以执行此操作的那一天。

df$NewDate = strftime(as.Date(df$SampleDate, "%m/%d/%y"), "%m/%d/%Y")