0
我有以下数据表R:在R数据表中的特定位置插入一列
user_id user_system_days event total_pics
[1,] 21196680 0 0 124
[2,] 21197699 0 0 4
[3,] 21197861 0 0 14
[4,] 21198820 1 0 21
[5,] 21199601 0 0 3
[6,] 21203847 0 0 1
基于列的事件我想插入一列数据表中的值,我的方法是通过编写一个函数,并使用该函数返回一个值。
opposite_event <- function(x) {
y <- 1
if (x == 1)
y <- 0
return (y)
}
我打电话的功能如下:
dt[,op_event:=opposite_event(dt$event)]
这实际上增加了列,但价值是错误的:
user_id user_system_days event total_pics op_event
[1,] 21196680 0 0 124 0
[2,] 21197699 0 0 4 0
[3,] 21197861 0 0 14 0
[4,] 21198820 1 0 21 0
[5,] 21199601 0 0 3 0
[6,] 21203847 0 0 1 0
根据我的职能,如果dt$event
的价值1
然后返回值应为0
,如果dt$event
为0,则返回值应为1
另外我不确定如何将该列插入到特定位置,例如事件列之后。
应该工作,例如,如果事件== 1,则op_event的值为1,如果事件== 0,那么op_event应该是1 –
@空假设是。 –
@SeñorO什么是重新安排列顺序的最佳方式,例如在事件列后获取列op_event? –