我正在运行一个循环,其中基于一些数据创建两个数字列。这两个列名称是由它们所在的循环部分生成的。因此,例如,前两列是df $ loop1.1和df $ loop1.2,然后在随后的循环中它们将是df $ loop2。 1和df $ loop2.2
我需要创建基于这两个列的第三列,如下所示:
df[, divisioncol := loop1.1 / loop1.2]
但是,我遇到了错误
non-numeric argument to binary operator
有什么建议吗?
已解决:
df[, divisioncol := get(loop1.1)/get(loop2.2)]
答案 0 :(得分:0)
您的错误是由二进制运算符的非数字参数引起的。这里的二进制运算符是函数/
,即除法。这意味着loop1.1
或loop1.2
包含一个非数字值。通过输入typeof(df$loop1.1)
和typeof(df$loop1.2)