参照行手动编辑dataframe列中的单元格
根据前面的问题,我想在格式错误时手动更改日期。使用示例数据帧:参照行手动编辑dataframe列中的单元格,r,R,根据前面的问题,我想在格式错误时手动更改日期。使用示例数据帧: ID <- c(101,102,103,104,105,106,107) dob <- c("20/04/2001","29/10/2000","September 1 2012","15/11/00","20.01.1999","April 20th 1999", "04/08/01") df <- data.frame(ID, dob) ID首先,如果您的变量是一个因子(在您的示例中就是这样),则必须首先将其
ID <- c(101,102,103,104,105,106,107)
dob <- c("20/04/2001","29/10/2000","September 1 2012","15/11/00","20.01.1999","April 20th 1999", "04/08/01")
df <- data.frame(ID, dob)
ID首先,如果您的变量是一个因子
(在您的示例中就是这样),则必须首先将其转换为字符
:
df$dob <- as.character(df$dob)
一旦日期的格式完全相同,就必须将它们从base R或包转换为日期类之一。例如,请查看strtime
帮助页面
df$dob[df$dob=="September 1 2012"] <- "01/09/2012"
df$dob[df$dob=="April 20th 1999"] <- "20/04/1999"
df <- within(df, {
dob <- as.character(dob)
dob[dob=="September 1 2012"] <- "01/09/2012"
dob[dob=="April 20th 1999"] <- "20/04/1999"
})