R 中的 K 均值聚类
K-means clustering in R
我是 R 的初学者,我关注 this tutorial on K-means clustering. However, I'm trying to run this algorithm on real data. I chose : 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 均值聚类算法以显示三个具有颜色的聚类,但我不知道如何在 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)
。请问有什么线索吗?
自从您使用
阅读您的文件
d <- read.csv2("exoplanet.eu_catalog.csv",
header = TRUE,
sep = ",")
你的数据是数据框的形式,你需要转换成矩阵
使用此代码将数据框转换为矩阵
inMatrixForm <- data.matrix(d)
我是 R 的初学者,我关注 this tutorial on K-means clustering. However, I'm trying to run this algorithm on real data. I chose : 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 均值聚类算法以显示三个具有颜色的聚类,但我不知道如何在 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)
。请问有什么线索吗?
自从您使用
阅读您的文件d <- read.csv2("exoplanet.eu_catalog.csv",
header = TRUE,
sep = ",")
你的数据是数据框的形式,你需要转换成矩阵
使用此代码将数据框转换为矩阵
inMatrixForm <- data.matrix(d)