【问题标题】:K-means clustering in RR中的K均值聚类
【发布时间】:2017-03-15 16:44:31
【问题描述】:

我是 R 的初学者,我关注了 this tutorial 的 K-means 聚类。但是,我试图在真实数据上运行这个算法。我选择了:http://exoplanet.eu/catalog/

我已经加载了数据:

d <- read.csv2(
    "exoplanet.eu_catalog.csv",
    header = TRUE,
    sep = ","
)

使用此代码:

plot(
    x = log(as.numeric(as.character(d$semi_major_axis))),
    y = log(as.numeric(as.character(d$mass))),
    xlab = "Star-exoplanet distance (log(UA))",
    ylab = "Mass of exoplanets (log(M[Jupiter]))"
)

我有以下图形:

我想在此图上运行 K-means 聚类算法以显示三个带颜色的聚类,但我不知道如何在 R 中进行。我想我必须从以下开始:

y = log(as.numeric(as.character(d$mass)))
y <- y[!is.na(y)]
x = log(as.numeric(as.character(d$semi_major_axis)))
x <- x[!is.na(x)]

但我不知道如何将数据格式化为矩阵以运行kmeans(matrix, 3, nstart = 20)。请问有什么线索吗?

【问题讨论】:

    标签: r k-means


    【解决方案1】:

    因为您使用

    读取文件
    d <- read.csv2("exoplanet.eu_catalog.csv",
    header = TRUE,
    sep = ",")
    

    你的数据是数据框的形式,需要转换成矩阵

    使用此代码将数据框转换为矩阵

    inMatrixForm <- data.matrix(d)
    

    【讨论】:

      猜你喜欢
      • 2017-02-15
      • 2017-12-09
      • 2012-06-18
      • 2019-10-14
      • 2014-07-24
      • 2015-02-09
      • 2017-12-30
      • 1970-01-01
      • 2017-01-15
      相关资源
      最近更新 更多