带有组的pivot_longer并删除列名前缀[重复]

2024-02-11

我正在尝试使用pivot_longer 将数据帧从宽格式转换为长格式。

原始数据框是:

df.start <- structure(list(amprise = 0.015, ampfull = 0.005, ampfall = 0.03, freq1 = 250L, freq2 = 500L, freq3 = 750L, relamp1 = 0.01, relamp2 = 0.3, relamp3 = 0.02), class = "data.frame", row.names = c(NA, -1L))

看起来像:

> df.start
  amprise ampfull ampfall freq1 freq2 freq3 relamp1 relamp2 relamp3
1   0.015   0.005    0.03   250   500   750    0.01     0.3    0.02

我想将其压缩为六列:

> df.end
  harmonic amprise ampfull ampfall freq relamp
1        1   0.015   0.005    0.03  250   0.01
2        2   0.015   0.005    0.03  500   0.30
3        3   0.015   0.005    0.03  750   0.02

我的理解是从这个帖子 https://stackoverflow.com/questions/60317889/pivot-longer-with-groups-of-columns我可以用cols = -c("amprise", "ampfull", "ampfall")将该组列保留为宽格式。

我还可以看到我应该能够在中使用正则表达式names_pattern从剩余的列名称中删除前缀以填充谐波列。但是,我正在努力将它们正确地组合在一起。

任何帮助将不胜感激!


您可以利用names_pattern :

tidyr::pivot_longer(df.start, 
                    cols = -c("amprise", "ampfull", "ampfall"), 
                    names_to = c('.value', 'harmonic'), 
                    names_pattern = '(.*?)(\\d+)')

#  amprise ampfull ampfall harmonic  freq relamp
#    <dbl>   <dbl>   <dbl> <chr>    <int>  <dbl>
#1   0.015   0.005    0.03 1          250   0.01
#2   0.015   0.005    0.03 2          500   0.3 
#3   0.015   0.005    0.03 3          750   0.02

当我们使用.value in names_to我们希望将原始列名的一部分保留为重构后的数据框中的列。使用names_pattern我们可以定义要在其中提取列名称的组。

(.*?)(\\d+)这里我们定义了2组列名。第一组(.*?) 提取所有内容,直到一个数字 (\\d+)这是遇到的第二组。既然我们已经使用了.value对于第一部分,正则表达式中的部分(.*?)) 作为单独的列名称。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

