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

如何在dplyr管道中将变量名传递给有条件的sum?

在dplyr管道中,可以使用tidyverse中的quo()和!!(嘎嘎)运算符来传递变量名给有条件的sum。

首先,使用quo()函数将变量名封装为一个引用对象,然后使用!!(嘎嘎)运算符在sum中解引用该引用对象。以下是具体的步骤:

  1. 使用quo()函数将变量名封装为引用对象。例如,假设要将变量名传递给有条件的sum的变量是"column_name",则可以使用以下代码: col_name <- quo(column_name)
  2. 在sum中使用!!(嘎嘎)运算符解引用该引用对象。将sum()函数与!!(嘎嘎)运算符和引用对象相结合使用。例如,假设要在管道中计算某个条件下"column_name"的sum,可以使用以下代码: summarise(df, sum_var = sum(!!col_name))

这样,变量"column_name"的值将作为参数传递给sum函数,并且会在有条件的sum中使用。

请注意,这里的dplyr和tidyverse是R语言中非常常用的数据处理和数据分析的包,它们提供了一系列强大的函数和工具,使数据处理更加方便和可读。

至于腾讯云相关产品和产品介绍链接地址,由于题目要求不提及特定品牌商,所以无法给出具体链接。但腾讯云提供了很多云计算相关的服务和产品,可以在腾讯云的官方网站上查看相关信息。

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

相关·内容

R语言中这些你想知道含义又不知道怎么查特殊符号

