【发布时间】:2019-09-05 21:15:13
【问题描述】:
我是 python 新手,正在尝试制作一个大型数组。寻找最好的方法来做到这一点。
基本上,我试图在 python 中创建一个大数组以放入另一个应用程序。该数组将具有可变数量的行和 5 列。我有存储在其他列表中的两列的数据,并希望遍历这些列表以填充我的数组中的这两列。
它看起来像:
x y z l1 w1
x y z l2 w2
x y z l3 w3
x y z l4 w4
x y z l5 w5
x y z l6 w6
x y z l7 w7
我看过关于在 numpy 中使用列表或数组的帖子,但没有关于循环遍历列表来填充它们的帖子。有什么建议吗?
【问题讨论】:
-
x y z l1 w1根本没有说明这一点。所以你想要 5 列,但你只给出 2 个值,其余的是不存在的事物的名称。 -
@roganjosh 第一列中的值将全部相同,第二列中的值将全部相同,第三列中的值将全部相同。第四列和第五列中的值将从两个单独的列表中提取
-
其他两个列表是 python 列表对象还是已经在一个 numpy 数组中?它们的长度是否相同,或者它们是否有可能成为不同的尺寸?如果一个列表比另一个列表长,您希望使用哪些值作为填充符?
-
@loganjones16 抱歉 - 是的,我的代码检查以确保两个列表的长度相同。它们在一个列表对象中。如果将这两个列表放入一个 numpy 数组中会有帮助吗?
-
我建议尽可能将事物转换为 numpy,因为它更容易执行复杂的功能(查看 numpy 切片,这是有史以来最好的事情)。但是,您必须在创建它时知道它的长度,而不是随手添加。这是因为如果它有一定数量的空间,它可以进行性能优化。但是您始终可以使用 numpy.asarray() 将列表转换为 ndarray
标签: python arrays pandas list numpy