在r中的数据帧中乘以/除以列

时间:2015-04-17 19:26:17

标签: r input multiplying

我有一个数据框,我想在其中添加一个新列,它是另外两列的乘积,除以100。

我试图使用的命令是:

fulldata$Conpolls <- fulldata$Conprct/100 * fulldata$Total.seats 

我收到的:

Error: unexpected input in "full.data$Conpolls <- fulldata$Conprct /100 * fulldata$Total.seats"

当我尝试按以下两个步骤分解过程时:

fulldata$Conpolls <- fulldata$Conprct * fulldata$Total.seats 

我收到错误:

non-numeric argument to binary operator. 

有经验的用户提供的任何提示或帮助都非常感谢!

2 个答案:

答案 0 :(得分:1)

fulldata$Conpolls <- (fulldata$Conprct * fulldata$Total.seats)/100

这不回答问题,但这应该是编写此类算术运算的正确语法。是的,如评论中所提到的,你应该检查你正在使用的对象的类来找出错误的

答案 1 :(得分:1)

如果所有列都是数值,那么Veerendra Gadekar的答案应该是正确的。

如果不保证您进行操作的列是数字,则可以使用as.numeric()将它们转换为数值。它应该是这样的:

fulldata$Conpolls <- (as.numeric(fulldata$Conprct) * as.numeric(fulldata$Total.seats))/100