numpy加载文本和savetxt多个文件?

2024-07-01 07:08:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望读取、计算并打印出多个相同格式的文件。在

filenames2 = ["AAA", "BBB", "CCC", "DDD", "EEE"]
for filename2 in filenames2:
   with loadtxt (filename2, float) as data:
      a1 = data[:,0]
      b1 = data[:,3]
      c1 = data[:,4]
      d1 = data[:,5]
      e1 = data[:,6]
     %% DO something with all those data. 
   z = numpy.array((calculated_a11, calculated_b11, calculated_c11), dtype = float)
   z2 = z.T
   numpy.savetxt('avegedoutput_%s.txt' %filenames2, z2.reshape((1000,3)), fmt='%i %f %f')

我希望这样写,这样希望能处理多个文件。但是看起来numpy savetxt和loadtxt不是这样工作的。。。。欢迎任何建议。在

提前谢谢。在

另外,我是否需要为这些数据读取部分生成空矩阵?似乎这些命令会导致这些错误:“TypeError:'file'object is unsubscribable”。在

我想我需要做零矩阵,然后像在Matlab中那样把数据放入这些矩阵中。这对吗?在


Tags: 文件数据numpydata格式with矩阵float
1条回答
网友
1楼 · 发布于 2024-07-01 07:08:21

numpy.loadtxt接受文件名(字符串)并返回numpy数组。所以您不需要with子句:

filenames2 = ["AAA", "BBB", "CCC", "DDD", "EEE"]
for filename2 in filenames2:
    data = np.loadtxt(filename2)
    a1 = data[:,0]
    # ...
    np.savetxt('output_filename.txt', z, ...)

到目前为止,我认为没有必要在代码中生成零矩阵。data将与文件的内容一起归档,a1b1,…,将从data获取它们的内容。在

相关问题 更多 >

    热门问题