-4

我有我的意见。我正在使用 R。我想要 R 中的解决方案

    id       places         present   
   1234    |new|world|life   yes
   5111      
 2012222   |lamp             yes
 123333    |world11|ness     yes    

我要输出

      id       places         present   
   1234        new            y9970s
   1234        world          7655s
   1234        life           54644s
   5111      
2012222        lamp           y777s
 123333        world11        y998s
 123333        ness           y99s

我试过了

dt <- data.table(input)
dt=dt[ , list( V3 = unlist( strsplit(as.character( V3),"\\|") ) ) , by = V1]

但第三列被遗漏了。即使在这种情况下我有多个列,我将如何工作

4

1 回答 1

0

该软件包的可能解决方案data.table

library(data.table)
dt <- data.table(df)
new.dt <- dt[,strsplit(as.character(places),"|",fixed=TRUE), by=list(id,present)]
于 2014-05-30T11:10:37.093 回答