Python 将文本文件拆分为多个numpy数组
我想将一个简单的单列文件(包含浮点数)放入多个numpy数组中,每个数组都是从相同的行数创建的 例如,如果文件有180行,我想创建3个numpy数组,一个包含第1-60行的数据,第二个从61到120行,第三个从121到180行 我试图使用np.fromfile()函数,但它似乎无法响应文件指针(如查找到第1行,读取60行,然后查找到61,读取60,…)。有人知道如何有效地做到这一点吗Python 将文本文件拆分为多个numpy数组,python,arrays,file-io,numpy,Python,Arrays,File Io,Numpy,我想将一个简单的单列文件(包含浮点数)放入多个numpy数组中,每个数组都是从相同的行数创建的 例如,如果文件有180行,我想创建3个numpy数组,一个包含第1-60行的数据,第二个从61到120行,第三个从121到180行 我试图使用np.fromfile()函数,但它似乎无法响应文件指针(如查找到第1行,读取60行,然后查找到61,读取60,…)。有人知道如何有效地做到这一点吗 arr1, arr2, arr3 = np.loadtxt(path).reshape(3,-1) 只需将所有
arr1, arr2, arr3 = np.loadtxt(path).reshape(3,-1)
只需将所有数据读入一个数组,然后将该数组重新格式化为3行即可。调用重塑
中的-1
将被重塑
替换为任何有意义的数字。例如,如果数组的长度为180,则在重塑时,数组将有60列。请注意,原始数组的长度必须可以被3整除
或者
arr1, arr2, arr3 = np.array_split(np.loadtxt(path), 3)
这是一个更健壮的方法,因为array\u split
将把数组分成3个部分,即使原始数组的长度不能被3整除