你可能会问这个问题上SO因为没有处理统计:)
反正问题,我做了一个相当复杂和丑陋解决方案,可能适合你:
# load your data
x <- structure(list(Name = c("A", "B", "C"), Start = c("1,2,3", "1,2",
"1,2,3,4"), End = c("4,5,6", "4,5", "6,7,8,9")), .Names = c("Name",
"Start", "End"), row.names = c(NA, -3L), class = "data.frame")
看起来像R中,如:
data <- data.frame(cbind(
rep(x$Name,as.numeric(lapply(strsplit(x$Start,","), length))),
unlist(lapply(strsplit(x$Start,","), cbind)),
unlist(lapply(strsplit(x$End,","), cbind))
))
命名新的数据帧:
> x
Name Start End length
1 A 1,2,3 4,5,6 3
2 B 1,2 4,5 2
3 C 1,2,3,4 6,7,8,9 4
与strsplit
呼叫帮助数据转换
names(data) <- c("Name", "Start", "End")
它看起来像:
> data
Name Start End
1 A 1 4
2 A 2 5
3 A 3 6
4 B 1 4
5 B 2 5
6 C 1 6
7 C 2 7
8 C 3 8
9 C 4 9
这个问题属于的R语言的服务器上,而不是在这里。 – whuber
用read.csv读取文件,并用write.table写入,用熔化转换为适当的格式。这个问题类似于你最近的问题,它真的不属于这里。请通过stackoverflow询问。 – mpiktas
哦,好的。我是新来的R认为CV是一个R社区。下次还会跟着:) – Jana