我读过一个numpy.ndarray
,看起来像这样:
[[1.4600e-01 2.9575e+00 6.1580e+02]
[5.8600e-01 4.5070e+00 8.7480e+02]]
让我们假设我正在读取的数组将而不是长度都是2。(例如,长度可以是1、3、456等)
我想把它分成两个独立的数组,像这样:
[[1.4600e-01 2.9575e+00 6.1580e+02]]
[[5.8600e-01 4.5070e+00 8.7480e+02]]
我以前尝试过搜索这个问题的解决方案,但这不是我正在寻找的解决方案:python转换2d数组为1d数组
因为您想提取这些行,所以您可以对它们建立索引。假设你的数组存储在变量x
中。x[0]
会给你第一行:[1.4600e-01 2.9575e+00 6.1580e+02]
,而x[1]
会给你第二行:[5.8600e-01 4.5070e+00 8.7480e+02]
,等等。
您还可以遍历行,执行如下操作:
for row in x:
# Do stuff with the row
如果您真的想要保留外部维度,您可以使用x[0].reshape((1,-1))
重塑行,这表示将第一个维度设置为1(意味着它有1行),并从现有数据推断第二个维度。
或者,如果您想将一些行分成n组,您可以使用numpy.vsplit()
函数:https://numpy.org/doc/stable/reference/generated/numpy.vsplit.html#numpy.vsplit
但是,我建议循环遍历这些行,而不是将它们分开,除非您确实需要将它们分开。