Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
psidR:build.panel()返回重复错误_R_Duplicates_Data.table_Na - Fatal编程技术网

psidR:build.panel()返回重复错误

psidR:build.panel()返回重复错误,r,duplicates,data.table,na,R,Duplicates,Data.table,Na,刚刚尝试在psidR包中运行build.panel函数。在脚本的第一部分,它成功地下载了所有rda文件,我将它们放在一个单独的文件夹中。但是,现在我运行了该函数,得到了一个错误代码: [.data.table(yind,:=((as.character(ind.nas)),NA))中的错误: 无法在同一查询中两次分配给同一列(检测到重复项)。 此外:警告信息: 在[.data.table(tmp,:=((nanames),NA_real_u)中,带=FALSE): 如果忽略=FALSE,则在使用

刚刚尝试在psidR包中运行build.panel函数。在脚本的第一部分,它成功地下载了所有rda文件,我将它们放在一个单独的文件夹中。但是,现在我运行了该函数,得到了一个错误代码:

[.data.table(yind,:=((as.character(ind.nas)),NA))中的错误: 无法在同一查询中两次分配给同一列(检测到重复项)。 此外:警告信息: 在[.data.table(tmp,:=((nanames),NA_real_u)中,带=FALSE): 如果忽略=FALSE,则在使用时不需要它:=。有关示例,请参见?':=。

可能是我定义变量时出错了?我只是使用getNamesPSID函数并将其插入data.table,类似于示例代码:

library(psidR)
library(openxlsx)
library(data.table)
cwf <- read.xlsx("http://psidonline.isr.umich.edu/help/xyr/psid.xlsx")

id.ind.educ1 <- getNamesPSID("ER30010", cwf)
id.fam.income1 <- getNamesPSID("V81", cwf)

famvars1 <- data.table(year=c(1968, 1969, 1970),
                       income1=id.fam.income1
                       )

indvars1 <- data.table(year=c(1968, 1969, 1970),
                       educ1=id.ind.educ1
                       )

build.panel(datadir = "/Users/Adrian/Documents/ECON 490/Heteroskedastic Dependency/Dependency/RDA", fam.vars = famvars1, ind.vars = indvars1, sample = "SRC", design = 3)

编辑“”:谢谢@Axeman,我删掉了可重复的示例。我的实际数据表包含更多变量

更新: 对于遇到类似问题的人:
在试图找到一种方法使该函数正常工作后,我决定手动合并所有文件和数据帧。请做好准备,这是一个庞大的项目,但对PSID的任何分析也是如此。我遵循此处的说明:并将它们与psidR包的帮助器功能结合起来(主要是getNamesPSID,获取每个wave中的变量名)。到目前为止,非常成功。只希望web上有更多关于调查包确切功能的文章。

如果不制作一个小得多的可复制示例,您不太可能收到有用的答案。您绝对确定调用中没有重复的名称列引发错误吗?是的,我使用了重复的值/unique values在Excel中起作用,接下来出现的只有NA。您可以尝试向
psidR
维护人员提出这一点:请同时报告每个包的版本,因为版本可能不兼容Hanks,是的,我也在github上提交了一个问题线程。我还看到在过去有一些NA字符串,所以可能只是包的内部问题。。。
3: [.data.table(yind, , :=((as.character(ind.nas)), NA))
2: yind[, :=((as.character(ind.nas)), NA)]
1: build.panel(datadir = "/Users/Adrian/Documents/ECON 490/Heteroskedastic Dependency/Dependency/RDA",
fam.vars = famvars, ind.vars = indvars, sample = "SRC", design = 3)