Unique 不再使用键作为默认值

2024-01-06

我主要在 Mac 中使用 Rstudio。最近我不得不开始使用Windows。但是,我发现 unique() 不根据键在 data.table 中提供唯一行。这是一个例子:

a=c(2,3,3,3,3,5,6,7)
b=c("a","a","f","g","a","d","t","l")
e=data.table(a,b)
setkey(e, a)
key(e) # this works fine
unique(e) 

unique() 仅删除整行(第 5 行)的重复项。完全相同的代码在我的 Mac 上运行良好。


那是因为两者都有不同的 data.table 版本。在 Mac 上,您拥有

如中所述?unique(在 data.table V1.9.8+ 中):

默认情况下使用所有列。最近对此进行了更改 与 data.frame 方法的一致性。在

这意味着,从现在开始,您需要明确指定by即使您已经设置了键,也可以使用变量,否则它将仅使用所有列。

对于您的具体示例,这有效

unique(e, by = "a")
#    a b
# 1: 2 a
# 2: 3 a
# 3: 5 d
# 4: 6 t
# 5: 7 l

或者正如@Frank 在评论中提到的,您也可以在by参数使用unique(a, by = key(a)).

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

Unique 不再使用键作为默认值 的相关文章

  • 美人鱼图:调整图表周围的空白

    我在用 Rstudio 编译的 Rmd 报告中使用了美人鱼图 在 HTML PDF 输出中 图表上方和下方有大量空白 请参见下面的示例 Header Text r library DiagrammeR mermaid graph TD cl
  • R data.table 连接不等式条件

    我想使用 data table 包根据多个不等式条件对数据进行子集化 data table 手册中的示例展示了如何使用字符变量执行此操作 但不显示数字不等式 我还了解了如何使用子集函数来执行此操作 但我真的很想利用 data table 二
  • 将所有分号替换为空格 pt2

    我尝试对 2000 多行关键字的列表运行文本分析 但它们的列出方式如下 战略 管理风格 组织 所以当我使用 tm 删除标点符号时 它就变成了 组织的战略管理风格 我认为这在某种程度上破坏了我常用术语的分析 我尝试过使用 vector lt
  • R闪亮:使用闪亮的JS从数据表中获取信息

    我想读出所有列名称以及它们在数据表中显示的顺序 由于不同的原因 我无法使用 stateSave 等选项 我对 JS 没有什么把握 但我确信用它可以完成 所以我需要你帮助我 我尝试过类似的代码片段 datatable data callbac
  • 在`rmarkdown`中,如何在句子中添加图标?

    In rmarkdown 如何在句子中添加图标 例如如下 如何添加markdown icon单词 Markdown 和 is 之间 有一个很好的 R 包 可以轻松下载 RMarkdown 文档并将图标添加到其中 icons https gi
  • 在 R 中使用逻辑 grep 抓取文本

    下午好 谢谢你帮我解答这个问题 我有兴趣抓取一组超过 5000 个 URL 的列表 我使用 lapply 和 readLines 使用下面的示例代码提取这些网页的文本 multipleURL lt c http dailymed nlm n
  • 函数“[<-”将_替换_一个元素,但不会追加_元素_

    我在使用时注意到以下几点 lt 我成功于替换元素但不位于追加向量的一个元素 例子 VarX lt integer VarX 1 lt 11 lt VarX 2 22 VarX 1 11 Expected the value of VarX
  • 在 Lavaan 生长曲线模型中提取个体轨迹

    我已经使用 R 的 Lavaan 包中的 Growth 函数成功地对一项研究的纵向数据进行了建模 我找不到任何关于如何提取每个参与者的预测轨迹的记录 我只能找到整个组的预测轨迹 在摘要输出的 拦截 部分下给出 使用 lavPredict m
  • R Leaflet Legend:colorBin-删除中断之间的小数

    我正在使用 Leaflet 库在 R 中创建交互式 HTML 地图 传说中采用的是colorBin用于创建将数据分为 6 个类别的方法 使用min values and max values 我已经定义了美国社区调查收入数据的特定范围可能落
  • 如果条目出现次数少于 x 则删除数据框中的行

    我有以下数据框 称之为 df 它是由三个向量组成的数据框 姓名 年龄 和 邮政编码 df Name Age ZipCode 1 Joe 16 60559 2 Jim 20 60637 3 Bob 64 94127 4 Joe 23 9412
  • R 多元一步预测和准确性

    我想使用 R 来比较两个预测模型的 RMSE 均方根误差 第一个模型使用 1966 年至 2000 年的估计值来预测 2001 年 然后使用 1966 年至 2001 年的估计值来预测 2002 年 依此类推直至 2015 年 第二个模型使
  • 如果您编辑/更新该特定对象,laravel 唯一名称表示已被占用

    我有一个投资组合表 我没有在 url 中显示投资组合的 id 而是使用 getRouteKeyName 显示投资组合的名称 所以我希望该名称是唯一的 否则如果它已经存在 它可能会显示错误的投资组合 我将名称字段的规则设置为唯一 如果我现在编
  • 如何设置 jQuery DataTables 中特定列的最大宽度

    如何设置一个特定列的最大宽度 所有其他列应自动调整大小 我已经尝试了下面的代码 但它不起作用 因为我认为没有 最大宽度 属性 table dataTable paging false info false searching false c
  • C# 数据表来保存表格(无限嵌套)

    我相对较新C 但来自C C 背景 我需要一个类似于的数据类型 类 DataTable 但允许存储的列保存 简单 类型 int float boolean string 以及相同类型的数据 以便一个列可以保存另一个表 该表也具有存储表等的列
  • 手动设置scale_fill_distiller()的比例

    我正在尝试制作一系列图表进行比较 举例来说 我想使用iris数据集来制作这样的图 其中我已过滤以仅查看 setosa 物种 library ggplot2 library dplyr iris gt filter Species setos
  • 如何自动启动我的 ec2 实例、运行命令然后将其关闭?

    我想每周对 redshift postgres 数据库中的数据运行一次机器学习模型 我使用以下命令将 R 脚本设置为休息 apiplumbr然后我将其设置为一项任务来管理pm2 我有它 所以任务会在ec2实例启动然后继续运行 要让 R 脚本
  • 合并数据框而不重复行

    我想合并两个数据框 但如果有多个匹配项 则不想重复行 相反 我想总结一下那天的观察结果 来自 合并 提取两个数据框中与指定列匹配的行并将其连接在一起 如果有多个匹配项 则所有可能的匹配项各贡献一行 这是一些示例代码 days lt as d
  • WPF ListBox - 如何从数据表中放入值?

    I have ListBox并希望将值放入此列表框中DataTable listBoxVisibleFields DataContext SelectedFields Where SelectedFields is a DataTable充
  • RStudio 如何确定控制台宽度,为什么它似乎总是出错?

    我刚刚发现wid lt options width在 RStudio 中 它似乎是我日常控制台使用中令人烦恼的根源 或者更确切地说 更接近根源 我应该先说一下 我目前使用的是 R 3 2 2 RStudio 0 99 491 Linux M
  • 如何绘制堆积比例图?

    我有一个数据框 x lt data frame id letters 1 3 val0 1 3 val1 4 6 val2 7 9 id val0 val1 val2 1 a 1 4 7 2 b 2 5 8 3 c 3 6 9 我想绘制一个

随机推荐