Divide two dataframes with python
<p>I have two dataframes : df1 and df2</p>

<p>df1 : </p>

<pre><code>TIMESTAMP eq1 eq2 eq3
2016-05-10 13:20:00 40 30 10
2016-05-10 13:40:00 40 10 20
</code></pre>

<p>df2 : </p>

<pre><code>TIMESTAMP eq1 eq2 eq3
2016-05-10 13:20:00 10 20 30
2016-05-10 13:40:00 10 20 20
</code></pre>

<p>I would like to divide df1 by df2 : each column of df1 by all column of df2 to get this result df3 : </p>

<pre><code>TIMESTAMP eq1 eq2 eq3
2016-05-10 13:20:00 40/(10+10) 30/(20+20) 10/(30+20)
2016-05-10 13:40:00 40/(10+10) 10/(20+20) 20/(30+20)
</code></pre>

<p>Any idea please ?</p>

<p>You can use <a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.div.html" rel="nofollow"><code>div</code></a>, but before <a href="http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.set_index.html" rel="nofollow"><code>set_index</code></a> from both columns <code>TIMESTAMP</code>:</p>

<pre><code>df1.set_index('TIMESTAMP', inplace=True)
df2.set_index('TIMESTAMP', inplace=True)

print (df1.div(df2).reset_index())
            TIMESTAMP  eq1  eq2       eq3
0 2016-05-10 13:20:00  4.0  1.5  0.333333
1 2016-05-10 13:40:00  4.0  0.5  1.000000
</code></pre>

<p>EDIT by comment:</p>

<pre><code>df1.set_index('TIMESTAMP', inplace=True)
df2.set_index('TIMESTAMP', inplace=True)
print (df2.sum())
eq1    20
eq2    40
eq3    50
dtype: int64

print (df1.div(df2.sum()).reset_index())
            TIMESTAMP  eq1   eq2  eq3
0 2016-05-10 13:20:00  2.0  0.75  0.2
1 2016-05-10 13:40:00  2.0  0.25  0.4
</code></pre>

python pandas dataframe multiple-columns division