我想用Python(pyclustering
)中的库在R中聚集一些数据。
我正在使用reticulate
包来做到这一点:
library(reticulate)
# create some random array
np <- import("numpy", convert = FALSE)
dat <- np$random$rand(100,2)
# clustering with CURE
clus_cure <- import("pyclustering.cluster.cure")
clus_res <- clus_cure$cure(dat, 2)
clus_res$get_clusters()
但它返回
NULL
。拜托,哪里有问题?
最佳答案
我认为问题是使用pyclustering
库而不是使用reticulate
或R
。如自述文件example中所述,您需要在process()
对象上运行<pyclustering.cluster.cure.cure>
函数:
library(reticulate)
# create some random array
np <- import("numpy", convert = FALSE)
dat <- np$random$rand(10L,2L)
# clustering with CURE
clus_cure <- import("pyclustering.cluster.cure")
clus_res <- clus_cure$cure(data = dat, number_cluster=2L)
clus_res$process()
print(clus_res$get_clusters())
#> [[1]]
#> [1] 2 3 8 0 1 7 4 9
#>
#> [[2]]
#> [1] 5 6
另外,请注意,您需要在预期的地方显式指定整数
关于r - 无法从带有网状结构的pyclustering对象获得结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50407012/