首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用dplyr mutate将列名传递给函数,但不使用折旧的mutate_

在使用dplyr的mutate函数时,可以通过将列名传递给函数来对列进行操作,而不使用已经废弃的mutate_函数。

mutate函数是dplyr包中的一个功能强大的函数,用于在数据框中创建新的变量或修改现有变量。它可以接受多个参数,其中一个参数可以是一个函数,用于对指定的列进行操作。

要将列名传递给函数,可以使用dplyr中的{{}}符号。这个符号允许将列名作为参数传递给函数,而不需要使用字符串或其他方式进行转换。

下面是一个示例,演示如何使用dplyr的mutate函数将列名传递给函数:

代码语言:txt
复制
library(dplyr)

# 创建一个示例数据框
df <- data.frame(
  x = c(1, 2, 3),
  y = c(4, 5, 6)
)

# 定义一个函数,将指定列的值加倍
double_column <- function(data, column_name) {
  data[[column_name]] <- data[[column_name]] * 2
  data
}

# 使用mutate将列名传递给函数
df <- df %>% mutate({{ "x" }} := double_column(., {{ "x" }}))

# 打印结果
print(df)

在上面的示例中,我们首先创建了一个示例数据框df,其中包含两列x和y。然后,我们定义了一个函数double_column,该函数接受数据框和列名作为参数,并将指定列的值加倍。最后,我们使用mutate函数将列名"x"传递给double_column函数,并将结果赋值给df的新列"x"。

这样,我们就成功地使用dplyr的mutate函数将列名传递给函数,而不使用已经废弃的mutate_函数。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云函数计算(SCF):https://cloud.tencent.com/product/scf
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云人工智能(AI):https://cloud.tencent.com/product/ai
  • 腾讯云物联网(IoT):https://cloud.tencent.com/product/iot
  • 腾讯云移动开发(Mobile):https://cloud.tencent.com/product/mobile
  • 腾讯云区块链(BCS):https://cloud.tencent.com/product/bcs
  • 腾讯云元宇宙(Metaverse):https://cloud.tencent.com/product/metaverse

请注意,以上链接仅供参考,具体的产品选择应根据实际需求和情况进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

R tips:使用!!来增加dplyr可操作性

这种易用性是有代价,假如想要对分析工作稍微增加一些编程属性时,就会发现dplyr异常情况,比如分组变量赋值给一个变量,使用变量来进行分组: ### 分组变量group_var无法完成工作 group_var...辅助dplyr完成编程工作 上面的例子中,之所以group_var不起作用,是因为dplyr直接group_var当做变量名,然后去mtcars中寻找名字叫做group_var列,这肯定是会报错。...,首先map逐一分组变量group_v元素传递给mean_manual函数,传入mean_manual时,先使用!!...在mutate中完成新变量名编程 假如想要在mutate使用变量对新变量进行设置,其结果并不会如愿,比如,新变量名var_name赋值为“gear_new",使用var_name进行mutate操作...PS:对于ggplot2而言也是一样,它aes也是不能直接使用变量传入列名,如果想要使用赋值了字符串变量来值的话,可以如上述操作。 但是也有更简单办法,它是?

2.3K31

生信入门day6分野—R包使用

