我找的到了unpivot一个基础R解决方案,我的子串原始数据集。下面的例子;的R - 逆透视及子
ID L1 L2 L3
1 AABBCC BACA
2 AAAAAA BACBA CACCC
3 BBACB BACA CABAC
4
5 BCBDAB ACAA CBABA
dput(original_data):
structure(list(ID = 1:5, L1 = structure(c(3L, 2L, 4L, 1L, 5L), .Label = c("","AAAAAA", "AABBCC", "BBACB", "BCBDAB"), class = "factor"), L2 = structure(c(3L,4L, 3L, 1L, 2L), .Label = c("", "ACAA", "BACA", "BACBA"), class = "factor"),L3 = structure(c(1L, 3L, 2L, 1L, 4L), .Label = c("", "CABAC","CACCC","CBABA"), class = "factor")), .Names = c("ID", "L1","L2", "L3"),class = "data.frame", row.names = c(NA, -5L))
将一个较长的表,同时采取3个重叠的连续字符的子串,下面的例子;
ID Column Position Substring
1 L1 1 AAB
1 L1 2 ABB
1 L1 3 BBC
1 L1 4 BCC
1 L1 5 CC
1 L1 6 C
1 L2 1 BAC
1 L2 2 ACA
1 L2 3 AC
1 L2 4 A
2 L1 1 AAA
2 L1 2 AAA
2 L1 3 AAA
2 L1 4 AAA
2 L1 5 AA
2 L1 6 A
2 L2 1 BAC
2 L2 2 ACB
2 L2 3 CBA
2 L2 4 BA
2 L2 5 A
2 L3 1 CAC
2 L3 2 ACC
2 L3 3 CCC
2 L3 4 CC
2 L3 5 C
有没有人有任何想法如何做到这一点?我的问题是我不能使用外部库,如reshap2。我需要在基地r做到这一点。
你的“结构”为您的样本数据被打破,它不糊成R正确。你可以再试一次吗? – Spacedman
谢谢,我想我已经纠正了这一点。现在怎么样? –