层次聚类大稀疏距离矩阵 R

2024-01-03

我试图在非常大的距离上执行 fastclust,但遇到了问题。

我有一个非常大的 csv 文件(大约 9100 万行,因此 for 循环在 R 中花费太长时间),其中包含关键字(大约 50,000 个唯一关键字)之间的相似性,当我读入 data.frame 时,它​​看起来像:

> df   
kwd1 kwd2 similarity  
a  b  1  
b  a  1  
c  a  2  
a  c  2 

它是一个稀疏列表,我可以使用稀疏矩阵()将其转换为稀疏矩阵:

> myMatrix 
  a b c  
a . . .
b 1 . .
c 2 . .

但是,当我尝试使用 as.dist() 将其转换为 dist 对象时,我收到 R 中的“问题太大”的错误。我已阅读此处的其他 dist 问题,但其他人建议的代码不适用于我上面的示例数据集。

谢谢你的帮助!


虽然首先使用稀疏矩阵似乎是一个好主意,但我认为这种方法存在一些问题:您缺失的距离将被编码为0s,不作为NAs (see 创建(和访问)具有 NA 默认条目的稀疏矩阵 https://stackoverflow.com/questions/1274171/creating-and-accessing-a-sparse-matrix-in-r)。如您所知,在聚类时,零相异性与缺失相异性具有完全不同的含义......

所以无论如何,你需要的是一个包含很多的 dist 对象NA是为了你遗漏的差异。不幸的是,你的问题太大了,需要太多的内存:

d <- dist(x = rep(NA_integer_, 50000))
# Error: cannot allocate vector of size 9.3 Gb

这只是处理输入......即使使用具有大量内存的 64 位机器,我也不确定聚类算法本身不会阻塞或无限期地运行。

您应该考虑将问题分解为更小的部分。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

层次聚类大稀疏距离矩阵 R 的相关文章

  • 如何将 r 数据框转换为 h2o 对象

    我对 R 和 H2O 很陌生 我试图找到一种将 r 数据帧转换为 h2o 对象的方法 我花了一些时间研究如何做到这一点 但没有运气 其他方式也是可能的 并且有详细记录如下 prosPath system file extdata prost
  • R 中的“右”滚动平均值和“左”滚动平均值是什么?

    如果我想计算之前的n意味着年份滞后于当年 我将如何实现这一点 它像 右 滚动平均窗口一样简单吗 或者它是一个 左 滚动平均窗口 我不确定这里使用哪个窗口 样本数据 set seed 1234 dat lt data frame year c
  • 使用 data.table 对分组数据进行插值

    这是我最初发布的问题的延续http r 789695 n4 nabble com subset Between data table list and single data table object tp4673202 html http
  • 使用 ggplot 2 使用线条或线段将堆栈条形图与多个组连接起来

    我正在对一些患有某种疾病的患者进行一项研究 并在 3 个不同的时间点使用顺序量表评估功能状态 我想在这些时间点的堆叠条形图中连接多个组 我查看了这些主题 但尚未使用这些建议使其发挥作用 如何将线条放置在堆积条形图的边缘 https stac
  • 如何使用“NA”作为字符串

    我有一个 csv 文件 其中一列是字符类型 该变量的很少有值是 NA 字符串 但是当我使用 read csv 读取 R 中的 csv 文件时 NA 字符串存储为 NA 我该如何修复它 您可以使用na strings论证中read csv r
  • R 和系统调用

    我过去曾使用 R 对命令行进行非常基本的调用 例子可以找到here https stackoverflow com questions 3284301 command line in r code 这一次 我希望模仿这段从 Windows
  • 基于两列对数据框中的行进行求和[重复]

    这个问题在这里已经有答案了 我想添加一列的值 将它们按两列分组 我找到了如何在一列上执行此操作 但无法弄清楚如何在两列上执行此操作 例如 如果我有以下数据框 x c a a b b c c a a b b c c a a b b c c y
  • 如何使用 R 更改 png 文件的大小

    我正在绘制 png 文件并获取一张小图片 你知道一些可以改变 png 图大小的简单代码吗 我的地块太高太 薄 另外有没有办法改变情节的分辨率 谢谢 伊格尔 png png filename Rplot 03d png width 480 h
  • 计算网格中物种的出现次数

    我有大约500 000点R美国各地候鸟物种的出现数据 我试图在这些点上覆盖网格 然后计算每个网格中出现的次数 统计完计数后 我想将它们引用到网格单元 ID 在 R 中 我使用了over 函数只获取范围图中的点 这是一个形状文件 Read i
  • 连接路径的函数?

    是否有现有的函数来连接路径 我知道实施起来并不困难 但仍然 除了照顾尾随 or 我需要注意正确的操作系统路径格式检测 即我们是否编写C dir file or dir file 正如我所说 我相信我知道如何实施它 问题是 我应该这样做吗 现
  • 使用多边形图层下方的轮廓线切割多边形

    我想根据高程将多边形图层切割成两部分 上部和下部 多边形可能是凸的或凹的 并且切割的位置可能彼此不同 等高线的间隔为 5m 这意味着我可能需要生成一个具有更紧凑的等高线的等高线 例如 1m 的间隔 关于如何做到这一点的任何想法 在 ArcG
  • 如果 RCurl::getURL() 执行时间太长,如何停止执行?

    有没有办法告诉 R 或 RCurl 包在超过指定时间段时放弃尝试下载网页并转到下一行代码 例如 gt library RCurl gt u http photos prnewswire com prnh 20110713 NY34814 b
  • OpenStreetMap 不显示在 RStudio 中(使用 R 3.2.1)

    我正在使用来自的代码here https rstudio github io leaflet library leaflet m lt leaflet gt addTiles gt addMarkers lng 174 768 lat 36
  • 挑战:优化取消列出[简单]

    因为 SO 最近有点慢 所以我发布了一个简单的问题 如果大鱼们能在这场比赛中留在替补席上并给新秀们一个回应的机会 我将不胜感激 有时我们的对象具有大量的大列表元素 向量 您如何将这个对象 取消列出 到单个向量中 证明你的方法比unlist
  • 与heroku配合使用的统计引擎

    我有一个 Heroku Rails 应用程序 需要处理一些重要的数字 并且我需要使用像 R 这样的统计库 更糟糕的是 MatLab 我正在寻找以下任何问题的答案 是否有不需要二进制文件的功能齐全的统计包 GEM 是否可以将 R 二进制文件作
  • 将一长行带空格的数据导入R中

    这个问题是我上一个问题的后续问题 将一长行数据导入到 R 中 https stackoverflow com questions 8389913 我有一个由单行文本组成的大型数据文件 格式类似于 Cat 14 15 Horse 16 我最终
  • ggplot2 中的颜色和填充参数有什么区别?

    ggmap location geom density 2d aes long lat df geom point aes long lat color special alpha 0 5 data df 当我更改填充颜色时 我看不出有什么
  • 如何在 R 中创建纯 ascii 表作为输出,类似于 MySQL 风格?

    我正在尝试为 R 找到一个输出的函数data frameMySQL 风格的 ascii 表中的对象如下 id var1 var2 1 asdf g 2 asdf h 3 asdf j 有这样的功能吗 至少有两个工具可以做到这一点 csvfi
  • ggplot2以限制为中心的多边形世界地图给出了有趣的边缘

    使用下面的代码我生成了一张以华盛顿特区为中心的地图 解决方案基于科斯克的解决方案在这里 https stackoverflow com questions 10620862 use different center than the pri
  • 如何在复杂的皂膜GAM中设置更平滑的边界条件?

    我正在对南太平洋岛屿泻湖中宽吻海豚的分布进行建模 我想使用肥皂膜平滑器来模拟海豚在二维表面 经度 x 纬度 上存在的概率 考虑到陆地边界 显然海豚不能在陆地上行走 我想知道如何将我的研究区域 陆地和近海水域 的边界固定为等于零的条件 因为我

随机推荐

  • 如何将可选参数传递给 bash 脚本中的另一个命令?

    我正在编写一个 bash 脚本 它接受一些可选参数 我想翻译它们并将它们传递给另一个脚本 但是 我很难优雅地传递可选参数 以下是我设法用伪代码完成的工作的概述 a sh if arg1 in arguments then firstArg
  • 标准 ada 包含路径是什么

    我在使用 apt get 安装的 Ubuntu 上使用 gnat 4 6 我需要知道在哪里安装下载的库 例如APQ http sourceforge net projects apq 我应该设置什么ADA INCLUDE PATH and
  • Swift 2.0 复制 OBJC_ASSOCIATION_RETAIN

    我正在扩展 Swift 2 0 中的一些类以与 ReactiveCocoa 3 0 swift 2 0 分支 一起使用 但遇到了一些麻烦 我已经关注科林了艾伯哈特的教程 http blog scottlogic com 2015 05 15
  • Flutter 使用 http 响应头缓存 JSON 响应

    我正在尝试为服务器 JSON 响应创建和使用缓存 像齐射响应缓存之类的东西 https stackoverflow com a 32022946 1993001 https stackoverflow com a 32022946 1993
  • 在 Mac 上创建 SQL 数据库

    我想在我的 Mac 上创建 SQL 数据库 我想知道我可以用来创建 操作它的最佳软件是什么 任何建议将不胜感激 Postgres Postgres http www postgresql org 是一个成熟的重型企业级数据库系统 Postg
  • 是否可以仅捕获屏幕的一部分,甚至捕获另一个应用程序的特定视图?

    Android 允许使用 MediaProjection 类 如图所示 将全屏捕获为图像或视频here https github com mtsahakis MediaProjectionDemo例如图像 我想知道我们能走多远 是否可以仅捕
  • 如何将 findbugs @Nonnull 与外部库一起使用?

    我开始使用 findbugs Nonnull and CheckForNull在现有项目上添加注释 以防止 NPE 并且认为它效果很好 我用 Nonnull作为返回类型和参数的默认值 只需添加默认值 就已经发现了一些 NPE 现在我找到了类
  • 代理密钥、合成密钥和人工密钥之间有区别吗?

    代理密钥 合成密钥和人工密钥之间有什么区别吗 我不清楚具体的区别 代理密钥 合成密钥和人工密钥是同义词 技术关键是另一个 它们的意思都是 没有商业意义的主键 它们与自然密钥或业务密钥不同 后者的含义超出了当前系统的范围 例如 考虑 SO 用
  • span 和 label 标签之间的渲染差异是什么?

    所以我理解跨度和标签标签之间的功能差异 但是标签之间似乎也存在渲染差异 我似乎无法弄清楚它是什么 有谁知道span和label之间的渲染差异 谢谢 除了默认的渲染样式 标签有时在某些浏览器中为粗体 之外 重要的区别是标签应该链接到表单字段
  • 在 JavaFX 中使用数据库填充表视图

    我开始学习 javaFX 我需要用数据库中的数据填充表 我在网上阅读了很多代码 但没有找到我想要的东西 我读this http pastebin com S0Fg9jK8但我不知道如何实现最后一个功能 我阅读了一些其他代码来做到这一点 到目
  • Java:实现无符号 128 位整数

    首先我应该问 有谁知道 Java 的当前实现 128b UINT 吗 我需要一些东西来保持自然的基本价值观 即 一个巨大的柜台 我知道 BigIntegers 它很慢而且不可变 128b UINT 有意义 我正在考虑使用一对原始长整型来实现
  • Regex101 与 JavaScript String.match 分歧

    这个正则表达式 w g应该匹配每个单词字符between大括号 相反 我得到了不同的结果Regex101 JavaScript 引擎 https regex101 com r iD4uP6 1 and Chrome 控制台 Regex101
  • MongoEngine - 另一个用户已通过此数据库的身份验证。您必须先退出

    谁能解释一下为什么我收到错误另一个用户已通过此数据库的身份验证 您必须先退出当使用连接到 MongoDB 时Flask Mongo引擎 https github com MongoEngine flask mongoengine from
  • 在 Prolog 中断言数字谓词

    Prolog 中是否有可能断言代表数字的事实 例如 我想使用谓词distance 2并断言诸如distance town1 city2 1200 The distance town1 city2 1200term 是该术语的语法糖 dist
  • 如何引导 log4j 输出,以便不同的日志级别发送到不同的附加程序?

    是否可以将 debug 和 info 输出写入控制台 而 info 输出仅写入某个日志文件 例如 给定以下日志记录 LOG debug fileContent LOG info fileLength 对应的是什么log4j xml看起来像
  • MongoDB,如何对文档进行分组

    我的收藏有这样的数据 code 1 location 1 QUEEN STREET id 1 code 1 location 2 KING STREET id 2 code 2 location 1 QUEEN STREET id 3 co
  • 不请求Window.FEATURE_ACTION_BAR问题

    我正在尝试构建我的应用程序 但没有成功 我尝试了多种方法 但没有任何效果 例外的是 Caused by java lang IllegalStateException This Activity already has an action
  • 如何创建一个不可销毁的实例

    想象一下我有一堂课 TCantBeDestroyed 有人知道如何直接创建一种在两种情况下都不能被销毁的实例 不能被毁坏 免费 CantBeDestroyed Destroy 并且不能被演员摧毁 TObject CantBeDestroye
  • 根据时间序列数据帧的时间列更正日期列中的条目

    我有一个时间序列数据框 它包含三列 日期 时间和值 它看起来像这样 date time value 11 03 2020 1103 5 11 03 2020 0000 10 11 03 2020 0100 6 12 03 2020 0201
  • 层次聚类大稀疏距离矩阵 R

    我试图在非常大的距离上执行 fastclust 但遇到了问题 我有一个非常大的 csv 文件 大约 9100 万行 因此 for 循环在 R 中花费太长时间 其中包含关键字 大约 50 000 个唯一关键字 之间的相似性 当我读入 data