带有组的pivot_longer并删除列名前缀[重复] 的相关文章

  • 将列表中的列转换为 R 中的数据框

    我有使用 R 创建的以下列表 set seed 326581 X1 rnorm 10 0 1 Y1 rnorm 10 0 2 data data frame X1 Y1 lst lt replicate 100 df smpl lt dat
  • R 中的发散积分可在 Wolfram 中求解

    我知道我以前问过同样的问题 但由于我是新来的 这个问题问得不好而且不可重现 因此我在这里尝试做得更好 如果我只编辑旧的 可能没有人会读它 我有一个想要积分的二重积分 ff lt function g t exp 16 g exp 8 t t
  • 从 R 环境中删除对象

    我正在阅读 Hadley 的 Advanced R 在第 8 章中 他说我们可以使用以下方法从环境中删除对象 rm 但是 移除该物体后我仍然可以看到该物体 这是我的代码 e lt new env e a lt 1 e b lt 2 e a
  • 从 R 中的 HTTPS 连接逐行读取

    当创建连接时open r 它允许逐行读取 这对于批量处理大数据流非常有用 例如这个脚本 https gist github com jeroenooms d33a24958d99bb969ac0通过一次读取 100 行来解析相当大的 gzi
  • 将函数应用于 3d 数组的每一层,返回一个数组

    假设您有一个包含行 列和层的 3 维数组 A lt array 1 27 c 3 3 3 想象你有一个函数 它接受一个矩阵作为输入并返回一个矩阵作为输出 就像t 如何将该函数应用于数组的每一层 返回与第一层大小相同的另一个数组 我觉得我应该
  • 比较 R 中的两个字符向量

    我有两个 ID 字符向量 我想比较这两个字符向量 特别是我对以下数字感兴趣 A和B各有多少个ID 有多少个ID在A中但不在B中 有多少个ID在B但不在A 我还想画维恩图 以下是一些可以尝试的基础知识 gt A c Dog Cat Mouse
  • 有没有一种简单的方法来判断存储在一个列表中的许多数据帧是否包含相同的列?

    我有一个包含许多数据框的列表 df1 lt data frame A 1 5 B 2 6 C LETTERS 1 5 df2 lt data frame A 1 5 B 2 6 C LETTERS 1 5 df3 lt data frame
  • ggplot散点图中的图例问题

    我想使用 ggplot 创建显示方法比较数据的散点图 绘图应包含原始数据 理想线和带误差的拟合线 图例应显示理想线和拟合线的线型 线宽 线颜色 我可以获得大部分我想要的东西 但是图例存在以下问题 图例显示每种线型有 2 条线 为什么 如何解
  • 如何在R中同时对三个字段进行网络分析

    如何在 R 中同时对三个字段进行网络分析 下面是示例数据以及desired output在最后一栏中 df lt data frame stringsAsFactors FALSE id 1 c ABC ABC BCD CDE DEF EF
  • 使用predictNLS围绕R中的拟合值创建置信区间?

    我想使用 R 中 propogate 包中的 PredictNLS 围绕一大组拟合值构建置信区间 作为示例 我将使用它们在函数描述中引用的数据集 https rdrr io github anspiess propagate man pre
  • 如何根据两个数据框中最近的日期进行匹配?

    假设我有两个数据框 例如 set seed 123 df1 lt data frame bmi rnorm 20 25 5 date1 sample seq Date as Date 2014 01 01 as Date 2014 02 2
  • 为什么 \K 似乎消耗了基本 R 的 gsub 中的一个字符

    这是一个示例字符串 bcadefgh 我希望我能匹配除了 cad 具有以下模式 wa w K w 如果我想替换所有不是的东西 cad 我可以用gsub 像这样gsub wa w K w bcadefgh perl TRUE 但是这输出 ca
  • 如何修改秤包生成的标签?

    所以我正在制作金字塔可视化 我在用着scale y continuous labels scales label number si accuracy 0 1 来生产标签 但是 我想去掉图表女性部分的负号 我认为保留 SI 后缀但删除负号的
  • 从“parallel”包中的非基础 R 包调用函数,而无需在函数中将它们库化

    假设我正在尝试运行以下代码 library gregmisc library parallel myfunction lt function x combinations 10 x 1 10 cl lt makeCluster getOpt
  • R Tidytext 和 unnest_tokens 错误

    对 R 非常陌生 已经开始使用 tidytext 包 我正在尝试使用参数来填充unnest tokens函数 这样我就可以进行多列分析 所以而不是这个 library janeaustenr library tidytext library
  • 如何动态访问数据帧列表中的特定属性

    我有一个数据 它是数据框的列表 我正在尝试访问列表中每个数据帧内的特定属性 可以提取特定属性DP UniqueId使用下面的代码 gt attr new data A AA SpotfireColumnMetaData DP UniqueI
  • 迭代字符串 R 的字符

    有人可以解释一下为什么这不会在 R 中单独打印所有数字 numberstring lt 0123456789 for number in numberstring print number 字符串不就是字符数组吗 在 R 中该怎么做 In
  • ggplot2 可视化/显示中的地图错误?

    正如您在下面看到的 我使用 ggplots 制作的地图上存在一个奇怪的显示问题 任何投影似乎都会发生同样的问题 这是代码 仅包maps and ggplot2需要 mapWorld lt borders world colour gray5
  • 如何一次导入多个 .csv 文件?

    假设我们有一个包含多个 data csv 文件的文件夹 每个文件包含相同数量的变量 但每个文件来自不同的时间 R 中有没有办法同时导入它们 而不必单独导入它们 我的问题是 我有大约 2000 个数据文件需要导入 并且必须使用以下代码单独导入
  • 使用 purrr、broom 从许多单变量模型中获得整洁的输出

    我有一个由二进制结果列组成的数据框 y 和多个独立的预测列 x1 x2 x3 我想运行许多单变量逻辑回归模型 例如y x1 y x2 y x3 并将每个模型的指数系数 比值比 95 置信区间和 p 值提取到数据框 标题的行中 在我看来 使用

