如何解决将长格式转换为宽格式,同时在R
我具有以下长格式的数据(请参见下文)。它包含3个变量:
- “文件”变量,具有4个不同的值(文件A,文件B,文件C和文件D)。
- File_old_cluster变量:它包含“文件字符串”和群集编号。
- regroup:此变量包含有关来自不同文件的群集之间的重新分组(群集匹配)的信息。
> long_format
File File_old_cluster regroup
1 File_A File_A_2 1
2 File_A File_A_1 2
3 File_A File_A_3 3
4 File_A File_A_4 3
5 File_B File_B_4 1
6 File_B File_B_2 2
7 File_B File_B_1 3
8 File_B File_B_3 4
9 File_C File_C_1 1
10 File_C File_C_4 4
11 File_C File_C_2 4
12 File_C File_C_3 4
13 File_D File_D_2 1
14 File_D File_D_1 2
15 File_D File_D_3 3
16 File_D File_D_4 5
我想将其转换为如下所示的宽格式。因此,重要的是将匹配的“ File_old_cluster”观测值汇总到新变量“ File A”,“ File B”,“ File C”和“ File C”中的一个观测值中,并以分号分隔。
> wide_format
File_A File_B File_C File_D regroup
1 File_A_2 File_B_4 File_C_1 File_D_2 1
2 File_A_1 File_B_2 File_D_1 2
3 File_A_3; File_A_4 File_B_1 File_D_3 3
4 File_B_3 File_C_4; File_C_2; File_C_3 4
5 File_D_4 5
我使用dcast尝试过
wide_format <- dcast(long_format,regroup ~ File,value.var="File_old_cluster")
此功能不起作用,因为它无法在如上所述的新观测值中聚合多个字符串。错误消息将显示如下:Aggregation function missing: defaulting to length
如果您能帮助我解决这个问题,我将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。