如何选择所有列以及其他表达式

迪恩·麦格雷戈

假设我从

mtcarsDT<-data.table(mtcars)

我想要相当于

mtcarsDT[,.(mpg, cyl,  disp,  hp, drat,    wt,  qsec, vs, am, gear, carb, newcol=myFunc())]

但我只想输入一些简短的内容,mtcarsDT[,.(.SD, newcol=myFunc())但语法当然不起作用。

坦率

我通常的方法是

c(.SD, .(newcol = f())

将函数应用于多个列时,例如,这种方法也很有用

c(
  g = lapply(.SD, g),
  f = lapply(.SD, f),
  .(N = .N)
)

此语法有效是因为

  • 返回值应该是(列的)列表;
  • .SD 已经是清单;
  • c()可用于合并列表;
  • .()list()为了方便内部提供的别名DT[...]

细节?data.table

只要j返回a list,列表中的每个元素都会成为result中的一列data.table这是默认的增强模式。

在第一个插图中,类似的行出现了两次vignette("datatable-intro"),但不幸的是,没有像OP这样的示例。(也许应该添加一个?)

我并不是真的想要创建一列,我只想查看现有列旁边的表达式结果,而不必保存该列然后在以后删除它

对于此用例,最佳解决方案可能是进行浅表复制。该功能尚不可用

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

多行之间的python正则表达式匹配以及其他所有匹配

如何匹配除正则表达式之外的其他所有内容?

使用LINQ从集合中选择所有字段以及其他集合中的相关项

如何在不显示所有结果的情况下为数学运算以及其他元素选择最大值

需要与从3.10.1.0开始的每个软件版本以及所有其他版本编号匹配的Perl正则表达式

如何使用正则表达式保留 MAC 地址并删除字符串中的所有其他内容?

我如何拆分正则表达式及其后的所有内容

如何使用正则表达式删除单词及其后的所有内容

根据其他列在 where 子句中使用 case 表达式选择条件

正则表达式允许某个文件,但排除所有其他文件

正则表达式:选择在其他特定单词(标记)之前不包含某些特定单词的所有行

Angular 2+:如何从HTML代码中删除所有角度属性和注释(以及其他角度工件)?

如何编写所有架构绑定视图的脚本(以及其他防止表截断的对象,例如“过滤索引”)?

如何在MongoDB中将属性添加到集合中的所有文档以及其他属性的相同数据?

如何导出我构建的 AEM 站点以及其他人的所有内容和资产?

如何选择一个具有其他列最大值的列,以及另一个表中该列的所有对应行?

MySQL选择DISTINCT的一列,以及其他对应的列

其他带有正则表达式的文件

正则表达式:选择特定字符和其他子字符串之前的所有内容,或者如果子字符串和字符均不存在,则选择所有内容

正则表达式-如何在没有其他模式之前捕获模式?

在Javascript中,如果也有其他文本,如何评估表达式

此lambda表达式有什么作用,以及如何

Powershell正则表达式与“其他”正则表达式有什么不同?

如何使用正则表达式提取器或任何其他提取器(Xpath,Beanshell等)从下面给出的Json中提取所有Id值

Sed - 如何匹配正则表达式组并使用它来替换同一行中的所有其他匹配项?

如何使用正则表达式仅查找我的网站的 href 标签而不是所有其他 href 标签?

Java Lambda表达式的其他参数-如何?

正则表达式引擎在没有其他通过的情况下不匹配所有匹配项

正则表达式匹配除具有特定属性的元素以外的所有其他元素