(): 通常用于函数调用,例如ggplot(data); 或者调整优先级,1:3+1返回2 3 4,而1:(3+1)返回1 2 3 4。 []: 用于索引向量、列表、数据框。...::和:::: 通常是dplyr::filter(包名字::函数名)方式显示制定调用某个包某个函数。别人运行好好R代码,到我这怎么就冲突了?....: 通常用于定义函数时接收额外参数,传给内部调用其它函数。 =: 单个等号,一般是赋值和参 ==: 判断是否相等 !=: 判断是否不等 !...` : 反引号` ` 在R中用于不规则变量名。 `?|: 可以查看|`函数帮助,这也是不规则变量名一个体现。...yvariable_en)) %>%: 管道符,上一个函数输出传递给下一个函数作为输入。来源于magrittr包,同类型还有%T>%,%$% 和 %%,具体查阅相应帮助文档。

1.3K20

R语言数据处理:飞机航行距离与到达延误时间有什么关系??

PS.这里穿插一个好用工具,“管道”,即通过使用操作符把数据集名作为开头, 然后依次对此数据进行多步操作。...通过管道连接方式,让数据或表达式传递更高效,使用向右操作符%>%,可以直接把数据传递给下一个函数调用或表达式。...(%>%是最常用一个操作符,就是把左侧准备数据或表达式,传递给右侧函数调用或表达式进行运行,可以连续操作就像一个链条一样。)...拿上述代码进行举例,在没用管道之前,代码是这样: by_dest <- group_by(myFlights, destination)#按目的地分组 delay_sum 20)#剔除噪音数据 delay_sum#显示列表 用了管道“%>%”,代码是这样: delay_sum % #将右侧航行数据赋值给左侧

3K40
  • R︱高效数据操作——data.table包(实战心得、dplyr对比、key灵活用法、数据合并)

    (ID)] 三种数据筛选方式,dplyr包、base基础包、data.table包。其中,dplyr是select语句,data.table中要注意.()表达方式。...(sum(Ozone,na.rm=T),sd(Ozone,na.rm=T))] #求和、求标准差操作 DT[,list(MySum=sum(v),...%>%功能是用于实现将一个函数输出传递给下一个函数第一个参数。注意这里,传递给下一个函数第一个参数,然后就不用写第一个参数了。在dplyr分组求和过程中,还是挺有用。...2、on=""方式 DT[X, on="x"] 这里on指的是DT变量中变量名称,X还是按照key,如果没设置就会默认第一行为key。...3、.SD和.SDcols > DT[, lapply(.SD,sum), by=V2, + .SDcols = c("V3","V4")] V2 V3 V4 1: A -1.2727

    8.2K43

    C语言详解(二) - 函数

    函数种类 2.1 库函数 C语言中包含了许多种类库函数,把一些实现特定功能代码(:输入输出、字符串比较、数学中一些函数实现、申请内存等)封装成一个个函数,方便我们使用。...,变量数据类型 变量名2){ 函数功能实部分 } 一个具体函数定义: //实现两个整数相加并以整型返回结果 int Add_sum(int a, int b){ int ret...函数声明时函数返回类型、函数名、函数形参数据类型是必需,而形参中变量名是可有可无。...函数调用 值调用 址调用 5.1 值调用 实参值传递给非指针形参,由于实参与形参具有不同储存空间,形参也不知道实参地址,所以形参无法通过实参地址影响实参值。...5.2 址调用 址调用实际上也是值调用,只不过有些特殊,传递是实参地址值。

    85510

    awk高级玩法

    以下是传统awk 程序配置: pattern {action} 模式匹配,则执行操作 pattern {action} 模式匹配,则打印记录 虽然,模式多半是数字或字符串表达式,不过awk 以保留字...因此,变量名称要匹配正则表达式[A-Za-z-][A-Za-z_0-9]* 。变量名称在实际上并没有长度限制。awk 变量名称是与大小写有关:foo, Fo 。与FOO 是完全不同三个名称。...这里是与getline 搭配使用,如下: "date" I getline now close("date") print "The current time is".now 接下来说明是: 如何在循环里使用命令管道...换句话说,标量为值(by vaule ) ,而数组则为引用(by reference): 这对C 语言也是这样。...插人字段分隔字符为普通字符串,而非正则表达式,所以针对传递给split() 一般正则表达式,join() 不会重建精确原始字符串。 17.8.

    1.4K20

    Python 3 函数

    python 函数参数传递: 不可变类型:类似 c++ 值传递, 整数、字符串、元组。fun(a),传递只是a值,没有影响a对象本身。... fun(la),则是将 la 真正传过去,修改后fun外部la也会受影响 python 中一切都是对象,严格意义我们不能说值传递还是引用传递,我们应该说不可变对象和可变对象。...变量作用域 ---- Python 中,程序变量并不是在哪个位置都可以访问,访问权限决定于这个变量是在哪里赋值。 变量作用域决定了在哪一部分程序可以访问哪个特定变量名称。...调用函数时,所有在函数内声明变量名称都将被加入到作用域中。...实例中有 int 对象 89,指向它变量是 b,在传递给 cme 函数时,按方式复制了变量 b,a 和 b 都指向了同一个 Int 对象,在 a=100 时,则新生成一个 int 值对象 100

    1.2K30

    R语言进阶笔记3 | dplyr常用函数介绍

    dplyr介绍 管道符%/% 管道符在Rstudio中快捷键是Ctrl + Shift + M,打印出来是%/%,它可以将前面的结果传递到后面作为参数 ?...比如 sum(c(1:10))可以写为c(1:10) %/% sum(),即%/%将c(1:10)作为参数传递给sum()函数。...这里使用learnasreml包中数据shaw.oats作为演示,如果没有安装这个包,可以运行下面代码进行安装: install.packages("agridat") 下面看一下数据预览和结构:...c()定义为一个向量,然后还要加引号,没有mutate简洁,R中base函数操作: > dat[,c("env","year","yield")] %>% head env year yield...merge函数,dplyr中是join函数,包括: left_join # 以左边为参考合并 right_join # 以右边为参考合并 inner_join # 以交集合并 full_join #

    1.3K10

    来增加dplyr可操作性

    dplyr包在数据变换方面非常好用,它有很多易用性体现:比如书写数据内变量名时不需要引号包裹,也不需要绝对引用,而这在多数baseR函数中都不是这样,比如: library(tidyverse)...辅助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

    R语言入门(一)之数据处理

    (例如向量c(1,2,3)),times为对象中每个元素重复次数(times=c(9,7,3)就是将x向量1重复9次,2重复7次,3重复3次) #rep(x,times)重复x,times次;使用...table(a1$chemical) table(a1$chemical, useNA = "ifany") #求因子出现频数;table()函数默认忽略缺失值(NA),要在频数统计中将NA视为一个有效类别...);variable.name:为新列变量取名; value.name:对应值所在变量名 ?...") dcast(b1, Fruits ~ store, fun.aggregate = mean, margins = T) #左边为行标签,右边为列标签;fun.aggregate:聚集函数,...mean、median、sum;示例 为对行和列进行求平均数;margins=T,加上后显示平均数这一列和行,不加不显示 d2.1 = reshape(data = d1, idvar = c("Fruits

    10.1K40

    MongoDB聚合操作

    在本文中,我们将介绍MongoDB聚合操作,并提供一些示例代码来说明如何在MongoDB中使用它们。聚合管道MongoDB聚合操作使用聚合管道来处理数据。...聚合管道由多个阶段组成,每个阶段执行不同操作,并将其结果传递给下一个阶段。聚合管道最后一个阶段输出最终结果。下面是一些常用聚合管道阶段:$match:用于筛选文档。..., total: { $sum: "$amount" } } }, { $sort: { total: -1 } }, { $limit: 5 }])上述代码中,我们首先使用$match阶段筛选出status...聚合函数除了聚合管道,MongoDB还提供了一些聚合函数,可以用于统计、计算和操作文档数据。下面是一些常用聚合函数:$sum:计算指定字段总和。$avg:计算指定字段平均值。...下面是一个使用聚合函数示例代码:db.collection.aggregate([ { $group: { _id: "$status", total: { $sum: "$amount" } }

    1.3K10

    何在 TypeScript 中使用函数

    除了为函数提供额外文档外,类型信息还可以减少代码中出现错误机会,因为将无效数据类型传递给类型安全函数风险较低。...要在 macOS 或 Ubuntu 18.04 上安装,请按照如何在 macOS 上安装 Node.js 和创建本地开发环境或如何在 Ubuntu 18.04 上安装 Node.js 使用 PPA 安装部分中步骤进行操作...在本节中,我们将学习如何在 TypeScript 中将函数参数标记为可选。 要将函数参数转换为可选参数,请添加 ? 参数名称后面的修饰符。...在 JavaScript 中,这通常是通过有一个参数来完成,该参数可以采用不同类型值,字符串或数字。将多个实现设置为相同函数名称称为函数重载。...有条件地向数组添加值时一项常见任务是检查某些条件,然后,仅在条件为真时才添加值。如果该值不为真,则代码向数组添加一个假布尔值。

    15K10

    Python 对函数详细讲解

    python 函数参数传递: 不可变类型:类似 c++ 值传递, 整数、字符串、元组。fun(a),传递只是a值,没有影响a对象本身。...比如在 fun(a)内部修改 a 值,只是修改另一个复制对象,不会影响 a 本身。 可变类型:类似 c++ 引用传递, 列表,字典。... fun(la),则是将 la 真正传过去,修改后fun外部la也会受影响 python 中一切都是对象,严格意义我们不能说值传递还是引用传递,我们应该说不可变对象和可变对象。...b,在传递给 ChangeInt 函数时,按方式复制了变量 b,a 和 b 都指向了同一个 Int 对象,在 a=10 时,则新生成一个 int 值对象 10,并让 a 指向它。...访问权限决定于这个变量是在哪里赋值。 变量作用域决定了在哪一部分程序你可以访问哪个特定变量名称。

    18620

    《高效R语言编程》6--高效数据木匠

    使用变量名非标准化求值更高效,见R语言 dplyr传递参数_自由 平等~忠诚 奉献-CSDN博客[2]。只是函数名多了个下划线那么简单吗?...使用dplyr高效处理数据 这个包名意思是数据框钳,相比基础R优点是运行更快、与整洁数据和数据库配合好。函数名部分灵感来自SQL。 ?...与基本R中类似函数不同,变量无需使用 $ 操作符就可直接使用,设计与magrittr包%>%管道操作符一起使用,以允许每个数据阶段写成新一行。其是一个大型包,本身可以看成一门语言。...RODBC是一个资深包,提供R与SQL server接口。DBI包提供了通用接口与驱动程序类集,RSQLITE,是访问数据库统一框架,允许其他驱动程序以模块包添加。...数据库与dplyr 必须使用src_*()函数创建一个数据源。# 使用data.table()处理数据 是dplyr替代,两个哪个好存在争议,最好学一个一直坚持下去。

    1.9K20

    JS 函数式概念: 管道 和 组合

    这个概念就是按照一定顺序执行多个函数,并将一个函数结果传递给下一个函数。...: pipe(function1, function2, function3)(initialArg); 简而言之,组合和管道几乎是一样,唯一区别是执行顺序;如果函数从左到右执行,就是管道,另一方面...一个更准确定义是。"在函数式编程中,compose是将较小单元(我们函数)组合成更复杂东西(你猜对了,是另一个函数)机制"。 下面是一个管道函数例子。...基础知识 我们需要收集N多函数 同时选择一个参数 以链式方式执行它们,将收到参数传递给将被执行第一个函数 调用下一个函数,加入第一个函数结果作为参数。 继续对数组中每个函数做同样操作。.... */ 让我们看看如何在Javascript和Typescript中处理异步函数管道

    1.2K40

    python基础四:函数

    函数参 def sum(a,b): result = a+b print(result) num1 = int(input("num1:")) num2 = int(input("num2...输出结果: 11 22 (33, 44, 55) 上面输出(33,44,55)就是*args参数 这里注意: 如果上面的函数传递参数是sum_2_nums(11,22,33),那么在打印args参数时会输出..., ['a', 'b'], {'name': 'Poe', 'age': 18}) #args {'done': 89, 'task': 99} #kwargs **kwargs对应实参中带变量名参...拆成44,55,66传递给形参,二个号作用是将字典拆包,拆成KEY=VALUE传递给形参,有多少个就拆成多少个 可变与不可变 python中除了数字,字符串,元组是不可变类型,其它都是可变类型 可变类型在字典中不允许当作键...,因为字典保存方法比较特殊,: info = {"name":"Poe",100:"haha"} 在保存时会将键name哈希成一个值,比如:12121212,再保存这个哈希值与value值 递归 def

    60620

    2023.4生信马拉松day7-R语言综合应用

    require(dplyr))install.packages("dplyr",update = F,ask = F) if(!...以上操作根据此前学过知识新增列的话这么写: 图片 4.简单了解:select() 、filter()筛选列、行 5.补充知识:管道符%>% -(1)当遇到连续步骤时:多次赋值,会产生多个中间变量;...%>%可以更加简洁明了;%>%表示向后传递,把管道符前面所有的东西作为后一个函数第一个参数;管道符号永远在中间,后面一定有东西; # 连续步骤 # 1.多次赋值,产生多个中间变量 x1 = select...require(g,character.only = T)) #表示a是变量名,代表包 install.packages(g,ask = F,update = F) #避免被一个需要更新包卡住后面的代码...MARGIN为1表示行,为2表示列,FUN是函数; rm(list = ls()) test<- iris[1:6,1:4] apply(test, 2, mean) apply(test, 1, sum

    3.6K80
    领券