镜像设置options函数就是设置R运行过程中一些选项设置options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))...("包")BiocManager::install("包“)包加载以下两个都可以使用library(包)require(包)实例options("repos" = c(CRAN="https://mirrors.tuna.tsinghua.edu.cn...)dplyr 五个基本函数mutate()新增列mutate(test,new=Sepl.Lengh*Sepal.Width)select()按列筛选按列号筛选select(test,1)按列名筛选select...(test,Sepal.Length)筛选行filter()按某1列或者某几列对整个表格进行排序arrange()汇总sunnarise()dplyr实用技能管道操作%>% 该命令可以用ctrl+shift...+M 可以前一行输出结果传递给后一行作为输入统计某列值count()dplyr处理关系数据inner_join内连取交集left_jion左连full_join全连bind_rows()两个表格列数相同

26640

生信学习小组day6--大姚

iris简化版 test <- iris[c(1:2,51:52,101:102),] 二、dplyr五个基础函数 1.mutate(),新增列 mutate(test, new = Sepal.Length...* Sepal.Width) 上述一串代码意思是新增一列列名为“new”、数值是Sepal.Length * Sepal.Width列 2.select(),按列筛选 select(test,1)...##筛出第一列 select(test,c(1,5)) ##同时筛出第一和第五列 select(test,Sepal.Length)## 筛出以列名为Sepal.Length一列 select(test...), sd(Sepal.Length)) 三、dplyr两个实用技能 1:管道操作 %>% 可以直接把数据传递给下一个函数调用或表达式 快捷键(cmd/ctr + shift + M) group_by...中数据直接传递给group_by函数使用,也可以分组后species数据传递给summarise函数使用 test %>% group_by(Species) %>% summarise

80100

UseGalaxy.cn生信云|零代码使用Tiverse优雅地处理数据集

Dplyr Join two tables join 函数用于根据指定两个数据框连接起来,可以根据共同变量数据框进行合并,支持多种连接操作,如内连接、左连接、右连接和外连接等。...Dplyr Mutate create, modify, and delete columns mutate 函数用于添加新变量或修改现有变量,能够基于已有数据创建新变量列,支持对数据框进行实时变量操作和修改...Dplyr Rename columns rename 函数用于重命名数据框中变量名,能够快速修改变量名称,使得数据列名更符合用户需求和习惯。...Dplyr Slice select rows by position slice 函数用于按行数进行切片,能够从数据框中提取特定行,支持根据行数或行号选择需要行,也支持使用负数表示从末尾开始计算行数...Tidyr Pivot Wider from long pivot_wider 函数用于长格式数据转换为宽格式数据,能够数据框中一列分成多个列,根据指定列名进行展开,使得数据以更直观宽格式形式呈现

15720

「R」dplyr 列式计算

❝在近期使用dplyr」 进行多列选择性操作,如 mutate_at() 时,发现文档提示一系列dplyr函数变体已经过期,看来后续要退休了,使用 across() 是它们统一替代品,所以最近抽时间针对性学习和翻译下...然后我们展示一些其他动词使用。...如果你想要通过函数转换列名,可以使用 rename_with()。..._if, _at, _all 「dplyr」 以前版本允许以不同方式函数应用到多个列:使用带有_if、_at和_all后缀函数。这些功能解决了迫切需求而被许多人使用,但现在被取代了。...这使 「dplyr」 更容易使用(因为需要记住函数更少),也使我们更容易实现新动词(因为我们只需要实现一个函数,而不是四个)。

2.4K10

两个神奇R包介绍,外加实用小抄

3.函数后面跟括号,括号里第一个参数是都数据框名 4.字符串要加双引号,行名和列名不用加,其他单元格(姑且这么叫了)里出现字符串要加。...新建一个数据框并赋值给bioplanet这个变量(赋值符号<-还记得嘛)括号里是“列名”=列值,这里列名要加双引号。这里涉及几个给列填充数值函数有 rep,重复,括号中填要重复字符和重复次数。...这是一种组织表格数据方式,提供了一种能够跨包使用统一数据格式。 有多统一? 每个变量(variable)占一列,每个情况(case,姑且这么翻译)和观测值(observation)占一行。...complete(填空系列) 我用示例数据是 ? 其中有三个空值,我要填充上ddd relate ? 1532868462756.png 试了多次,成功了但不知道咋回事。...filter(tidy2,Expression>1) %>% arrange(Expression) #%>%是管道操作符,第一个函数结果输出为第二个结果操作文件,可以少些重复 (这开发者符合我审美啊

2.5K40

表达矩阵转换为数据框画图

主要介绍使用pivot_longer进行长宽数据转换,这两个函数都是来自于tidyr包 问题背景 现在有一个表达矩阵,要画箱线图 但是,上面表格不满足向ggplot2画箱线图函数传递参数需求,要变换成数据框把所有数字变成一列传递给...首先行列转置 把原来行名变成第一列 把原来列名变成第二列 就变成数据框形式了。也就是把宽数据变成长数据。 代码如何实现?...) dat = t(exp) %>% # 先转置 as.data.frame() %>% # 变成数据框 rownames_to_column() %>% # 行名变成一列 mutate(group...列名中含有数值型数据,可以names_prefix/names_transform提取,可以用readr包中parse_number()函数直接解析 列名中含有多个变量可以用正则表达式拆分成多列 一行有多个观测...列名有重复 详见使用pivot_longer和pivot_wider进行长宽数据转换-CSDN博客

8810

R 数据整理(七:使用tidyr和dplyr处理数据框 2.0)

dplyr distinct() 函数可以对数据框指定若干变 量,然后筛选出所有不同值,每组不同值仅保留一行。...按列号 select(test,1) select(test,c(1,5)) 按列名 如果想要用向量来存放希望筛选列名,需要使用函数 one_of 来存放该向量。...对于即将合并新列,需要使用引号;但对于想要合并多个列名,可以不用使用引号。sep 参数设定多列合并后不同数据分隔使用分割符。...R 数据整理(六:根据分类新增列种种方法 1.0) 其他函数 slice dplyr函数 slice(.data, ...) 可以用来选择指定序号行子集,正序号表示保留,负序号表示排除。...nest 和 unnest 函数,可以子数据框保存在 tibble 中,可以保存在 tibble 中子数据框合并为一个大数据 框。

10.8K30

生信星球Day4 学习R包

认识dplyr函数、功能等---安装和加载R包镜像设置方法一:手动设置,Tools→Packages→Primary CRAN repository方法二:自动运行教程来自:https://www.jianshu.com.../p/861224f4251aoptions() 设置R运行过程中一些选项设置options()$repos 查看使用install.packages安装时默认镜像options()$BioC_mirror...查看使用bioconductor默认镜像R最重要两个配置文件: 一是.Renviron,能够设置R环境变量; 二是.Rprofile,如果启动时找到这个文件,那么就替我们先运行一遍(这个过程就是在启动...(dplyr)dplyr五个基础函数mutate() 新增列,(x,列名=相关数据)select() 筛选列,(x,列号或列名)filter() 筛选行,(x,列名==想要行)需要逻辑判断arrange...()可从大到小summarise() 汇总,配合group_by()分组,可以mean()求平均值,sd()求标准差test <- iris[c(1:2,51:52,101:102),]t1 <- mutate

19740

tidyverse:R语言中相当于python中pandas+matplotlib存在

,是弱类型,同时与data.frame有相同语法,使用起来更方便。...——左侧值应用到右侧数据data位置 管道函数在tidyverse中,管道符号是数据整理主力,可以把许多功能连在一起,而且简洁好看,比起R基本代码更加容易阅读!...:数据整理 dplyr下述五个函数用法 4.1 筛选: filter 4.2 排列: arrange 4.3 选择: select 4.4 变形: mutate 4.5 汇总: summarise...() #取行 #取1:dim(mtcars_df)[1]行 mutate(mtcars_df, NO = 1:dim(mtcars_df)[1]) #数值重定义和赋值 #Ozone列取负数赋值给new...group_by()添加了分组信息后,mutate(),arrange() 和 summarise() 函数会自动对这些 tbl 类数据执行分组操作。

4K10
领券