首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将变量的行转换为具有出现项和grouped_by的列?

如何将变量的行转换为具有出现项和grouped_by的列?
EN

Stack Overflow用户
提问于 2021-05-21 18:34:08
回答 1查看 33关注 0票数 1

我有一个像这样的数据集

代码语言:javascript
运行
复制
Group| School
11-12  Middle School
8-10   Elementary 
5-8    Elementary
5-8    Elementary
8-10   Elementary
14-16  High School
11-13  Middle School

我怎么把它变成

代码语言:javascript
运行
复制
 Group|Elementary|Middle School|High School
 5-8            2             0          0
 8-10           2             0          0
11-12           0             1          0
11-13           0             1          0
14-16           0             0          1
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-21 18:36:29

我们可以使用来自tablebase R,它给出matrix/table类中的频率表。

代码语言:javascript
运行
复制
table(df1)

或者如果我们需要一个tidyverse选项

代码语言:javascript
运行
复制
library(dplyr)
library(tidyr)
df1 %>%
  pivot_wider(names_from = 'School', 
    values_from = 'School', values_fn = length, values_fill = 0)

或者是来自dcastdata.table

代码语言:javascript
运行
复制
library(data.table)
dcast(setDT(df1), Group ~ School, fun.aggregate = length, fill = 0)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67642288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档