当前位置: 首页 > 知识库问答 >
问题:

使用dplyr中的mutate_each函数时选择特定列

蒯坚白
2023-03-14
    require(dplyr)
    ID <- c(1,2,3,4,5,6)
    Freq <- c(0.1,0.2,0.3,0.5,0.1,0.3)
    L.abc <- c(1,1,1,3,1,0)
    L.ABC <- c(0,3,2,4,1,1)
    T.xyz <- c(1,1,1,1,0,1)
    F.ABC <- c(4,5,6,5,3,1)

    df <- as.data.frame(cbind(ID, Freq, L.abc, L.ABC, T.xyz, F.ABC))

    df_new <- df %>% mutate_each(funs(.*Freq), starts_with("L."))        

是否有一种方法可以更改“starts_with”命令来选择所有以大写字母和句号开头的列?我尝试使用诸如“[A-Z]”之类的修改。都没有成功。

提前致谢

共有1个答案

孔皓
2023-03-14

对于这些情况,matches会更合适

  df %>%
      mutate_each(funs(.*Freq), matches("^[A-Z]\\.", ignore.case=FALSE)) 

这里,我假设您想只选择以大写字母(^[A-Z])开头,后面跟着.的列名。我们必须转义.(\\.),否则它将被视为任何单个字符。

除了starts_with部分之外,我没有更改任何内容。在mutate_each中,如果需要传递函数,可以在funs调用中传递函数。在上面的代码中,我们将matches选择的每个列(.)与'freq'列相乘。

 类似资料:
  • 我想使用dplyr的mutate_at函数将一个函数应用于数据帧中的几个列,其中该函数输入它直接应用到的列以及数据帧中的另一列。 作为一个具体的例子,我希望改变以下数据帧 与调用类似 返回一个看起来像这样的数据框 所需的调用将类似于以下对的调用: 我知道这可以通过几种方式在base R中实现,但为了可读性、与数据库的接口等,我特别希望使用dplyr的mutate\u at函数来实现这一目标。 在d

  • 我想用Wordpress博客创建一个投资组合。在“博客文章”的摘要页面上,我希望有图片的缩略图,然后当你点击这些图片时,它们会进入该项目的完整列表。 我想我可以限制摘要页面上的帖子,只显示描述中的一张图片。 我的想法如下: 在摘要页面上,我希望循环只针对并显示每个帖子中带有“缩略图图像”类的图像,然后在单个帖子页面中,我将使用CSS隐藏缩略图图像。 我想知道的是,在php中是否有一种很好的方法可以

  • 我想在dplyr中构建mutate_each/summarise_each:如何选择某些列并为变异列命名?线程。它讨论了将mutate应用于多个列。然而,我知道我们可以使用函数,如等,但我不知道如何应用数学运算,如加法、乘法、除法和减法。 以下是我的数据: 我怎样做才能最大限度地减少重复? 应用上述操作后的预期输出:

  • 本文向大家介绍awk 选择表格数据中的特定列,包括了awk 选择表格数据中的特定列的使用技巧和注意事项,需要的朋友参考一下 示例 我们假设使用的文件;作为列定界符。选择一组特定的列仅需要打印语句。例如,以下程序从其输入中选择列3、4和7: 通常可以更仔细地选择要打印的行。当第一个字段为Alice或时,以下程序从其输入中选择列3、4和7 Bob:            

  • 我有一个在data.table中选择行的特定问题,到目前为止还没有设法解决它。我有一个数据集,用于存储一系列参数的仿真结果。数据集中的列包含参数或结果值,请参阅下面的代码(“p”表示参数列,“v”表示值列。 我现在想提取:对于每个p1,对于给定的p2和p3值,对于p4,p5的任意值,v1的值是最小的行。设 np4 和 np5 是 p4 和 p5 的唯一值的数量,对于每个唯一的 p1 并给定 p2,