title: Pandas Series.rename not reflected in DataFrame columns
body: <p>I'm trying to rename a <code>column</code> by validating the values in the particular columns. Here is the set-up:</p>
  
  <pre><code>In [9]: import pandas as pd
  
  In [10]: df = pd.DataFrame(
      ...:         {"unknown_field": ['bob@gmail.com', 'shirley@gmail.com', 'groza@pubg.com']}
      ...:     )
  
  In [11]: df
  Out[11]: 
         unknown_field
  0      bob@gmail.com
  1  shirley@gmail.com
  2     groza@pubg.com
  </code></pre>
  
  <p>Using a <code>validate_column(ser)</code>, which takes <code>Pandas.Series</code> object as parameter, it validates the values in that column and modifies the column name of that particular column with a pre-defined set of column names. To make it simple, in this example, the column is validated as an <code>email</code> column.</p>
  
  <pre><code>In [12]: def validate_column(ser):
      ...:     # Value validation method returns that this column is email column
      ...:     ser.rename('email', inplace=True)
      ...:     
  </code></pre>
  
  <p>The current name of the <code>unknown_field</code> is: <code>unknown_field</code>, and as expected, the name changes to <code>email</code> after executing <code>validate_column</code> method:</p>
  
  <pre><code>In [13]: df.unknown_field
  Out[13]: 
  0        bob@gmail.com
  1    shirley@gmail.com
  2       groza@pubg.com
  Name: unknown_field, dtype: object
  
  In [14]: validate_column(df.unknown_field)
  
  In [15]: df.unknown_field
  Out[15]: 
  0        bob@gmail.com
  1    shirley@gmail.com
  2       groza@pubg.com
  Name: email, dtype: object
  </code></pre>
  
  <p>However, the column names within the <code>df</code> is not modified as I expected. It still named as <code>unknown_field</code> within the <code>df</code> variable:</p>
  
  <pre><code>In [16]: df
  Out[16]: 
         unknown_field
  0      bob@gmail.com
  1  shirley@gmail.com
  2     groza@pubg.com
  </code></pre>
  
  <p>Currently, I use the following code to manually modify the column name within my <code>df</code> variable.</p>
  
  <pre><code>In [17]: for col in df.select_dtypes(object):
      ...:     df.rename(columns={col: df[col].name}, inplace=True)
      ...:     
  
  In [18]: df
  Out[18]: 
                 email
  0      bob@gmail.com
  1  shirley@gmail.com
  2     groza@pubg.com
  
  In [19]: 
  </code></pre>
  
  <h2>My question is:</h2>
  
  <p>Is there a more efficient/straightforward method for renaming the <code>Series</code> and directly reflected in the <code>DataFrame</code>?</p>