title: Ignore empty dataframe when merging
body: <p>I have four df (df1,df2,df3,df4)</p>
  
  <p>Sometimes df1 is null, sometimes df2 is null, sometimes df3 and df4 accordingly. </p>
  
  <p>How can I do an outer merge so that the df which is empty is automatically ignored? I am using the below code to merge as of now:-</p>
  
  <pre><code>df = f1.result().merge(f2.result(), how='left', left_on='time', right_on='time').merge(f3.result(), how='left', left_on='time', right_on='time').merge(f4.result(), how='left', left_on='time', right_on='time')
  </code></pre>
  
  <p>and</p>
  
  <pre><code>df = reduce(lambda x,y: pd.merge(x,y, on='time', how='outer'), [f1.result(),f2.result(),f3.result(),f4.result()])
  </code></pre>