问题标签 [r-daisy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
15269 浏览

r - R: RStudio: How to get silhouette plot working?

Today I have realised that the silhouette plot in the cluster package doesn't display properly in RStudio. A Google search revealed that someone else had had a problem with this:

http://support.rstudio.org/help/discussions/problems/3094-plotsnot-showing-up-in-r-studio

Being new to R, it was unclear to me whether the problem had been resolved in this thread! So my question is: is there a way to get the silhouette plot to display properly in RStudio?

Thanks for any help.

Example script:

0 投票
2 回答
1266 浏览

r - 使用 Daisy 函数和 Gower 相似度确定最佳聚类数

我试图将 250 个物种的行为特征归类为生活史策略。性状数据由数值变量和名义变量组成。我对 R 和聚类分析比较陌生,但我相信找到这些点的距离的最佳选择是在 daisy 函数中使用 gower 相似性方法。1)这是最好的方法吗?

一旦我有了这些距离,我想找到重要的集群。我研究了 pvclust 并喜欢它赋予我集群强度的能力。但是,我无法修改代码以接受之前使用 daisy 进行的距离测量。我没有成功地尝试遵循这里给出的建议https://stats.stackexchange.com/questions/10347/making-a-heatmap-with-a-precomputed-distance-matrix-and-data-matrix-in-r/ 10349#10349并使用此处获得的代码http://www.is.titech.ac.jp/~shimo/prog/pvclust/pvclust_unofficial_090824/pvclust.R

2)谁能帮我修改现有代码以接受我的距离测量?

3)或者,是否有另一种更好的方法来确定重要集群的数量?

我提前感谢大家的帮助。

0 投票
1 回答
1631 浏览

r - 计算数据框中所有列对之间的点积

我有一个 Rdata frame列是逻辑变量。我需要在所有可能的列对之间进行某种点积

这源于文本语料库分析,其中数据框指示哪些术语(行)存在于哪些文档(列)中。daisy对于希望使用from clusterpackage 或cosinefrom package计算每个可能的列对的距离的情况,有一些常见的快速解决方案lsa

但是,我需要在所有列对之间使用某种点积来代替:目标是计算比较的两个文档中同时存在多少个单词(并且对于每一对)。

0 投票
1 回答
4837 浏览

r - .C 中不支持 R 集群包错误 Daisy() 函数长向量(参数 11)

尝试使用 R中的包中的函数将data.frame具有数字、名义和 NA 值的 a 转换为相异矩阵。我的目的涉及在应用 k 均值聚类进行客户细分之前创建一个相异矩阵。有133,153 行和 36 列。这是我的机器。daisyclusterdata.frame

如何修复菊花警告?

由于 Windows 计算机具有 3 Gb RAM,我将虚拟内存增加到 100 GB,希望这足以创建矩阵 - 它没有工作。我仍然有一些关于内存的错误。我研究了其他 R 包来解决内存问题,但它们不起作用。我不能bigmemorybiganalytics包一起使用,因为它只接受数字矩阵。和包claraff只接受数字矩阵。

CRAN 的cluster软件包建议在应用 k-means 之前将 gower 相似系数作为距离度量。高尔系数采用数值、名义和 NA 值。

**编辑:我将 RStudio 与 Amazon Web Service (AWS) r3.8xlarge 对齐,具有 244Gbs 内存和 32 个 vCPU。我尝试在我的计算机上创建菊花矩阵,但没有足够的 RAM。**

**编辑 2:我使用 clara 函数对数据集进行聚类。**

0 投票
0 回答
678 浏览

r - 计算轮廓宽度 - 特殊情况

我完全按照@MrFlick 的建议重新起草了这个问题。

假设我有一个data.frame如下

对于每一个group,我想计算与“最佳”聚类数相对应的轮廓宽度(SW)。为此,我准备了以下功能,我想在任何group

作为最终输出,我想在第一列中ASW生成data.frame组号(id),在第二列中生成与最佳集群数相对应的轮廓宽度值。如果该组仅包含一个人,我希望轮廓宽度为 0 - 未为少于 2 个集群定义 SW。group使用除我想使用包中的差异矩阵daisy之外cluster的所有变量。据我所知,daisy是唯一能够从混合变量计算相异矩阵的函数。接下来,我会将刚刚生成的相异矩阵传递给pam并计算各种集群配置的轮廓宽度。为了缩短计算时间,尤其是对于大型群体,我将最大数量的集群设置为群体中个体数量的三分之一。此时,我希望函数获取与最佳聚类数对应的 SW 值(通过查看最大轮廓宽度值确定)并将其与相应的组 id 一起粘贴到data.frame- 这里称为aswout.

