Python &引用;“熊猫交叉表”;边缘行为

Python &引用;“熊猫交叉表”;边缘行为,python,pandas,dataframe,nan,crosstab,Python,Pandas,Dataframe,Nan,Crosstab,我对Pandas交叉表的边际小计感到困惑 例如,将df1和df2设为数据帧: df1 = pd.DataFrame({1: [2], 'foo': 'bar'}) df2 = pd.DataFrame({'1': [2], 'foo': 'bar'}) 打印(df1)和打印(df2)产生相同的结果: 1 foo 0 2 bar 将页边距设置为True的Pandas交叉表函数产生以下结果: pd.crosstab(df1[1], df2['foo'], margins = True

我对Pandas交叉表的边际小计感到困惑

例如,将df1和df2设为数据帧:

df1 = pd.DataFrame({1: [2], 'foo': 'bar'})
df2 = pd.DataFrame({'1': [2], 'foo': 'bar'})
打印(df1)和打印(df2)产生相同的结果:

   1  foo
0  2  bar
将页边距设置为True的Pandas交叉表函数产生以下结果:

pd.crosstab(df1[1], df2['foo'], margins = True)                                                                                                       
 
1    2  All
foo        
bar  1  NaN
All  0  1.0
如果有人能解释一下发生了什么我会很感激的?字典、数据帧结构或交叉表函数调用中是否有我不理解的内容

pd.crosstab(df2['1'], df2['foo'], margins = True)                                                                                                     
 
foo  bar  All
1            
2      1    1
All    1    1
pd.crosstab(df1['foo'], df1[1],  margins = True)                                                                                                      
 
1    2  All
foo        
bar  1    1
All  0    1