我有一个数据集,我从 Google 电子表格中剪切并粘贴到我的文本编辑器(Sublime Text 2)中,并且该数据集与我的处理需求不太匹配。
在它来自电子表格的形式中,数据以一行字符串开始,每列一个字符串,然后是多行数据;在数据行中,每一列都有值1
或为空白。我不知道数据来自电子表格时是否是制表符分隔的,但是在将其粘贴到文本文件中之后却不是。如果1
一行中的最后一个不在最后一列中,则该行用空格填充,直到但不包括最后一列。
我尝试用 做一些事情awk
,但我不知道如何解决空格既是分隔符又是列值的事实。接下来,我尝试了一些带有 的命令sed
,包括用零替换重复的空格,并用管道连接到另一个sed
替换10
为 的命令1 0
,但后来我有时会插入额外的零,我不知道在相应的行中发生了什么。
这是一些示例数据(真实文件中有 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
我想得到类似 right 的东西(然后我不关心行结束的地方),所以我可以用awk
.
顺便说一句,我已经看到了这个问题,它并没有解决我的问题,因为那里的解决方案基于文件是制表符分隔的事实,在“空”单元格中根本没有任何价值。重申一下,我的文件是用空格分隔的,空单元格中有空格。