2016-12-15 173 views
-9

我的数据是一串使用read.table拉入R的数字。这里是数据:如何在字符串中的每个字符之间插入空格?

20402000224222032203233430020222024422320202234232443443004440404332402220404233302004204202004033420200022204334434044422322400200244044322202200234200424402002224303430023432202220343420323200300022320004223040024342244424040322424340240044220302432400203033300042423340222323200020034043004 

如何在每个数字之间插入一个空格,所以输出看起来更像这样?

2 0 4 0 2 0 0 0 etc... 

回答

4

可以按如下方式通过gsub做到这一点:

txt <- readLines("path/to/my-txt-file.csv") 
trimws(gsub("", " ", txt)) 

出于测试目的,只需使用:

txt <- "20402000224222032203233430020222024422320202234232443443004440404332402220404233302004204202004033420200022204334434044422322400200244044322202200234200424402002224303430023432202220343420323200300022320004223040024342244424040322424340240044220302432400203033300042423340222323200020034043004" 

导致:

"2 0 4 0 2 0 0 0 2 2 4 2 2 2 0 3 2 2 0 3 2 3 3 4 3 0 0 2 0 2 2 2 0 2 4 4 2 2 3 2 0 2 0 2 2 3 4 2 3 2 4 4 3 4 4 3 0 0 4 4 4 0 4 0 4 3 3 2 4 0 2 2 2 0 4 0 4 2 3 3 3 0 2 0 0 4 2 0 4 2 0 2 0 0 4 0 3 3 4 2 0 2 0 0 0 2 2 2 0 4 3 3 4 4 3 4 0 4 4 4 2 2 3 2 2 4 0 0 2 0 0 2 4 4 0 4 4 3 2 2 2 0 2 2 0 0 2 3 4 2 0 0 4 2 4 4 0 2 0 0 2 2 2 4 3 0 3 4 3 0 0 2 3 4 3 2 2 0 2 2 2 0 3 4 3 4 2 0 3 2 3 2 0 0 3 0 0 0 2 2 3 2 0 0 0 4 2 2 3 0 4 0 0 2 4 3 4 2 2 4 4 4 2 4 0 4 0 3 2 2 4 2 4 3 4 0 2 4 0 0 4 4 2 2 0 3 0 2 4 3 2 4 0 0 2 0 3 0 3 3 3 0 0 0 4 2 4 2 3 3 4 0 2 2 2 3 2 3 2 0 0 0 2 0 0 3 4 0 4 3 0 0 4" 
+1

或者,在'readLines'后:'txt_string < - strsplit(txt,“”)' –

1

这只刀片字符之间的空格rs但不在开头或结尾:

gsub("(.)\\B", "\\1 ", "abcdef") 
## [1] "a b c d e f" 
相关问题