随机推荐

  • PHP Mailer 编译并存储消息以供以后发送

    我们可以在 PHP 邮件程序中将消息编译并存储为草稿 然后再发送每条消息吗 It is使用 PHPMailer 可以做到这一点 使用您通常发送消息所需的一切配置 PHPMailer 实例后 不要调用send 相反打电话preSend 构造消
  • 带有大标题的 UINavigationBar - 如何在 iOS 11 中找到额外的高度

    当使用prefersLargeTitles时UINavigationController s UINavigationBar in iOS 11 导航栏增加高度 我检查过的 iPhone 上的数量从 44 增加到 96 但我认为这些数字可以
  • 为什么 PHP 内置对象无法序列化?

    我尝试反序列化 PHP 对象 警告 unserialize function unserialize 节点不再存在于 var www app php 第 42 行 But why那件事发生了吗 即使我找到了反序列化 simplexml 对象
  • 来自API的奇怪字符串的java字符编码

    我对 API 的响应遇到了奇怪的问题 我正在使用 apache HTTP 客户端来获取响应 响应头有以下内容 Content Type application json charset utf 16 Transfer Encoding ch
  • 如何更改 iOS 7 中 UISearchBar 中放大镜图标的位置或隐藏放大镜图标?

    我正在开发 IOS 7 应用程序 默认情况下 它的显示像图 1 但我需要将其更改为图 2 我在谷歌上搜索并找到了一些要求的答案 但它没有改变 否则我需要隐藏 这样我就可以使用背景图像进行管理 这是第一张图像 我用下面的代码修改它 但没有成功
  • Python 3 中全局变量的正确使用

    Python 3 中全局变量的正确用法是 1 陈述global VAR NAME一旦进入核心脚本 不在函数内 然后简单地将变量引用为VAR NAME其他地方 2 陈述global VAR NAME在每个使用全局变量的函数中一次 然后简单地将
  • 如何使用 GTK+ / Cairo 旋转图像

    我有一个简单的应用程序 应该使用每 x 毫秒旋转装饰轮这么多度GTK and Cairo 我下面有一些代码可以调用cairo rotate 来自计时器 然而 图像并没有改变 我是否必须使图像无效才能引发暴露事件 我对开罗很陌生 一个简单的例
  • Android SDK与ubuntu设置代理

    在哪里可以找到 android SDK 代理设置 我正在使用 ubuntu 提前致谢 我所拥有的一切都在下面的屏幕中 我目前只能在我的 mac 上查看 设置存储在 android androidtool cfg 我的设置目前如下所示 Set
  • 检查断点处的条件时 gdb 失败

    我定义一个断点 b foo 124 if strcmp bar foo getName abc 0 但是 gdb 失败并出现以下错误 Thread 0x7fffe8ef9700 LWP 25817 exited Switching to T
  • 如何让用户使用 Android 中的 Intent 仅选择本地文件?

    我需要让用户从本地存储中为我的应用程序选择一个文件 现在我正在使用INTENT ACTION GET CONTENT让用户选择文件 但它也提供了从云中选择 URI 的选项 获取 URI 文件后 我将其视为本地文件并执行各种操作 包括提取文件
  • 将组合框显示文本设置为 ObservableCollection 的属性

    我有以下集合 我想将其绑定到组合框 public ObservableCollection
  • 使用 jquery.each() 循环创建对象键

    我正在 javascript 中创建一个命名空间来循环遍历表单并创建一个对象 调用该函数的目标是循环遍历所有特定表单类型并构造一个对象 该对象的键是 html 输入的名称 值是其当前值 但是 它始终返回未定义 任何帮助将不胜感激 get f
  • 尽管符号存在,但 CMake 中的符号查找失败

    我正在尝试使用 CMake 检查符号 getaddrinfo a 是否存在 list APPEND CMAKE REQUIRED DEFINITIONS D GNU SOURCE check symbol exists getaddrinf
  • 如何用C++扩展TCL?

    我可以编写可编译并用于扩展 TCL 的 C 代码 我不是指调用可执行文件 吗 我可以描述一些类 函数并通过调用已编译的 so 或 a 文件 C 代码在我的 TCl 代码中使用它们吗 如果是 请示意性地向我解释一下它是如何完成的 http c
  • CodeFirst 相对于 Database First 的优势是什么?

    我正在观看 EF 4 1 的一些视频和教程 我不明白 CodeFirst 的任何好处 除了一些 DB 非常小的 3 4 个表并且我懒得先创建 DB 的情况 大多数情况下 迄今为止最好的方法是在某种数据库编辑器中创建数据库 这肯定比在实体模型
  • Python:如何用常规属性替换属性?

    基类有这样的 def management form self code here return form management form property management form 在我的派生类中 我试图这样写 self manag
  • CSS无冲突样式

    创建 CSS 样式表的无冲突版本的好方法是什么 假设您有一堆代码 其中的类与 Bootstrap 的类重叠 这是否有效 添加一个class bootstrap 到应应用引导样式的祖先元素 然后更改bootstrap css为每个添加前缀ru
  • JXA:从 CoreServices 访问 CFString 常量

    JXA https developer apple com library mac releasenotes InterapplicationCommunication RN JavaScriptForAutomation Articles
  • XML 数据类型方法“value”的参数 1 必须是字符串文字

    我已经读过SO XML 数据类型方法 值 必须是字符串文字 https stackoverflow com q 11029674 62576但我的问题有点不同 我在一个变量中有一些 xml 我想将其分开并给出一个路径 最初我尝试过这个 de
  • 带有组的pivot_longer并删除列名前缀[重复]

    这个问题在这里已经有答案了 我正在尝试使用pivot longer 将数据帧从宽格式转换为长格式 原始数据框是 df start lt structure list amprise 0 015 ampfull 0 005 ampfall 0