如何将txt文件加载到2d矩阵中?

2024-09-29 22:00:58 发布

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

我非常需要Python,需要一些帮助。我试图加载一个txt文件并将其存储为一个变量,其中N应该是一个方阵。但是,当我尝试检查时,N的ndim()为1,列数不等于行数

我尝试了以下代码:

N = open('Graph2021.txt', 'r').readlines()
N = np.array(M)

有人能帮忙吗。我已经附上了一个txt文件的部分截图,以显示代码的破坏,以分离列(我想)

txt文件由0和1填充:

txt file


Tags: 文件代码txtnpopenarray方阵列数
2条回答

您正在以列表的形式读取文件,每个元素都是一行。然而,根据您所描述的,每一行都有N元素。当然,它必须用某种东西(空格、逗号等)隔开。你必须用那个分隔符把每一行分开

with open('Graph2021.txt', 'r') as the_file:
    M = []
    for each_line in the_file:
        M.append(each_line.split(",")) # , is separator...
    N = np.array(M)

更具python风格的方式:

with open('Graph2021.txt', 'r') as the_file:
    N = np.array([each_line.split(",") for each_line in the_file]) # , is separator...
  
import numpy as np

N_lines = open('Graph2021.txt', 'r').readlines()
N_matrixlist = [list(map(float,i.strip().split(','))) for i in N_lines]
N = np.array(N_matrixlist)

相关问题 更多 >

    热门问题