聚合数据表,列名称为字符串

我想聚合R数据表的列,但提供列名作为字符串.是否可以使用数据表功能来实现?

例如,我想重现:

foo[,newcol:=mean(oldcol),by=id]

但是使用字符串作为列名,例如:

foo[,"newcol":=mean("oldcol"),by="id"]

我试过了:

foo[,"newcol":=mean(foo[["oldcol"]]),by="id"]

这是有效的,但它很慢,因为它没有充分利用数据表.

谢谢!

解决方法

使用get:

foo[,"newcol":=mean(get("oldcol")),by="id"]

但我不确定你会不会使用get获得相同的性能.

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...