【问题标题】:How do I assign a value for the parameter 'weights' in the dbscan function in R?如何在 R 的 dbscan 函数中为参数“权重”赋值?
【发布时间】:2018-04-07 03:09:28
【问题描述】:

我正在对 R 执行基于密度的聚类。我有 73 个零件和 15 个指标的汽车零件数据。我使用了 wskm 包中的 fgkm 函数来查找这 ​​15 个指标中的每一个的权重。我想知道如何在 dbscan 语法中传递它。语法是:

dbscan(x, eps, minPts = 5, weights = NULL, borderPoints = TRUE, ...)

我在“a”中有权重数组

a<- c(0.12,1,1,0.13,0.12,1,0.13,0.13,0.5,0.49,1,0.13,0.11,1,0.13)  

但是由于 weights 必须是一个数字参数,我很困惑如何传递它。

PL_SL23_dbscan_test<- dbscan(subset23A_copy_norm_test, eps = 3.22, minPts = 4, weights=a)

我在上面运行时遇到的错误是:

dbscan 中的错误(subset23A_copy_norm_test,eps = 3.22,minPts = 4,weights = a): 未使用的参数 (minPts = 4, weights = a)

【问题讨论】:

  • 您的错误消息似乎指向其他内容,但每个数据点应该有一个权重,而不是每个属性一个权重。您的 a 有 15 个值,而不是 73 个。

标签: r cluster-analysis


【解决方案1】:

要加权属性,只需相应地缩放您的数据。

权重参数是加权实例(“行”)而不是列。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-04
    • 2015-06-22
    • 2023-03-05
    • 2017-02-07
    • 2016-11-12
    • 1970-01-01
    • 2021-05-10
    • 1970-01-01
    相关资源
    最近更新 更多