python - 将列表添加到 numpy 数组

标签 python numpy

现在我正在编写一个从文件中读取数据的函数,目标是将这些数据添加到 numpy 数组并返回所述数组。

我想将数组作为二维数组返回,但是我不确定数组的完整形状是什么(我知道列数,但不知道行数)。 我现在拥有的是:

columns = _____
for line in currentFile:
     currentLine = line.split()
     data = np.zeros(shape=(columns),dtype=float)
     tempData = []
     for i in range(columns):
          tempData.append(currentLine[i])
      data = np.concatenate((data,tempdata),axis=0)

但是,这会生成一个一维数组。

本质上我要问的是:

有没有办法将 python 列表作为行添加到行数可变的 numpy 数组中?

最佳答案

如果您的文件data.txt

1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4

您需要做的就是

>>> import numpy as n
>>> data_array = n.loadtxt("data.txt")
>>> data_array

array([[1., 2., 3., 4.],
       [1., 2., 3., 4.],
       [1., 2., 3., 4.],
       [1., 2., 3., 4.],
       [1., 2., 3., 4.],
       [1., 2., 3., 4.]])

关于python - 将列表添加到 numpy 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37690440/

相关文章:

Python 未从 PyPi 包中找到库(因此,dll)

python将字符串更改为日期

python - 将颜色图与 matplotlib 循环器一起使用

python - 查找字典列表的所有排列

python - 我怎样才能解决下面的这些错误?

python - 如何使用 PyPlot 绘制带有 2 个 slider 的 4D 数组?

python - PythonOperator 的运行时配置

python - 消除 numpy 实现中的循环

c++ - Catkin构建中的错误找不到软件包 “numpy_eigen”

python - 使用 Python 和 matplotlib 控制 3D 散点图上的 alpha 值