JK_*_*own 10 r fread data.table
我最近更新到data.table 1.9.6并在使用时收到以下错误fread:
fread("Aug14.csv")
Error in fread("Aug14.csv") :
4 arguments passed to .Internal(nchar) which requires 3
Run Code Online (Sandbox Code Playgroud)
另一篇文章在另一个上下文中讨论了这个错误,但在升级到data.table 1.9.6之前,这个工作正常.有什么建议?
这是我的设置:
sessionInfo()
R version 3.2.0 (2015-04-16)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] data.table_1.9.6 Matrix_1.2-2
loaded via a namespace (and not attached):
[1] modeltools_0.2-21 tools_3.2.0 splines_3.2.0 grid_3.2.0 chron_2.3-47 stats4_3.2.0 lattice_0.20-33
Run Code Online (Sandbox Code Playgroud)
Mat*_*wle 16
这似乎是影响其他软件包的一个更广泛的问题,在这里r-devel引发了类似的事情:
如果我理解正确,CRAN为R 3.2.*系列提供了一个Windows二进制文件.我想这个二进制文件是使用该系列中最新版本的R构建的,目前是R 3.2.2.正如Andriy T.在这里的评论中指出的那样,基本R函数nchar在R 3.2.1中获得了额外的参数.由于data.table使用R函数nchar并ByteCompile:TRUE在其DESCRIPTION文件中设置,因此Windows的CRAN二进制包似乎与R 3.2.0不兼容.我猜这个R本身的二进制不兼容的更改应该只针对.0版本,但是我不确定.如果在安装时编译包(例如Ubuntu),这不是问题.
如果您在任何平台上使用R <3.2.0,则应该没有问题.
如果您在任何平台上使用R> = 3.2.1,则应该没有问题.
如果您在Windows上使用R 3.2.0并从CRAN安装二进制.zip(即默认方法),那么您需要升级到R> = 3.2.1,或者构建data.table(可能是任何其他包使用nchar也设置ByteCompile:TRUE)你自己使用Rtools.
| 归档时间: |
|
| 查看次数: |
4969 次 |
| 最近记录: |