如何抽取大数据库并在R中实现K-means和K-nn?

前端之家收集整理的这篇文章主要介绍了如何抽取大数据库并在R中实现K-means和K-nn?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是R的新用户,试图远离SAS.我在这里提出这个问题,因为我对R的所有软件包和源代码感到有点沮丧,我似乎无法使这个工作主要是由于数据大小.

我有以下几点:

在本地MySQL数据库中有一个名为SOURCE的表,其中包含200个预测变量和一个类变量.该表有300万条记录,是3GB大.每个类的实例数不相等.

我要:

>随机抽取SOURCE数据库以创建较小的数据集
每班课程数量相等.
>将样本划分为培训和测试集.
> Preform k-means聚类在训练集上,以确定每个类别的k个质心.
>具有质心的测试数据的预制k-NN分类.

解决方法

我会继续的方式是:

1)将表的ids列表提取到R,您可以使用RMySQL库使用简单的SQL查询来执行此操作.

2)在R中以任何您喜欢的方式拆分ids,然后再次使用RMySQL进行后续SQL查询(我发现这两步的方法比在MysqL中直接采样快得多).

3)根据您的样本大小可以通过使用基本的R kmeans实现来避免这种情况,但是对于较大的样本,这可能会失败,在这种情况下,您应该查看使用库biganalytics中的bigkmeans.

猜你在找的MsSQL相关文章