You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<p>Thus, if you need fancy indexing, it's better to keep a copy of you fancy index
653
+
(especially if it was complex to compute it) and to work with it:</p>
654
+
<preclass="code pycon literal-block">
655
+
<spanclass="name"></span><spanclass="generic prompt">>>> </span><spanclass="name">Z</span><spanclass="operator">=</span><spanclass="name">np</span><spanclass="operator">.</span><spanclass="name">zeros</span><spanclass="punctuation">(</span><spanclass="literal number integer">9</span><spanclass="punctuation">)</span>
656
+
<spanclass="generic prompt">>>> </span><spanclass="name">index</span><spanclass="operator">=</span><spanclass="punctuation">[</span><spanclass="literal number integer">0</span><spanclass="punctuation">,</span><spanclass="literal number integer">1</span><spanclass="punctuation">,</span><spanclass="literal number integer">2</span><spanclass="punctuation">]</span>
657
+
<spanclass="generic prompt">>>> </span><spanclass="name">Z</span><spanclass="punctuation">[</span><spanclass="name">index</span><spanclass="punctuation">]</span><spanclass="operator">=</span><spanclass="literal number integer">1</span>
<p>If you are unsure if the result of you indexing is a view or a copy, you can
662
+
check what is the <code>base</code> of your result. If it is <code>None</code>, then you result is a
663
+
copy:</p>
652
664
<preclass="code pycon literal-block">
653
665
<spanclass="name"></span><spanclass="generic prompt">>>> </span><spanclass="name">Z</span><spanclass="operator">=</span><spanclass="name">np</span><spanclass="operator">.</span><spanclass="name">random</span><spanclass="operator">.</span><spanclass="name">uniform</span><spanclass="punctuation">(</span><spanclass="literal number integer">0</span><spanclass="punctuation">,</span><spanclass="literal number integer">1</span><spanclass="punctuation">,(</span><spanclass="literal number integer">5</span><spanclass="punctuation">,,</span><spanclass="literal number integer">5</span><spanclass="punctuation">))</span>
654
666
<spanclass="generic prompt">>>> </span><spanclass="name">Z1</span><spanclass="operator">=</span><spanclass="name">Z</span><spanclass="punctuation">[:</span><spanclass="literal number integer">3</span><spanclass="punctuation">,:]</span>
@@ -658,6 +670,16 @@ <h3><a class="toc-backref" href="#id2">Direct and indirect access</a></h3>
<p>Note that some numpy functions return a view while some others return a copy:</p>
678
+
<preclass="code pycon literal-block">
679
+
<spanclass="name"></span><spanclass="generic prompt">>>> </span><spanclass="name">Z</span><spanclass="operator">=</span><spanclass="name">np</span><spanclass="operator">.</span><spanclass="name">arange</span><spanclass="punctuation">(</span><spanclass="literal number integer">9</span><spanclass="punctuation">)</span><spanclass="operator">.</span><spanclass="name">reshape</span><spanclass="punctuation">(</span><spanclass="literal number integer">3</span><spanclass="punctuation">,</span><spanclass="literal number integer">3</span><spanclass="punctuation">)</span><spanclass="operator">.</span><spanclass="name">copy</span><spanclass="punctuation">()</span>
0 commit comments