title: How do select 2nd column or a matrix from a pandas dataframe?
body: <p>How do you select column other than the first column?</p>
  
  <pre><code>import pandas as pd
  df = pd.read_csv('bio.csv')
  df
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/qDf6G.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/qDf6G.jpg" alt="Output 1"></a></p>
  
  <p>I could select the first column, i.e., "Index"</p>
  
  <pre><code>df['Index']
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/OfxAM.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/OfxAM.jpg" alt="Output 2"></a></p>
  
  <p>However, I could not select the second column, i.e., "Height".</p>
  
  <pre><code>df['Height']
  </code></pre>
  
  <p>Here is the trace:</p>
  
  <pre><code>KeyError                                  Traceback (most recent call last)
  C:\util\Anaconda3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
     2441             try:
  -&gt; 2442                 return self._engine.get_loc(key)
     2443             except KeyError:
  
  pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
  
  pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
  
  pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
  
  pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
  
  KeyError: 'Height'
  
  During handling of the above exception, another exception occurred:
  
  KeyError                                  Traceback (most recent call last)
  &lt;ipython-input-8-58aff8413556&gt; in &lt;module&gt;()
  ----&gt; 1 df['Height']
  
  C:\util\Anaconda3\lib\site-packages\pandas\core\frame.py in __getitem__(self, key)
     1962             return self._getitem_multilevel(key)
     1963         else:
  -&gt; 1964             return self._getitem_column(key)
     1965 
     1966     def _getitem_column(self, key):
  
  C:\util\Anaconda3\lib\site-packages\pandas\core\frame.py in _getitem_column(self, key)
     1969         # get column
     1970         if self.columns.is_unique:
  -&gt; 1971             return self._get_item_cache(key)
     1972 
     1973         # duplicate columns &amp; possible reduce dimensionality
  
  C:\util\Anaconda3\lib\site-packages\pandas\core\generic.py in _get_item_cache(self, item)
     1643         res = cache.get(item)
     1644         if res is None:
  -&gt; 1645             values = self._data.get(item)
     1646             res = self._box_item_values(item, values)
     1647             cache[item] = res
  
  C:\util\Anaconda3\lib\site-packages\pandas\core\internals.py in get(self, item, fastpath)
     3588 
     3589             if not isnull(item):
  -&gt; 3590                 loc = self.items.get_loc(item)
     3591             else:
     3592                 indexer = np.arange(len(self.items))[isnull(self.items)]
  
  C:\util\Anaconda3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
     2442                 return self._engine.get_loc(key)
     2443             except KeyError:
  -&gt; 2444                 return self._engine.get_loc(self._maybe_cast_indexer(key))
     2445 
     2446         indexer = self.get_indexer([key], method=method, tolerance=tolerance)
  
  pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
  
  pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
  
  pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
  
  pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
  
  KeyError: 'Height'
  </code></pre>