0

我有许多文本文件 (1,409),包含 259,200 x 1 个数据点(每个文本文件都是一年和变量)。我想将这些合并到一个文本文件列中,即

botTemp_1950 | botTemp_1951 | botTemp_1952 | ... etc
....           ....           .... 
.
.
.

我已经这样做了,但数据被排列成 1 列,大小为 4GB。有没有办法做到这一点,但在 Windows 中按列显示,还是我需要像 Python 这样的脚本语言?

然后,我想为每列仅屏蔽 200 行左右的数据,并为每列取平均值,这样我就有每个变量的时间序列。

如果我能做这两件事,那么理想,但主要是在按列之后,那么我可以在 Excel 中相当容易地应用掩码,前提是我可以打开文本文件。

提前致谢。

4

1 回答 1

0

在 Python 中,您可以尝试以下操作:

os.chdir(current_dir_with_txt_files)
txtfiles = [open(i) for i in os.listdir('*.txt')]

out = open(out_name, 'w')

from itertools import izip
for l1,l2,l3 in izip(*txtfiles):
    out.write(','.join(l1.strip(), l2.strip(), l3.strip() + '\n')
out.close()

这可能需要一段时间,但不会消耗您所有的 RAM 内存。

于 2013-08-05T15:56:35.273 回答