【发布时间】:2017-03-12 11:52:32
【问题描述】:
我有两个 numpy 数组(A 和 B)。打印时它们看起来像这样:
答:
[array([0, 0, 0]) array([0, 0, 0]) array([1, 0, 0]) array([0, 0, 0])
array([0, 0, 0]) array([0, 0, 0]) array([0, 0, 0]) array([0, 0, 0])
array([0, 0, 0]) array([0, 0, 0]) array([0, 0, 1]) array([0, 0, 0])
array([1, 0, 0]) array([0, 0, 1]) array([0, 0, 0]) array([0, 0, 0])
array([0, 0, 0]) array([1, 0, 0]) array([0, 0, 1]) array([0, 0, 0])]
乙:
[[ 4.302135e-01 4.320091e-01 4.302135e-01 4.302135e-01
1.172584e+08]
[ 4.097128e-01 4.097128e-01 4.077675e-01 4.077675e-01
4.397120e+07]
[ 3.796353e-01 3.796353e-01 3.778396e-01 3.778396e-01
2.643200e+07]
[ 3.871173e-01 3.890626e-01 3.871173e-01 3.871173e-01
2.161040e+07]
[ 3.984899e-01 4.002856e-01 3.984899e-01 3.984899e-01
1.836240e+07]
[ 4.227315e-01 4.246768e-01 4.227315e-01 4.227315e-01
1.215760e+07]
[ 4.433817e-01 4.451774e-01 4.433817e-01 4.433817e-01
9.340800e+06]
[ 4.620867e-01 4.638823e-01 4.620867e-01 4.620867e-01
1.173760e+07]]
type(A)、type(A[0])、type(B)、type(B[0])都是<class 'numpy.ndarray'>。
但是,A.shape 是 (20,),而 B.shape 是 (8, 5)。
问题 1:为什么A.shape 是一维的,我如何使它像B.shape 一样是二维的?它们都是数组的数组,对吧?
问题2,可能与Q1有关:为什么打印A会显示array()的调用,而打印B却没有,为什么B的子数组的元素中没有逗号-他们之间?
提前致谢。
【问题讨论】:
-
你看过每个数组的
dtype了吗?一个是数组数组,另一个是二维浮点数组。 -
这是我的问题——如何将数组数组变成整数/浮点数的二维数组?