r - 如何将每一行与相应列中的缩放器相乘?
问题描述
我有这个数据,最后一列是 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
解决方案
这是一种方法。我们可以使用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)
推荐阅读
- html - 即使高度为 100%,高度也不会增长到最大高度
- django - DRF MultiPartParser 将值作为列表返回
- firebase - Google Maps Flutter:如何从 Firebase RTDB 放置多个标记
- postgresql - upsert 导致序列跳转
- javascript - 使用 display 属性在手风琴内显示/隐藏 div 会导致 div 永久显示
- r - 在其他数据框中搜索列值并通过属性值更改它
- javascript - 如何为所有属性都是具有不同参数的函数的对象创建泛型类型或接口?
- javascript - 函数在检查元素中返回空白数组,其中包含不可访问的数据
- tensorflow - 'ValueError:logits 和标签必须具有相同的形状 ((None, 2) vs (None, 1))'
- database - 在 Applescript/Automator 中将 .csv 表转换为数据库