R:如何使用有点破损数据的避风港

时间:2015-04-10 21:20:41

标签: r r-haven

我有一些包含变音符号的德语数据,最重要的是它似乎有错误的编码。

使用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

0 个答案:

没有答案
相关问题