我正在研究一个由大约24000行(基因)和1100个列(样本)组成的RNA数据集,该数据集是由制表符分开的。为了进行分析,我需要选择一个特定的基因。如果有一种基于行号的行提取方法,这将是非常有帮助的?那样对我来说比用基因的名字容易多了。
下面是数据(4X4)的一个示例-
目的基因亚型 A1BG AURKA /AURKA/AURKA AURKB
例如,我想要行1,3 and4,而不需要特定的模式。
我也在biostars.org上询问过。
发布于 2018-05-16 09:05:25
假设您有一个文件,或者一个生成所需行号列表的程序,您可以使用sed
编辑该文件,使其成为打印这些行并将其传递给第二次调用sed
的脚本。
具体而言,假设您有一个名为lines
的文件,该文件显示您需要哪些行(或者它同样可以是一个在其stdout
上生成行的程序):
1
3
4
您可以将其转换为这样的sed
脚本:
sed 's/$/p/' lines
1p
3p
4p
现在,您可以将它传递给另一个sed
,作为执行的命令:
sed -n -f <(sed 's/$/p/' lines) FileYouWantLinesFrom
这具有独立于可以传递给脚本的最大参数长度的优点,因为sed
命令位于伪文件中,即不作为参数传递。
如果您不喜欢/使用bash
和进程替换,您可以这样做:
sed 's/$/p/' lines | sed -n -f /dev/stdin FileYouWantLinesFrom
https://stackoverflow.com/questions/50364556
复制相似问题