R语言中k均值聚类对数据量的要求,我有一个数据量大概200多万样本,变量七个,在确定k值的时候,总是提醒数据量太大如何破?

Watch_dou 2017-07-12 10:54:53
R语言中k均值聚类对数据量的要求,我有一个数据量大概200多万样本,变量七个,在确定k值的时候,总是提醒数据量太大如何破?
#图形确定最佳K
wssplot <- function(data,nc=15,seed=1234){
wss <- (nrow(data)-1)*sum(apply(data,2,var))
for (i in 2:nc){
set.seed(seed)
wss[i] <- sum(kmeans(data,centers = i)$withinss)
}
plot(1:nc,wss,type='b',xlab = 'Number of Clusters',
ylab = 'Whithin groups sum of squares')
}
wssplot(norm_data)
结果总是出现:
> wssplot(norm_data)
Error: cannot allocate vector of size 132.3 Mb
Called from: aperm.default(X, c(s.call, s.ans))

如何解决?????

...全文
1056 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wung888888 2017-08-13
  • 打赏
  • 举报
回复
Consider whether you really need all this data explicitly, or can the matrix be sparse? There is good support in R (see Matrix package for e.g.) for sparse matrices. Keep all other processes and objects in R to a minimum when you need to make objects of this size. Use gc() to clear now unused memory, or, better only create the object you need in one session. If the above cannot help, get a 64-bit machine with as much RAM as you can afford, and install 64-bit R. If you cannot do that there are many online services for remote computing. If you cannot do that the memory-mapping tools like package ff (or bigmemory as Sascha mentions) will help you build a new solution. In my limited experience ff is the more advanced package, but you should read the High Performance Computing topic on CRAN Task Views. https://stackoverflow.com/questions/5171593/r-memory-management-cannot-allocate-vector-of-size-n-mb
zara 2017-07-12
  • 打赏
  • 举报
回复
R语言,没接触过。看那提示,通常是可用物理内存不够大吧
  • 打赏
  • 举报
回复
才132.3 Mb,15年前的电脑应该都没问题。
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

3,423

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 其他开发语言
社区管理员
  • 其他开发语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