当前位置:  开发笔记 > 编程语言 > 正文

在R中展开分隔的列

如何解决《在R中展开分隔的列》经验,为你挑选了1个好方法。

我想根据第一列中的值扩展或拆分包含多个列的大型数据框:

这是我的意见:

a1;a2;a3    X   1
b1;b2       Y   2
c           Z   3
d1;d2;d3    ZZ  4

并输出:

a1  X   1
a2  X   1
a3  X   1
b1  Y   2
b2  Y   2
c   Z   3
d1  ZZ  4
d2  ZZ  4
d3  ZZ  4

到目前为止,我遇到了以下解决方案 - http://www.r-bloggers.com/expand-delimited-columns-in-r/ 但我希望有人可以建议一种更简单的方法.

我很感激任何帮助.



1> Pierre Lafor..:

尝试cSplit,它有一个分裂长而不是宽的参数:

library(splitstackshape)
cSplit(mydata, "V1", direction="long", sep=";")
#    V1 V2 V3
# 1: a1  X  1
# 2: a2  X  1
# 3: a3  X  1
# 4: b1  Y  2
# 5: b2  Y  2
# 6:  c  Z  3
# 7: d1 ZZ  4
# 8: d2 ZZ  4
# 9: d3 ZZ  4

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有