我被要求在R中导入一个csv文件,并为2个人插入有性别和出生日期的行。
现有数据框:
Sex BirthDate
1 05/10/1952
1 14/06/2004
2 21/11/1963
在现有的数据框架中,出生日期属于"因素"。
class(BirthDate)
[1] "factor"
我需要插入:
person 1 : 2, 20/10/1980
person 2 : 1, 21/02/1970
我试过了:
b1 <- rbind(
dataf1,
c("2", as.factor("20/10/1980")),
c("1", as.factor("21/02/1970"))
)
但我在BirthDate中有NA
如何在不更改现有数据框的情况下插入日期?
答案 0 :(得分:1)
最好在使用read.csv
时使用as.is参数,然后将日期变量转换为读取后的日期:
my.data.frame <- read.csv(<filepath>, as.is=TRUE)
my.data.frameBirthDate <- as.Date(my.data.frameBirthDate, format="%d/%m/%Y")
然后,您可以附加新数据,而不用担心因素问题:
my.data.frame <- rbind(my.data.frame,
data.frame("Sex"=c(2,1),
"BirthDate"=as.Date(c("20/10/1980", "21/02/1970"), format="%d/%m/%Y")))