Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.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
如何增加Mac上R的内存限制?_R - Fatal编程技术网

如何增加Mac上R的内存限制?

如何增加Mac上R的内存限制?,r,R,我一直在研究增加Mac上R的内存限制的方法,但没有发现任何特别有用的方法。我尝试了两种方法,但都不奏效 我在跑步 fviz_nbclust(df, kmeans, method = "wss") 在一组1.79m行和2列的数据上。错误表示向量内存已耗尽(达到限制?)。我试过memory.limit(),但这在Mac电脑上不起作用 sessionInfo如下: R version 3.6.1 (2019-07-05) Platform: x86_64-apple-darwin15.6.0 (6

我一直在研究增加Mac上R的内存限制的方法,但没有发现任何特别有用的方法。我尝试了两种方法,但都不奏效

我在跑步

fviz_nbclust(df, kmeans, method = "wss") 
在一组1.79m行和2列的数据上。错误表示向量内存已耗尽(达到限制?)。我试过
memory.limit()
,但这在Mac电脑上不起作用

sessionInfo如下:

R version 3.6.1 (2019-07-05)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS Sierra 10.12.6

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib

locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] factoextra_1.0.6 ggplot2_3.2.1   

loaded via a namespace (and not attached):
 [1] ggrepel_0.8.1    Rcpp_1.0.3       withr_2.1.2      assertthat_0.2.1
 [5] crayon_1.3.4     dplyr_0.8.3      grid_3.6.1       R6_2.4.1        
 [9] lifecycle_0.1.0  gtable_0.3.0     magrittr_1.5     scales_1.1.0    
[13] pillar_1.4.2     rlang_0.4.1      lazyeval_0.2.2   tools_3.6.1     
[17] glue_1.3.1       purrr_0.3.3      munsell_0.5.0    compiler_3.6.1  
[21] pkgconfig_2.0.3  colorspace_1.4-1 tidyselect_0.2.5 tibble_2.1.3    
> 

有人能帮忙吗?谢谢

您应该评估当前代码,而不是增加内存限制(解决方案在您的链接问题中)。优化代码通常会弥补硬件的限制

关于这个问题有几篇文章。您应该特别查看包
data.table
()和/或
bigmemory
()和
ff
()。后者创建了一个virtual data.frame,但可以像R中的任何常规对象一样进行处理。下面是后一篇文章中修改的示例:

library(ff)
                                 
# Import the file
bigobj.ff <- read.csv.ffdf(file="bigfile.csv")

# Check the object
class(bigobj.ff)
## [1] "ffdf"

# bigobj.ff is a virtual dataframe, but you can still perform normal operations
sum(bigobj.ff[,3])
## [1] 66029
库(ff)
#导入文件

bigobj.ff您可以参考以下答案。希望它能起作用。@Ashish谢谢,我试过了,但对我不起作用。。。