我对 Python 比较陌生,想知道如何最好地将数据从多个文件导入单个数组。我有很多包含 50 行两列数据(以列分隔)的文本文件,例如:
Length=10.txt:
1, 10
2, 30
3, 50
#etc
END OF FILE
-
Length=20.txt
1, 50.7
2, 90.9
3, 10.3
#etc
END OF FILE
假设我有 10 个文本文件要导入并导入到一个名为data的变量中。
我想创建一个包含所有数据的单个 3D 数组。这样,我可以通过data[:,:,n]
wheren
引用文本文件的索引来引用数据,从而轻松地绘制和操作数据。
我认为我这样做的方法是拥有一个形状数组(50、2、10),但不知道如何最好地使用 python 来创建它。我考虑过使用循环将每个文本文件导入为 2D 数组,然后将它们堆叠以创建 2D 数组,虽然找不到合适的命令来执行此操作(我在 numpy 中查看了 vstack 和 column_stack 但这些似乎没有添加额外的维度)。
到目前为止,我已经编写了导入代码:
file_list = glob.glob(source_dir + '/*.TXT') #Get folder path containing text files
for file_path in file_list:
data = np.genfromtxt(file_path, delimiter=',', skip_header=3, skip_footer=18)
但是这段代码的问题是,我只能在 for 循环中处理数据。
我真正想要的是从文本文件中导入的所有数据的数组。
任何帮助将不胜感激谢谢!