Python读取TXT文件并转换为NumPy数组的完整实现

Dylan
Dylan
发布时间:2026-10-13 | 5人浏览过
原创

本文详细介绍如何在Python中将包含大量浮点数的TXT文件数据读取并转换为NumPy数组。通过示例代码展示如何逐行处理文本、去除换行符、按逗号分割数据,并利用numpy的array和c_函数构建二维数组,最终实现125行45列数据的精确加载与输出。

原始数据文件如下所示:

7.8094,1.0804,5.7632,0.012269,0.008994,-0.003469,-0.79279,-0.064686,0.11635,0.68827,5.7169,7.9329,0.010264,0.003557,-0.011691,-0.57559,-0.56121,

该文件包含大量数据,具体结构为125行,每行包含45个浮点数。

实现该功能的Python代码如下:

# -*- coding: utf-8 -*-
import numpy as np

def readFile(path):
 # 打开文件(注意路径)
 f = open(path)
 # 逐行进行处理
 first_ele = True
 for data in f.readlines():
  ## 去掉每行的换行符,"\n"
  data = data.strip('\n')
  ## 按照 空格进行分割。
  nums = data.split(',')
  ## 添加到 matrix 中。
  if first_ele:
   ### 加入到 matrix 中 。
   matrix = np.array(nums)
   first_ele = False
  else:
   matrix = np.c_[matrix,nums]
 matrix = matrix.transpose()
 a = []
 for x in range(0,125):
  result = [float(item) for item in matrix[x]]
  a.append(result)
 arr=np.array(a)
 f.close()
 print(arr)
 return arr
# test.
if __name__ == '__main__':
 readFile("~/s01.txt")

程序运行后的输出结果如下:

[[ 8.1305 1.0349 5.4217 ..., 0.74017 0.30053 -0.05773 ]
 [ 8.1305 1.0202 5.3843 ..., 0.73937 0.30183 -0.057514]
 [ 8.1604 1.0201 5.3622 ..., 0.73955 0.30052 -0.057219]
 ..., 
 [ 7.9517 1.1466 5.6081 ..., 0.73945 0.30342 -0.056789]
 [ 7.9743 1.1542 5.5038 ..., 0.7403 0.30027 -0.056704]
 [ 7.9812 1.0945 5.6005 ..., 0.73897 0.30275 -0.056262]]
Process finished with exit code 0

以上即为Python将TXT文件读取并转换为NumPy数组的完整方法分享,希望能为读者提供有价值的参考,欢迎继续支持本站获取更多技术内容。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表