如何简单地将数据帧的两列相乘?

时间:2015-08-05 06:25:21

标签: r dataframe multiplication

我的输入是

a<-c(1,2,3,4)
b<-c(1,2,4,8)
df<-data.frame(cbind(a,b))

我的输出应该是

a<-c(1,2,3,4)
b<-c(1,2,4,8)
d<-c(1,4,12,32)
df<-data.frame(cbind(a,b,c))

我可以简单地说df $ a * df $ b 请帮忙。我遇到了重复问题。它们以矩阵形式增加,并且还存在不同长度列的问题。

2 个答案:

答案 0 :(得分:7)

在基地R:

df$c <- df$a * df$b

df$c <- with(df, a * b)

在Dplyr:

df <- df %>% mutate(c = a * b)

答案 1 :(得分:1)

您必须将df$a * df$b分配给数据框中的新列。

df$c<-df$a*df$b

这会添加一个新列(df$c),其中包含列a乘以列b