title: What is the point of .ix indexing for pandas Series
body: <p>For the Series object (let's call it s), pandas offers three types of addressing.</p>
  
  <p>s.iloc[] -- for integer position addressing;</p>
  
  <p>s.loc[] -- for index label addressing; and</p>
  
  <p>s.ix[] -- for a hybrid of integer position and label addressing.</p>
  
  <p>The pandas object also performs ix addressing directly. </p>
  
  <pre><code># play data ...
  import string
  idx = [i for i in string.uppercase] # A, B, C .. Z
  t = pd.Series(range(26), index=idx) # 0, 1, 2 .. 25
  
  # examples ...
  t[0]              # --&gt; 0
  t['A']            # --&gt; 0
  t[['A','M']]      # --&gt; [0, 12]
  t['A':'D']        # --&gt; [0, 1, 2, 3]
  t.iloc[25]        # --&gt; 25
  t.loc['Z']        # --&gt; 25
  t.loc[['A','Z']]  # --&gt; [0, 25]
  t.ix['A':'C']     # --&gt; [0, 1, 2]
  t.ix[0:2]         # --&gt; [0, 1]
  </code></pre>
  
  <p>So to my question: is there a point to the .ix method of indexing? Am I missing something important here?</p>
  
  <p><strong>Note</strong>: As of Pandas v0.20, <code>.ix</code> <a href="http://pandas.pydata.org/pandas-docs/version/0.20/whatsnew.html#whatsnew-0200-api-breaking-deprecate-ix" rel="nofollow noreferrer">indexer is deprecated</a> in favour of <code>.iloc</code> / <code>.loc</code>.</p>