我有此数据,最后一列是1和-1。我想将每行与对应的最后一列元素(1或-1)相乘。
col1. col2. col3. col4
3 2 4 1
4 3 8 -1
2 3 4 1
3 4 1 -1
输出:
col1. col2. col3. col4
3 2 4 1
-4 -3 -8 -1
2 3 4 1
-3 -4 -1 -1
答案 0 :(得分:1)
这是一种方法。我们可以使用mutate_at
并指定要进行乘法的列,如下所示。
library(dplyr)
dat2 <- dat %>% mutate_at(vars(-col4), list(~ . * col4))
dat2
# col1. col2. col3. col4
# 1 3 2 4 1
# 2 -4 -3 -8 -1
# 3 2 3 4 1
# 4 -3 -4 -1 -1
数据
dat <- read.table(text = "col1. col2. col3. col4
3 2 4 1
4 3 8 -1
2 3 4 1
3 4 1 -1",
header = TRUE)