不幸的是,该功能似乎无法正常工作(我只在第一组上尝试过),而且我不清楚如何让它在所有组中“循环”。

我希望这个问题很清楚。如果有不明白的地方写下来,我会补充更多信息。我真的很感谢在这方面的任何帮助!

一切顺利,里卡多

编辑:

ASW功能现在有效。我试图让它在数据框中的所有组中循环。我从另一篇文章中了解到,将data.frames 包含在随着函数执行而增长的函数中是一个坏习惯。然而,这是我的目标aswout data.frame。我现在正在寻找一种方法来实现相同的结果,让函数在组上循环并给我一个输出data.frame,而不包括data.frame函数内的。

0 投票
0 回答
198 浏览

r - 使用 data.table 对组执行功能并将结果报告到另一个 data.table

我有以下内容data.table,其中包含group个人和一些描述他们的特征

对于每个组,我想运行以下功能

[请注意,由于不接受s,因此在内部ASW使用s 有效] 正如您所看到的,该函数作为结果生成 vector 。鉴于此函数将应用于 中的每个组,它将产生与组数相等的向量。作为全局结果,我想生成另一个(甚至另一个也可以),其中包含所有一起编辑的向量。我怎样才能做到这一点?我在下面的尝试显示了如何将该函数应用于每个组,但我不知道如何将所有“部分结果”存储到另一个表中。data.framedaisydata.tableswgdtdata.tabledata.frameswgrbind

希望问题很清楚。非常感谢您的帮助!里卡多

0 投票
1 回答
2001 浏览

r - Daisy 函数警告消息:强制引入的 NA

我正在尝试从 R 中的 CRAN 的 Cluster 包中将 a 转换data.framedaisy矩阵。我有一个包含 13109 个观测值的数据集,其中包含 9 个分类变量。

我得到了两种关于NAs 被强制引入的错误,并且没有丢失 min/max 的参数。为什么我会收到此错误?

NAdata.frame. 这是关于我的数据集的信息:

这是强制值的证明NA:我尝试执行PAM聚类功能,但收到错误提示NA值不允许。

如果我能提供更多信息,请告诉我。

编辑:我解决了我的错误。我在.csv文件中读取为character. 这就是它与其他数据集一起工作的原因。这是我出错的地方:

解决方案:

0 投票
2 回答
12184 浏览

python - R 的 cluster 包中的 daisy() 的 Python 等价物

我有一个包含分类(名义和有序)和数字属性的数据集。我想使用这些混合属性在我的观察中计算(不)相似度矩阵。使用 R 中 cluster 包的daisy()函数,我可以很容易地得到一个相异矩阵,如下所示:

这使用 gower 度量来处理名义变量。是否有与daisy()R 中的函数等效的 Python?

或者任何其他允许使用 Gower 度量或类似方法来计算具有混合(名义、数字)属性的数据集的(不)相似度矩阵的任何其他模块函数?

0 投票
1 回答
1011 浏览

r - 根据 R 中的集群聚合序数和二进制数据

我使用带有 R 的包进行了 k-medoid 聚类分析CRAN cluster。数据位于一个data.frame名为 df4 的 13111 obs 上。11 个二进制和序数值。聚类后​​,我将聚类结果应用于原始data.frame显示相应的聚类编号到用户 ID。

如何根据集群聚合二元和序数选择?

例如,Gender变量具有男性/女性值,Age范围为“18-20”、“21-24”、“25-34”、“35-44”、“45-54”、“55-64”和“ 65+”。我想要变量Gender和类别中每个集群的男性和女性值的总和Age

这是我的带有集群标签列的 data.frame 的头部:

这是一个类似于我的数据集的可重现示例:

期望的输出结果(假设):

让我知道我是否可以提供更多信息。

0 投票
1 回答
1369 浏览

r - R - 如何在非常大的数据集上加快欧几里得距离计算

社区,

我有一个非常大的数据集,其中包含 3 列坐标(x、y、z)和 24 x 10^6 行。我需要计算所有行与第一行之间的欧几里得距离,即 0、0、0。下面的循环需要很长时间!我也在矩阵而不是数据框上尝试过这个,但这并没有解决问题。

有没有人有加快这个过程的建议?