我有一個數據集,我從Google Spreadsheet中剪切粘貼到我的文本編輯器(Sublime Text 2)中,數據集不符合我的處理需求。用0填充文本文件中的空列
它以電子表格的形式出現,數據從一行字符串開始,每列一列,然後是一些數據行;在數據行中,每列都有值爲1
或爲空。我不知道數據是否是從電子表格中分離出來的,但是在粘貼到文本文件後它不是。如果最後一列中的最後一個1
不在最後一列,則填充空格直到,但不包括最後一列的。
我試着用awk
做一些事情,但我無法弄清楚如何解決空間既是分隔符又是列值的問題。接下來,我嘗試了一些命令與sed
,包括零和管道到另一個sed
與1 0
取代10
取代連續的空格,但後來我有時有多餘的零插入,我不知道在發生的各行。
這是一些示例數據(實際文件中有13列)。我添加了$
作爲最後一個字符後面的字符,因此您可以看到線條填充的距離。
"1" "2" "3" "4" "1" "2" "3" "4"
1 1 $ 0 1 1 0
1 1 $ 1 0 0 1
1 $ 0 1 0 0
1 1 1 $ 1 1 0 1
我想的東西,如正確的(然後我不在乎行的結束位置),這樣我就可以awk
處理它結束了。
順便說一句,我有看到this question,這並沒有解決我的問題,因爲該解決方案有基於這樣的事實,該文件是製表符分隔,沒有任何價值可言的「空」細胞。重申一下,我的文件是空格分隔的,在空單元格中有空格。
拜託,拜託,不要使用'貓文件| sed的...'!你只是浪費一點資源而已。請改用sed ...
TrueY
2013-04-20 20:04:13
像'/^.../'和'/...$/'這樣的pattenrs真的需要'g'嗎?它們只能匹配一次。 – TrueY 2013-04-20 20:08:07
不幸的是,沒有匹配'/ $ /'模式的情況。最後一個字符總是一個空格。 – TrueY 2013-04-21 22:11:39