4

次の形式の変数名があります。

PP_Sample_12.GT

また

PP_Sample-17.GT

文字列分割を使用して、中間セクションをgrepしようとしています:つまりSample_12、またはSample-17. しかし、私がするとき:

IDtmp <- sapply(strsplit(names(df[c(1:13)]),'_'),function(x) x[2])
IDs <- data.frame(sapply(strsplit(IDtmp,'.GT',fixed=T),function(x) x[1]))

Sample私はfor で終わりPP_Sample_12.GTます。

これを行う別の方法はありますか?おそらくパターン/置換のような機能を使用していますか?ただし、これが R に存在するかどうかはわかりません (ただし、これは で動作する可能性があると思いますgsub)

4

4 に答える 4

3

これは、最初の後と最後の前のgsubすべてを抽出するaです_.

x<-c("PP_Sample-12.GT","PP_Sample-17.GT")
gsub(".*_(.*)\\..*","\\1", x, perl=T)
于 2014-05-06T19:43:47.490 に答える