并行将两组列进行转换的pivot_longer
创始人
2024-12-18 18:31:46
0

在R语言中,可以使用tidyverse包中的pivot_longer()函数来实现将两组列进行转换的操作。

下面是一个示例代码:

library(tidyverse)

# 创建一个示例数据框
df <- tibble(
  id = 1:3,
  var1_1 = c("A", "B", "C"),
  var1_2 = c("D", "E", "F"),
  var1_3 = c("G", "H", "I"),
  var2_1 = c(1, 2, 3),
  var2_2 = c(4, 5, 6),
  var2_3 = c(7, 8, 9)
)

# 使用pivot_longer函数进行转换
df_longer <- df %>%
  pivot_longer(
    cols = starts_with("var"),  # 需要转换的列
    names_to = c(".value", "group"),  # 指定新列名的形式
    names_pattern = "(var\\d)_(\\d)"  # 正则表达式匹配模式
  )

# 打印转换后的数据框
print(df_longer)

运行以上代码,将会得到如下输出:

# A tibble: 9 x 4
     id group var1  var2
     
1     1 1     A         1
2     1 2     D         4
3     1 3     G         7
4     2 1     B         2
5     2 2     E         5
6     2 3     H         8
7     3 1     C         3
8     3 2     F         6
9     3 3     I         9

在这个示例中,我们使用pivot_longer()函数将var1_1var1_2var1_3var2_1var2_2var2_3这两组列进行了转换。转换后的数据框中新增了两列groupvar,其中group列表示原始数据中的组别,var列表示原始数据中的值。

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
ASM贪吃蛇游戏-解决错误的问... 要解决ASM贪吃蛇游戏中的错误问题,你可以按照以下步骤进行:首先,确定错误的具体表现和问题所在。在贪...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...