小编Abr*_*efa的帖子

旋转需要更宽和更长的数据框

我正在处理一些政府来源的数据,其格式可以使用此代码复制:

Names <- c(rep("A",5),rep("B",5), rep("C",5))
Types <- c(rep(c("Income","Tax Paid","Consumption","Stimulus","NonDurable expenses"),3))
year1 <- c(rep(c(1000,100,300,100,200),3))
year2 <- c(rep(c(2000,200,600,200,400),3))
year3 <- c(rep(c(4000,400,800,400,800),3))
df <- data.frame(Names,Types,year1,year2,year3)
Run Code Online (Sandbox Code Playgroud)

我想要的是一个新的数据框

姓名 收入 消耗 刺激 非耐用型
A 第一年 1000 100 300 100 200
A 第二年 1000 100 300 100 200
A 第三年 1000 100 300 100 200
第一年 2000年 200 600 200 400
第二年 2000年 200 600 200 400
第三年 2000年 200 600 200 400

就这样继续下去。因此,对于每个人来说,将表格放在很长的位置year,并使用单元格名称作为Types具有相应值的新列。

我想到了一种处理这个问题的方法:按类型过滤掉每个类型,然后为每种类型设置单独的数据帧pivot_longer,然后是 …

pivot-table r dplyr

3
推荐指数
1
解决办法
85
查看次数

标签 统计

dplyr ×1

pivot-table ×1

r ×1