我有一些包含变音符号的德语数据,最重要的是它似乎有错误的编码。
read.dta
如果我直接尝试
> t <- read.dta(fileName)
Error in factor(rval[[v]], levels = tt[[ll[v]]], labels = names(tt[[ll[v]]])) :
invalid 'labels'; length 4 should be 1 or 3
所以我改为
t <- read.dta(fileName, convert.factors = FALSE)
> head(t)
persnr betnr idnum begorig endorig begepi endepi frau gebjahr nation nation_gr famst
1 65170081 51705278 36 2000-01-01 2000-12-31 2000-01-01 2000-12-31 0 1967 0 10 NA
2 65170081 51705278 36 2001-01-01 2001-12-31 2001-01-01 2001-12-31 0 1967 0 10 NA
3 65170081 51705278 36 2002-01-01 2002-12-31 2002-01-01 2002-12-31 0 1967 0 10 NA
4 65170081 51705278 36 2003-01-01 2003-12-31 2003-01-01 2003-12-31 0 1967 0 10 NA
5 65170081 51705278 36 2004-01-01 2004-12-31 2004-01-01 2004-12-31 0 1967 0 10 NA
6 65170081 51705278 36 2005-01-01 2005-12-31 2005-01-01 2005-12-31 0 1967 0 10 NA
read_dta
此处使用haven
包:
>x <- read_dta(fileName)
>head(x)
Error: `x` and `labels` must be same type
> str(pers)
Classes 'tbl_df', 'tbl' and 'data.frame': 361921 obs. of 45 variables:
我不理解使用head()
时遇到的错误。尝试使用
data.table(read_dta(fileName))
当我这样做时,我将首先看到错误,R
随后会崩溃。
数据文件包含in this zip file,名为LIAB_lm_9310_v1_pers.dta
。