User Tools

Site Tools


right_outer_join_with_pandas_trick

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

right_outer_join_with_pandas_trick [2015/10/20 23:38]
vincenzo created
right_outer_join_with_pandas_trick [2015/10/20 23:39] (current)
vincenzo
Line 1: Line 1:
 +<code python>
  
 +# coding: utf-8
  
-    import pandas as pd +# In[11]:
-    dfa = pd.DataFrame({'​A'​range(4, 8)}) +
-    dfb = pd.DataFrame({'​A':​ range(6, 15)}) +
-     +
  
 +import pandas as pd
 +dfa = pd.DataFrame({'​A':​ range(4, 8)})
 +dfb = pd.DataFrame({'​A':​ range(6, 15)})
 + 
  
-    dfa 
  
 +# In[12]:
  
 +dfa
  
  
-<​div>​ +# In[13]:
-<table border="​1"​ class="​dataframe">​ +
-  <​thead>​ +
-    <tr style="​text-alignright;">​ +
-      <​th></​th>​ +
-      <​th>​A</​th>​ +
-    </​tr>​ +
-  </​thead>​ +
-  <​tbody>​ +
-    <​tr>​ +
-      <​th>​0</​th>​ +
-      <​td>​4</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​1</​th>​ +
-      <​td>​5</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​2</​th>​ +
-      <​td>​6</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​3</​th>​ +
-      <​td>​7</​td>​ +
-    </​tr>​ +
-  </​tbody>​ +
-</​table>​ +
-</​div>​+
  
 +dfb
  
  
 +# In[17]:
  
-    ​dfb+dfa['​ones'​] = 1  
 +dfb['​ones'​] = 1
  
  
 +# In[20]:
  
 +df = pd.merge(dfa,​ dfb, on = '​A',​ how = '​right'​)
  
-<div> 
-<table border="​1"​ class="​dataframe">​ 
-  <​thead>​ 
-    <tr style="​text-align:​ right;">​ 
-      <​th></​th>​ 
-      <​th>​A</​th>​ 
-    </tr> 
-  </​thead>​ 
-  <​tbody>​ 
-    <tr> 
-      <​th>​0</​th>​ 
-      <​td>​6</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​1</​th>​ 
-      <​td>​7</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​2</​th>​ 
-      <​td>​8</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​3</​th>​ 
-      <​td>​9</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​4</​th>​ 
-      <​td>​10</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​5</​th>​ 
-      <​td>​11</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​6</​th>​ 
-      <​td>​12</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​7</​th>​ 
-      <​td>​13</​td>​ 
-    </tr> 
-    <tr> 
-      <​th>​8</​th>​ 
-      <​td>​14</​td>​ 
-    </tr> 
-  </​tbody>​ 
-</​table>​ 
-</​div>​ 
  
 +# In[21]:
  
 +df
  
  
-    dfa['​ones'​= 1  +# In[22]:
-    dfb['​ones'​] = 1+
  
 +df[df.ones_x.notnull()][['​A'​]]
  
-    df = pd.merge(dfa,​ dfb, on = '​A',​ how = '​right'​) 
  
 +# In[ ]:
  
-    df 
  
  
- +</code>
- +
-<​div>​ +
-<table border="​1"​ class="​dataframe">​ +
-  <​thead>​ +
-    <tr style="​text-align:​ right;">​ +
-      <​th></​th>​ +
-      <​th>​A</​th>​ +
-      <​th>​ones_x</​th>​ +
-      <​th>​ones_y</​th>​ +
-    </​tr>​ +
-  </​thead>​ +
-  <​tbody>​ +
-    <​tr>​ +
-      <​th>​0</​th>​ +
-      <​td>​6</​td>​ +
-      <​td>​1</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​1</​th>​ +
-      <​td>​7</​td>​ +
-      <​td>​1</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​2</​th>​ +
-      <​td>​8</​td>​ +
-      <​td>​NaN</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​3</​th>​ +
-      <​td>​9</​td>​ +
-      <​td>​NaN</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​4</​th>​ +
-      <​td>​10</​td>​ +
-      <​td>​NaN</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​5</​th>​ +
-      <​td>​11</​td>​ +
-      <​td>​NaN</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​6</​th>​ +
-      <​td>​12</​td>​ +
-      <​td>​NaN</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​7</​th>​ +
-      <​td>​13</​td>​ +
-      <​td>​NaN</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​8</​th>​ +
-      <​td>​14</​td>​ +
-      <​td>​NaN</​td>​ +
-      <​td>​1</​td>​ +
-    </​tr>​ +
-  </​tbody>​ +
-</​table>​ +
-</​div>​ +
- +
- +
- +
- +
-    df[df.ones_x.notnull()][['​A'​]] +
- +
- +
- +
- +
-<​div>​ +
-<table border="​1"​ class="​dataframe">​ +
-  <​thead>​ +
-    <tr style="​text-align:​ right;">​ +
-      <​th></​th>​ +
-      <​th>​A</​th>​ +
-    </​tr>​ +
-  </​thead>​ +
-  <​tbody>​ +
-    <​tr>​ +
-      <​th>​0</​th>​ +
-      <​td>​6</​td>​ +
-    </​tr>​ +
-    <​tr>​ +
-      <​th>​1</​th>​ +
-      <​td>​7</​td>​ +
-    </​tr>​ +
-  </​tbody>​ +
-</​table>​ +
-</div> +
- +
- +
- +
- +
-     +
right_outer_join_with_pandas_trick.txt · Last modified: 2015/10/20 23:39 by vincenzo