R 4600万元素上的kmeans强制NA值
简单运行R 4600万元素上的kmeans强制NA值,r,R,简单运行 kmeans(runif(46e6), 2) 导致错误: Error in do_one(nmeth) : NAs in foreign function call (arg 13) In addition: Warning message: In do_one(nmeth) : NAs introduced by coercion 有什么想法吗?我已在下面附上我的会话信息。我只找到了另外一个提到这一点的帖子,没有答案:。很明显,输入数据是数字的 sessionInfo() R v
kmeans(runif(46e6), 2)
导致错误:
Error in do_one(nmeth) : NAs in foreign function call (arg 13)
In addition: Warning message:
In do_one(nmeth) : NAs introduced by coercion
有什么想法吗?我已在下面附上我的会话信息。我只找到了另外一个提到这一点的帖子,没有答案:。很明显,输入数据是数字的
sessionInfo()
R version 3.1.0 (2014-04-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] zoo_1.7-11 rgdal_0.9-1 raster_2.3-12 sp_1.0-16
loaded via a namespace (and not attached):
[1] grid_3.1.0 lattice_0.20-29 tools_3.1.0
编辑:我原以为这是一个记忆问题。我第一次尝试使用的机器有8GB。我将R更新为date 3.1.2的最新版本,它也有同样的问题
我在另外两台机器上试过:
- 第二次尝试是在具有R3.1.0和160GB ram的windows计算机上进行的——同样的错误
- 第三次尝试是在另一台装有R2.15和63GM内存的windows机器上进行的——成功了
谢谢你,正如@gkcn在上面正确提到的那样:这是R3.0.2中引入的一个bug, 现在已经修复,即将发布的R3.2.0也将修复。 另见。
谢谢你,哥肯·伊拉斯兰 在46e6上尝试
kmeans
时,我得到了与您完全相同的错误(我的系统类似)。当仅使用23e6时,其操作性能良好。我想知道这是否也可能与X64 windows机器上的浮点问题有关(例如,请参阅《有趣的》中的Martin的答案..在以前的R版本(如2.15.3)上尝试相同的命令--它对我有效。我想这可能也是新R版本特有的问题。这是R 3.0.2中引入的错误。请检查此处()现在你可以使用其他的k-均值算法,比如劳埃德算法或麦奎因算法,这些都可以。