我正在尝试使用expss https://cran.r-project.org/web/packages/expss/vignettes/tables-with-labels.html来完成本文中关于表代的一些示例--但是,我一直使用cro和fre的最基本的交叉表函数获得带有两个变量的错误could not find function "setalloccol":
> cro(df$var1, df$var2)
Error in setalloccol(ans) : could not find function "setalloccol"我使用的是running 1.2.1335,我已经重新安装了包dplyr、data.table、tidyr和expss本身,但是在所有这些库运行时,我似乎仍然会遇到这个错误。我已经搜索了我想出来的准确错误,而且这件事绝对有问题,所以很感谢你的帮助.
发布于 2020-01-28 13:39:44
感谢来自GitHub的线程的rferrisx。来自乔西-雅典11月3日的帖子似乎解决了这个问题,尽管我没有从巴什运行R。所以我的过程是:
expss和data.table包:remove.packages(c('expss','data.table'))install.packages(c('data.table','expss'))这似乎绕过了错误。虽然不完全确定为什么,但希望能对经历同样事情的人有所帮助。
发布于 2020-01-28 09:03:30
在运行代码之前,尝试从setalloccol中显式导出data.table:
setalloccol = data.table::setalloccol
# further calculations
# cro(df$var1, df$var2)发布于 2020-01-28 00:34:30
‘'Setalloccol’是data.table中的一个试验性命令,用于通过引用分配内存,以确保比':=‘分配浅拷贝更稳定的内容。“‘Expss”看起来像个怪物库。我不会现在装载它来追踪你的错误。但是,由于“setalloccol”是一个实验性命令,您应该找到“expss”开发人员并提交一个缺陷。然而,关于这个确切的问题,已经有了一个完整的打开的bug报告:https://github.com/gdemin/expss/issues/42。data.table ("Matt“)的开发人员在bug报告中发表了评论。在实践中,塞塔罗科的工作方式如下:
help(setalloccol)
data.table::truelength(HMR)
[1] 1035
options(datatable.verbose=TRUE)
data.table::setalloccol(HMR,2 * 1035)
data.table::truelength(HMR)
[1] 2081但是,对于大多数data.table计算来说,这确实是不必要的。试着倒在"expss“代码上,找出他们使用它的原因和时间。对不起,我帮不上忙。
https://stackoverflow.com/questions/59933337
复制相似问题