title: Why doesn't pandas reindex() operate in-place?
body: <p>From the <a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.reindex.html" rel="noreferrer">reindex docs</a>:</p>
  
  <blockquote>
    <p>Conform DataFrame to new index with optional filling logic, placing NA/NaN in locations having no value in the previous index. A new object is produced unless the new index is equivalent to the current one and copy=False.</p>
  </blockquote>
  
  <p>Therefore, I thought that I would get a reordered <code>Dataframe</code> by setting <code>copy=False</code> <strong>in place (!)</strong>. It appears, however, that I do get a copy and need to assign it to the original object again. I don't want to assign it back, if I can avoid it (<a href="https://stackoverflow.com/questions/56459810/">the reason comes from this other question</a>).</p>
  
  <p>This is what I am doing:</p>
  
  <pre><code>import numpy as np
  import pandas as pd
  
  df = pd.DataFrame(np.random.rand(5, 5))
  
  df.columns = [ 'a', 'b', 'c', 'd', 'e' ]
  
  df.head()
  </code></pre>
  
  <p>Outs:</p>
  
  <pre><code>          a         b         c         d         e
  0  0.234296  0.011235  0.664617  0.983243  0.177639
  1  0.378308  0.659315  0.949093  0.872945  0.383024
  2  0.976728  0.419274  0.993282  0.668539  0.970228
  3  0.322936  0.555642  0.862659  0.134570  0.675897
  4  0.167638  0.578831  0.141339  0.232592  0.976057
  </code></pre>
  
  <p>Reindex gives me the correct output, but I'd need to assign it back to the original object, which is what I wanted to avoid by using <code>copy=False</code>:</p>
  
  <pre><code>df.reindex( columns=['e', 'd', 'c', 'b', 'a'], copy=False )
  </code></pre>
  
  <p>The desired output after that line is:</p>
  
  <pre><code>          e         d         c         b         a
  0  0.177639  0.983243  0.664617  0.011235  0.234296
  1  0.383024  0.872945  0.949093  0.659315  0.378308
  2  0.970228  0.668539  0.993282  0.419274  0.976728
  3  0.675897  0.134570  0.862659  0.555642  0.322936
  4  0.976057  0.232592  0.141339  0.578831  0.167638
  </code></pre>
  
  <hr>
  
  <p>Why is <code>copy=False</code> not working in place? </p>
  
  <p>Is it possible to do that at all?</p>
  
  <hr>
  
  <p>Working with python 3.5.3, pandas 0.23.3</p>