首页 > 解决方案 > 变异里面的公式和使用~

问题描述

假设我有一个数据框 df

df = data.frame(col1 = c(1:5),col2 = c(2:6))

我想通过向每个值添加 10 来转换 col1。

我找到了几种方法来做到这一点,例如使用recode函数

df %>% mutate(col1 = recode(col1, "1" = "11", "2"="12", "3"="13", "4"="14", "5"="15"))

或使用mutate(across())功能。 df %>% mutate(across(col1, ~.x +10)

所以这是我的问题:

  1. x 和 的含义是什么。为了 ?我想这意味着 col1 的每一行取 x 并添加 10 ?

  2. 有什么方法可以更简单地进行这种转换?

谢谢

标签: rdplyr

解决方案


在这种情况下,您不需要,across因为它仅用于一列。

library(dplyr)

df %>% mutate(col1 = col1 + 10)

#  col1 col2
#1   11    2
#2   12    3
#3   13    4
#4   14    5
#5   15    6

~有关和的信息,请.参见purrr::map 中第一个波浪号的含义在 map() 中,何时需要使用波浪号和句点。(〜和。)波浪线和R中的点


推荐阅读