0

私は現在、いくつかの大きなデータ、約 30k 行のクラスタリングに取り組んでいます。非類似度行列は R が処理するには大きすぎます。これは純粋にメモリ サイズの問題ではないと思います。たぶん、これを行うための賢い方法がありますか?

4

1 に答える 1

1

データが大きすぎてベース R が簡単に処理できない場合は、いくつかのオプションがあります。

  • より多くの RAM を搭載したマシンで作業してください。
  • R でのより大きなデータの操作をサポートする Revolution Analytics などの商用製品を使用します。

RevoScaleRこれは、 Revolution による商用パッケージを使用した例です。これには53K行が含まれているため、データセットよりも少し大きいため、データセットdiamondsを使用します。ggplot2この例は単純に因子を数値に変換するため、あまり分析的な意味を持ちませんが、ラップトップでの計算を示しています。

library(ggplot2)
library(RevoScaleR)
artificial <- as.data.frame(sapply(diamonds, as.numeric))
clusters <- rxKmeans(~carat + cut + color + clarity + price, 
                     data=artificial, numClusters=6)
clusters$centers

これにより、次の結果が得られます。

      carat      cut    color  clarity      price
1 0.3873094 4.073170 3.294146 4.553910   932.6134
2 1.9338503 3.873151 4.285970 3.623935 16171.7006
3 1.0529018 3.655348 3.866056 3.135403  4897.1073
4 0.7298475 3.794888 3.486457 3.899821  2653.7674
5 1.2653675 3.879387 4.025984 4.065154  7777.0613
6 1.5808225 3.904489 4.066285 4.066285 11562.5788
于 2013-09-19T13:27:57.683 に答える