一.交叉表:

作用:

交叉表是一种用于计算分组频率的特殊透视图,对数据进行汇总

考察预测数据和正式数据的对比情况,一个作为行,一个作为列

案例:

医院预测病人病情:

真实病情如下数组(B:有病,M:没病)

true = np.load("./cancer_true.npy")     #load()加载数据
true

算法预测病情数据如下:

predict = np.load("./cancer_predict.npy")
predict

现在要知道预测结果有多少预测正确,多少预测失败

使用交叉表:

#使用交叉表,调用crosstab()函数。

参数如下:

['index', 'columns', 'values=None', 'rownames=None', 'colnames=None', 'aggfunc=None', 'margins=False', "margins_name='All'", 'dropna=True', 'normalize=False'],

预测结果:

pd.crosstab(index = true,columns=predict,rownames = ["确诊"],colnames = ["预测"],margins=True)

可以看到预测正确的结果有36+17个,2个漏诊,2个误诊

二.透视表:

它根据一个或多个键对数据进行聚合,并根据行和列上的分组键将数据分配到各个矩形区域中

分组查看数据,和数据库中的group by是相同的功能。

案例:

分析人的使用左右手跟情商(eq)、智商(iq)的关系

添加数据(伪造)

df =DataFrame({"HAND":np.random.randint(0,10,size = 200),"sex":np.random.randint(0,2,size = 200),"iq":np.random.randint(0,100,size =200),"eq":np.random.randint(0,100,size = 200)})
df

(部分数据)

对数据进行处理:

使用透视表:

调用pivot_table()函数

参数有:

['data', 'values=None', 'index=None', 'columns=None', "aggfunc='mean'", 'fill_value=None',
'margins=False', 'dropna=True', "margins_name='All'"],

pd.set_option("display.float_format",lambda x:"%0.1f"%(x))

pd.pivot_table(data = df,values = ["iq","eq"],index = ["HAND","sex"],aggfunc= "mean",margins = True)

通过表分析字段之间的关系。

pandas交叉表和透视表及案例分析的更多相关文章

  1. Mysql大表查询优化技巧总结及案例分析

    http://www.169it.com/article/3219955334.html     sql语句使用基本原则:1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 orde ...

  2. Java 创建、刷新Excel透视表/设置透视表行折叠、展开

    透视表是依据已有数据源来创建的交互式表格,我们可在excel中创建透视表,也可编辑已有透视表.本文以创建透视表.刷新透视表以及设置透视表的行展开或折叠为例,介绍具体的操作方法. 所需工具:Free S ...

  3. 【每日一学】pandas_透视表函数&交叉表函数

    每日一悟 [分开工作内外8小时] 前一个月,我经常把工作内的问题带到路上.地铁上.睡觉前,甚至是周末. 然而很快发现,我工作外的成就几乎没有,而工作内的进展也并不理想. 仔细想想,工作外是需要学新东西 ...

  4. Python中pandas透视表pivot_table功能详解(非常简单易懂)

    一文看懂pandas的透视表pivot_table 一.概述 1.1 什么是透视表? 透视表是一种可以对数据动态排布并且分类汇总的表格格式.或许大多数人都在Excel使用过数据透视表,也体会到它的强大 ...

  5. pandas常用操作详解(复制别人的)——数据透视表操作:pivot_table()

    原文链接:https://www.cnblogs.com/Yanjy-OnlyOne/p/11195621.html 一文看懂pandas的透视表pivot_table 一.概述 1.1 什么是透视表 ...

  6. pandas-10 pd.pivot_table()透视表功能

    pandas-10 pd.pivot_table()透视表功能 和excel一样,pandas也有一个透视表的功能,具体demo如下: import numpy as np import pandas ...

  7. C# 操作Excel数据透视表

    一.概述 数据透视表(Pivot Table)是一种交互式的表,可以进行某些计算,如求和与计数等,可动态地改变透视表版面布置,也可以重新安排行号.列标和页字段.当改变版面布置时,数据透视表也会按照新的 ...

  8. Excel 之 字符串截取、拼接、和透视表

    假设有表如下: 如何得到E列的数据(格式为模式名.表名,如PDM_DATA.T05_GMS_NAV_SPV_PCH_RDM_TRX_EVT)?如何由E列得到F列数据(从E类中截取表名)? 1. 字符串 ...

  9. Excel透视表基础之数据源、创建、基本术语、基本操作

    数据源的基本要求: 每列数据的第一行包含该列标题 不能包含空行或空列 不能包含空单元格 不能包含合并单元格 不能包含同类字段 如果包含空行.空列则删除空行和空列.如果包含空单元格则填充空单元格. 如果 ...

随机推荐

  1. MySql提示:The server quit without updating PID file(…)失败之解决办法(来源网络仅供参考)

    1.可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限 解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod ...

  2. criteria用法

    Criteria Query通过面向对象化的设计,将数据查询条件封装为一个对象.简单来讲,Criteria Query可以看作是传统SQL的对象化表示,如: Java代码   Criteria cri ...

  3. mysql 取整

    在mysql中,当处理数值时,会用到数值处理函数,如有一个float型数值2.13,你想只要整数2,那就需要下面的函数floor与round.   floor:函数只返回整数部分,小数部分舍弃.    ...

  4. ruby 字符串常用方法学习

    引用链接:http://www.blogjava.net/nkjava/archive/2010/01/03/308088.html 1,切片:silce, [ ]-----------------[ ...

  5. 右侧导航栏(动态添加数据到list)

    页面样式 <style> .scroll { position: fixed; right: 5%; top: 5em; background: #ccc; display: none; ...

  6. HDU 2899Strange fuction(模拟退火)

    题意 题目链接 求 $F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x (0 <= x <=100)$的最小值 Sol 强上模拟退火,注意eps要开大! /* */ ...

  7. Windows基础环境_安装配置教程(Windows7 64、JDK1.8、Android SDK23.0、TortoiseSVN 1.9.5)

    Windows基础环境_安装配置教程(Windows7 64.JDK1.8.Android SDK23.0.TortoiseSVN 1.9.5) 安装包版本 1)     JDK版本包 地址: htt ...

  8. SQLAlchemy的基本使用

    一.介绍 SQLAlchemy是一种ORM(Object-Relational Mapping)框架,用来将关系型数据库映射到对象上.该框架建立在DB API之上,将类和对象转化成SQL,然后使用AP ...

  9. BZOJ 4070:[APIO2015]雅加达的摩天楼 最短路

    4070: [Apio2015]雅加达的摩天楼 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 464  Solved: 164[Submit][Sta ...

  10. 如何将S/4HANA系统存储的图片文件用Java程序保存到本地

    我在S/4HANA的事务码MM02里为Material维护图片文件作为附件: 通过如下简单的ABAP代码即可将图片文件的二进制内容读取出来: REPORT zgos_api. DATA ls_appl ...