【发布时间】:2018-08-08 19:13:47
【问题描述】:
一次又一次,我面临从两个文件(即来自一个并行语料库)中采样特定行数(比如说N)的问题;句子是根据到行号)始终。
对于从事(神经)机器翻译研究的任何人来说,这是一项常见且频繁的任务。
我想知道一种快速有效的方法来从并行语料库中采样(即选择)N 行,可能来自命令行。
例如,如果我们想以一致的方式从两个文件中选择4 行,我们可以在行号3、12、17、23 处采样行。这应该为我们提供两个文件中的这些行。此外,最好将此参数N 设为任意参数,以便我们可以随意更改它。此外,应不重复地对这些行进行采样。而且,需要采样的所需行数N 将始终少于两个文件中的总行数,其中两个文件的总行数始终相同。
一旦我们对所需的行进行了采样,还希望从两个文件中获取尚未采样的行(即获取随机采样中未选择的其余行)。
这样做的整个想法是以一致的方式对两个文件进行采样,以便保留它们的行对齐。 (即选择
N行和N-T行,其中T是总行数。)
其中N 是不重复采样的所需行数,N-T 是未采样的其余行。
我该怎么做呢?提前致谢!
【问题讨论】:
-
重复还是不重复?可以对同一行进行多次采样。是否还考虑到文件行大小大于 N?
-
@karakfa 无需重复!需要采样的所需行数
N将始终少于两个文件中的总行数:)。此外,两个文件的行数相同。谢谢!
标签: linux bash shell file command-line