我想知道是否可以在一个语句中重命名新生成的列
bc <- csv_data[!grepl("post|pads|m|dot|d|cruk|c2", StockCode), sum(as.numeric(gsub(",", ".", UnitPrice))*Quantity),by= c("Country", "CustomerID")]
我实际上只是做了一些计算,结果到目前为止还不错。唯一的小错误是新生成的列被称为V1,我想在同一语句中重命名它们。在SQL中我只使用AS,但在R中,当我使用例如。 NewCol:= sum(as.numeric(gsub(&#34;,&#34;,&#34;。&#34;,UnitPrice))* Quantity)源表被修改。
知道如何存档吗?
由于 斯蒂芬
答案 0 :(得分:1)
使用.()
运算符并指定一个新变量new_var_name
。
当然,我假设您正在使用data.table包
library(data.table)
setDT(csv_data)
bc <- csv_data[!grepl("post|pads|m|dot|d|cruk|c2", StockCode),
.(new_var_name = sum(as.numeric(gsub(",", ".", UnitPrice))*Quantity)),
by= c("Country", "CustomerID")]