擅长:python、mysql、java
<p>我没有完全理解你写的所有东西,但有些事情我已经可以告诉你了,也许它们会有所帮助。在</p>
<p><code>newaxis</code>是一个标记而不是一个函数(事实上,它是普通的<code>None</code>)。它用于将(未使用的)维度添加到多维值。有了它,你可以从二维值(甚至更多)中生成三维值。输入值中已经存在的每个维度都必须用索引中的冒号<code>:</code>来表示(假设您想要使用所有值,否则它会比我们的用例复杂),要添加的维度用<code>newaxis</code>表示。在</p>
<p>示例:<br/>
输入为一维向量(1D):1,2,3<br/>
输出应为矩阵(2D)。<br/>
有两种方法可以实现这一点:向量可以用一个值填充每一行,或者向量可以只填充矩阵的第一行也是唯一一行。第一个由<code>vector[:,newaxis]</code>创建,第二个由<code>vector[newaxis,:]</code>创建。结果如下:</p>
<pre><code>>>> array([ 7,8,9 ])[:,newaxis]
array([[7],
[8],
[9]])
>>> array([ 7,8,9 ])[newaxis,:]
array([[7, 8, 9]])
</code></pre>
<p>(多维值的维数当然是通过数组的嵌套来表示的。)</p>
<p>如果输入中有更多维度,请多次使用冒号(否则会忽略深层嵌套维度,即数组被视为简单值)。我不会在这里粘贴一个表示,因为当3D和4D值用嵌套括号写在2D显示器上时,由于光学复杂性,它不会澄清一些事情。我希望一切都能明朗起来。在</p>