Python 如何计算数据帧中的条件密度?

Python 如何计算数据帧中的条件密度?,python,pandas,dataframe,data-science,probability-density,Python,Pandas,Dataframe,Data Science,Probability Density,我有一个像下面这样的数据框 振幅-13.125 |-13.125 |-11.875 |-11.875 |-11.25 |-11.25 持续时间-----------|--------|--------|--------|--------|-------- 1楠|楠|楠|楠|楠 2楠| 0.008032楠|楠|楠|楠 3 0.004016 |南|南|南| 0.004016 | 0.004016 4 0.9 |楠|楠|楠|楠 5楠|楠|楠|楠|楠 --------------------|-----

我有一个像下面这样的数据框

振幅-13.125 |-13.125 |-11.875 |-11.875 |-11.25 |-11.25
持续时间-----------|--------|--------|--------|--------|--------
1楠|楠|楠|楠|楠
2楠| 0.008032楠|楠|楠|楠
3 0.004016 |南|南|南| 0.004016 | 0.004016
4 0.9 |楠|楠|楠|楠
5楠|楠|楠|楠|楠
--------------------|--------|--------|--------|--------|--------
总和0.904016 | 0.008032 |南|南| 0.004016 | 0.004016
如何在数据框中行和列的交点处找到值?另外,我想用我找到的值除以‘sum’中的值来计算密度。 例如:


假设求和行是数据帧的最后一行:

# Divide every line except the last line by the last line
density = (df.iloc[:-1] / df.iloc[-1]).stack().to_frame('density')
结果:

                     density
duration amplitude          
2        -13.125    1.000000
3        -13.125    0.004442
         -11.250    1.000000
         -11.250    1.000000
4        -13.125    0.995558
                     density
duration amplitude          
2        -13.125    1.000000
3        -13.125    0.004442
         -11.250    1.000000
         -11.250    1.000000
4        -13.125    0.995558