You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R数据框仅转置指定列的数据格式化实现方法咨询

R语言宽表转指定长表实现方法

你需要做的是宽表转长表操作,同时根据目标输出需要先对原始重复行去重,以下是两种常用实现方案:

方法1:tidyverse套件方案(当前主流写法)

# 加载依赖包,未安装先执行 install.packages("tidyverse")
library(tidyverse)

# 转换逻辑
result <- df %>%
  distinct() %>% # 移除原始数据的重复行,不需要去重可删除该行
  pivot_longer(
    cols = c(A, B),
    names_to = "company",
    values_to = "Variable"
  )

方法2:reshape2包方案(兼容旧版R环境)

# 加载依赖包,未安装先执行 install.packages("reshape2")
library(reshape2)

# 转换逻辑
df_unique <- unique(df) # 移除原始数据的重复行,不需要去重可删除该行
result <- melt(
  data = df_unique,
  id.vars = "year",
  variable.name = "company",
  value.name = "Variable"
)

如果不需要去重,删除对应去重代码即可,最终输出会保留原始所有行拆分后的8条记录。

内容的提问来源于stack exchange,提问作者thomas.diridondo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 12:54:03