title: Pandas collapse columns into a single column
body: <p>I'm looking for a way to collapse multiple columns into a new single column.  Given the below data I'd like to create a new column called "Day" and populate they day value if available.  If a day is not populated I want to return the value of None. Can you help me accomplish this?</p>
  
  <pre><code>df = pd.DataFrame({'Monday': {0: 'Monday', 1: 'None', 2: 'None'},
                     'Tuesday': {0: 'None', 1: 'None', 2: 'Tuesday'},
                     'Wednesday': {0: 'None', 1: 'None', 2: 'None'}})
  </code></pre>
  
  <p>DataFrame</p>
  
  <pre><code>   Monday  Tuesday Wednesday
  0  Monday     None      None
  1    None     None      None
  2    None  Tuesday      None
  </code></pre>
  
  <p>New column with desired output:</p>
  
  <pre><code>        Day
  0    Monday
  1      None
  2   Tuesday
  </code></pre>
  
  <p>I tried to use melt but does not accomplish exactly what I am looking for and creates extra rows for each column being collapsed.</p>
  
  <p>My attempt:</p>
  
  <pre><code>df = pd.melt(df, var_name='Day')
  
            Day    value
  0      Monday   Monday
  1      Monday     None
  2      Monday     None
  3      Monday     None
  4     Tuesday     None
  5     Tuesday     None
  6     Tuesday  Tuesday
  7     Tuesday     None
  8   Wednesday     None
  9   Wednesday     None
  10  Wednesday     None
  11  Wednesday     None
  </code></pre>