首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用第一个列联表的计数值从另一个列联表生成列联表?

如何使用第一个列联表的计数值从另一个列联表生成列联表?
EN

Stack Overflow用户
提问于 2019-01-08 12:49:08
回答 1查看 131关注 0票数 0

使用pandas数据帧,我根据动物园数据集的每个特征构建了所有的联想表。列联表看起来像这样。

代码语言:javascript
复制
Domestic  Catsize  Type  Count
0            0       1     7
0            0       2     11
0            0       3     4
0            0       4     8
0            0       5     4
0            0       6     7
0            0       7     9
0            1       1     26
1            0       2     3
1            1       1     6

现在,我想从这个表创建其他偶联表,其中偶联表的值是Count列中的值。例如,Type =1的列联表如下所示(Type (T),Domestic (D) and Catsize (C))

代码语言:javascript
复制
         T       T`
      -----------------
DC    |  6    |   0   |
      -----------------
(DC)` |  33   |   46  |
      -----------------

包含这些值的输出表的计算方法为:例如:当ANDing count=7和Catsize值的值为0 (例如,组合0和1、1和0以及0和0)且类型=1时,值33的计算方式为:当类型为1时,将有两条count=7和count=26记录。这些值的总和为33。类似地,类型不等于1 (2,3,4,5,6,7)的组合0和1,1和0,以及0和0,有7个记录,它们的计数被相加(11+4+8+4+7+9+3),在右下角单元格中提供了值46。

需要对Type=2和3进行相同的计算,依此类推。

在这方面的任何帮助都将受到高度赞赏。

EN

回答 1

Stack Overflow用户

发布于 2019-01-08 12:55:32

使用-

代码语言:javascript
复制
df.pivot_table(index=['Type', 'Domestic'], columns=['Catsize'], values='Count')

输出

代码语言:javascript
复制
Catsize           0     1
Type Domestic            
1    0          7.0  26.0
     1          NaN   6.0
2    0         11.0   NaN
     1          3.0   NaN
3    0          4.0   NaN
4    0          8.0   NaN
5    0          4.0   NaN
6    0          7.0   NaN
7    0          9.0   NaN
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54085372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档