小编var*_*man的帖子

数据表中"j"中新添加的列应该在范围内可用

我有这个代码:

dat<-dat[,list(colA,colB
                     ,RelativeIncome=Income/.SD[Nation=="America",Income]
                     ,RelativeIncomeLog2=log2(Income)-log2(.SD[Nation=="America",Income])) #Read 1)
               ,by=list(Name,Nation)]
Run Code Online (Sandbox Code Playgroud)

1)我想说"RelativeIncomeLog2=log2(RelativeIncome)",但是 "RelativeIncome"j范围内是不可用的?

2)我尝试了以下代码(根据data.table FAQ).现在"RelativeIncome"可用,但它不添加列:

     dat<-dat[,{colA;colB;RelativeIncome=Income/.SD[Nation=="America",Income];
               ,RelativeIncomeLog2=log2(RelativeIncome)])) 
               ,by=list(Name,Nation)]
Run Code Online (Sandbox Code Playgroud)

r data.table

5
推荐指数
1
解决办法
276
查看次数

标签 统计

data.table ×1

r ×1