Python 如何将一个数据帧与另一个不同大小的数据帧分开

Python 如何将一个数据帧与另一个不同大小的数据帧分开,python,pandas,dataframe,division,Python,Pandas,Dataframe,Division,我得到了这个数据帧 print(tablaFrecuencias) i=gramos 100 120 150 170 190 200 0 Manzanas 2000 1450 1000 550 0 0 1 Mango 0 250 750 2000 1000 0 2 Pera 0 0 0 350 650 1000 我必须得到每个

我得到了这个数据帧

print(tablaFrecuencias)
       i=gramos   100   120   150   170   190   200
    0  Manzanas  2000  1450  1000   550     0     0
    1     Mango     0   250   750  2000  1000     0
    2      Pera     0     0     0   350   650  1000
我必须得到每个细胞的概率,所以我得到了这个新的

totalFrutas = pd.DataFrame(totalFrutas)
print(totalFrutas)
     0
0  5000
1  4000
2  2000
现在我想把第一个分成第二个,就像这样

2000/5000 1450/5000...
0/4000 250/4000...
0/2000 0/2000...
试着这样做,但它给了我这个

probabilidadCardinalidad = tablaFrecuencias.div(totalFrutas, axis=0)
print(probabilidadCardinalidad)
    0  100  120  150  170  190  200 i=gramos
0 NaN  NaN  NaN  NaN  NaN  NaN  NaN      NaN
1 NaN  NaN  NaN  NaN  NaN  NaN  NaN      NaN
2 NaN  NaN  NaN  NaN  NaN  NaN  NaN      NaN
这是我的全部代码

tablaFrecuencias = pd.read_csv("BY.csv",header = 0)

totalFrutas = tablaFrecuencias.sum(axis=1)
print(totalFrutas)
totalFrutas1 = totalFrutas.sum(axis=0)
print(totalFrutas1)

probabilidadFruta = totalFrutas.div(totalFrutas1)

totalFrutas = pd.DataFrame(totalFrutas)
print(totalFrutas)

x = tablaFrecuencias.select_dtypes('int').columns.tolist()
tablaFrecuencias[x] = 
tablaFrecuencias.select_dtypes('int').div(totalFrutas.values)
print(tablaFrecuencias)

首先,使用仅选择
int
列。然后使用除以
索引

In [96]: x = tablaFrecuencias.select_dtypes('int').columns.tolist()
In [98]: tablaFrecuencias[x] = tablaFrecuencias.select_dtypes('int').div(totalFrutas.values)

In [99]: tablaFrecuencias
Out[99]: 
   i=gramos  100     120     150    170    190  200
0  Manzanas  0.4  0.2900  0.2000  0.110  0.000  0.0
1     Mango  0.0  0.0625  0.1875  0.500  0.250  0.0
2      Pera  0.0  0.0000  0.0000  0.175  0.325  0.5

你好,Juancho,你在Stackoverflow,这个问题更适合西班牙语的Stackoverflow(),请在该网站上提问。我投票结束这个问题,因为该网站只接受
英语
的问题。我更改它,也许你可以帮我结束it@JuanchoPancho当然同时,你也可以在
英语中更改标题。我复制了相同的代码,结果是i=gramos 100 120 150 170 190 200 0 Manzanas 2000 1450 1000 550 0 0 1 Mango 0 250 750 2000 1000 0 2 Pera 0 0 350 650 1000 first TablafRecurcecias dataframei添加了完整的代码你能试着运行它吗?它的python 3.8有效吗在ubuntu上,我不知道为什么它不在windows上,谢谢兄弟