从制表符分隔的文件中删除缺少值的行

盖乌斯·奥古斯都(Gaius Augustus)

我有一个很大的(〜900MB)制表符分隔的文本文件,我将在下游程序中对其进行处理。我需要删除任何缺少值的行。每行上的列数正确(因此,缺少的值将对应于2个制表符)。

注意:我的实际数据有大约200万行和80-300列。可能的字符是AZ AZ 0-9-(连字符)_(下划线)和制表符(定界)。文件中没有空格或特殊字符。

我是这种脚本的新手,所以希望对提供的任何代码进行解释。我通常使用R,但是我的文件大小已超出R的数据处理功能。

如何在终端(或在Shell脚本中)从文件中删除缺少值的行(例如,使用sed)?

输入文件示例:

Col1    Col2    Col3
A        B        C
D                 F
G        H        I
J        K        

示例输出文件:

Col1    Col2    Col3
A        B        C
G        H        I 
芒登

如果您的字段永远不能包含空格,则空白字段表示一个制表符作为第一个字符(^\t),一个制表符作为最后一个字符(\t$)或两个连续的制表符(\t\t)。因此,您可以过滤出包含以下任何内容的行:

grep -Ev $'^\t|\t\t|\t$' file

如果可以有空格,事情将会变得更加复杂。如果您的字段可以以空格开头,请改用它(它认为只有空格的字段为空):

grep -Pv '\t\s*(\t|$)|\t$|^\t' file

所做的更改会滤除与制表符匹配的行,后跟0或多个空格,然后是另一个制表符或行的末尾。

如果最后一个字段只包含空格,那也将失败。为了避免这种情况也一样,使用perl-F-a选项来分割输入到@F阵列中,告诉它要打印除非字段之一是空的(/^$/):

perl -F'\t' -lane 'print unless grep{/^$/} @F' file

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Perl中解析制表符分隔的文件

来自分类Dev

将制表符分隔的文件读入C ++中的数组

来自分类Dev

读取Clojure中的制表符分隔文件

来自分类Dev

制表符分隔文件中的C#FileHelpers空

来自分类Dev

按键合并制表符分隔的文件

来自分类Dev

在javascript中解析制表符分隔文件

来自分类Dev

使用Python读取Hadoop中制表符分隔的文件

来自分类Dev

在制表符分隔的文件上选择行

来自分类Dev

将空格转换为制表符分隔文件的第一行上的制表符

来自分类Dev

如何从文件中删除空白行(包括制表符和空格)?

来自分类Dev

在制表符分隔的文件中添加值列

来自分类Dev

从制表符分隔的文本文件中查找重复的行

来自分类Dev

解析制表符分隔文件的策略

来自分类Dev

平均制表符分隔的值

来自分类Dev

从制表符分隔的文件的特定列中删除多个逗号,并在新行上打印单词

来自分类Dev

更改Python文件中的值(制表符分隔的列表)

来自分类Dev

如何合并制表符分隔的文件?

来自分类Dev

如何在Spark中处理制表符分隔的文件?

来自分类Dev

使用Powershell替换制表符分隔文件的第一行中的文本

来自分类Dev

使用2个制表符分隔的列将行添加到.txt文件中

来自分类Dev

从由制表符分隔的文件中读取记录

来自分类Dev

在制表符分隔的文件上选择行

来自分类Dev

awk:遍历制表符分隔的文件

来自分类Dev

删除第一行中与子字符串匹配的制表符分隔的列

来自分类Dev

将空格转换为制表符分隔文件的第一行上的制表符

来自分类Dev

如何从制表符分隔的文本文件中的列的字符串值的末尾删除反斜杠?

来自分类Dev

将制表符分隔文件中的逗号分隔列表扩展为单独的行

来自分类Dev

如何折叠制表符分隔的 .txt 文件中的相似值?

来自分类Dev

循环非制表符分隔的文件

Related 相关文章

  1. 1

    在Perl中解析制表符分隔的文件

  2. 2

    将制表符分隔的文件读入C ++中的数组

  3. 3

    读取Clojure中的制表符分隔文件

  4. 4

    制表符分隔文件中的C#FileHelpers空

  5. 5

    按键合并制表符分隔的文件

  6. 6

    在javascript中解析制表符分隔文件

  7. 7

    使用Python读取Hadoop中制表符分隔的文件

  8. 8

    在制表符分隔的文件上选择行

  9. 9

    将空格转换为制表符分隔文件的第一行上的制表符

  10. 10

    如何从文件中删除空白行(包括制表符和空格)?

  11. 11

    在制表符分隔的文件中添加值列

  12. 12

    从制表符分隔的文本文件中查找重复的行

  13. 13

    解析制表符分隔文件的策略

  14. 14

    平均制表符分隔的值

  15. 15

    从制表符分隔的文件的特定列中删除多个逗号,并在新行上打印单词

  16. 16

    更改Python文件中的值(制表符分隔的列表)

  17. 17

    如何合并制表符分隔的文件?

  18. 18

    如何在Spark中处理制表符分隔的文件?

  19. 19

    使用Powershell替换制表符分隔文件的第一行中的文本

  20. 20

    使用2个制表符分隔的列将行添加到.txt文件中

  21. 21

    从由制表符分隔的文件中读取记录

  22. 22

    在制表符分隔的文件上选择行

  23. 23

    awk:遍历制表符分隔的文件

  24. 24

    删除第一行中与子字符串匹配的制表符分隔的列

  25. 25

    将空格转换为制表符分隔文件的第一行上的制表符

  26. 26

    如何从制表符分隔的文本文件中的列的字符串值的末尾删除反斜杠?

  27. 27

    将制表符分隔文件中的逗号分隔列表扩展为单独的行

  28. 28

    如何折叠制表符分隔的 .txt 文件中的相似值?

  29. 29

    循环非制表符分隔的文件

热门标签

归档