精华内容
下载资源
问答
  • 在报表页面利用HTML控件添加DIV层,并设置DIV的宽度和高度,通过JS获取页面中的列表或交叉表对象,列表和交叉表均为table控件,通过JS对表的行或列进行操作。
  • 针对交叉表导出到excel的功能函数,使用环境pb
  • MySQL交叉表实现分享

    2020-09-11 02:28:50
    在某些数据库中有交叉表,但在MySQL中却没有这个功能,但网上看到有不少朋友想找出一个解决方法,特发贴集思广义
  • pandas - 交叉表与透视表

    千次阅读 2019-03-12 11:45:47
    应用crosstab和pivot_table实现交叉表与透视表 应用:股票的每日涨跌跟星期几关系大 1 交叉表与透视表什么作用 探究股票的涨跌与星期几有关? 以下图当中表示,week代表星期几,1,0代表这一天股票的涨跌幅是好...

    学习目标

    • 应用crosstab和pivot_table实现交叉表与透视表
    • 应用:股票的每日涨跌跟星期几关系大

    1 交叉表与透视表什么作用

    探究股票的涨跌与星期几有关?

    以下图当中表示,week代表星期几,1,0代表这一天股票的涨跌幅是好还是坏,里面的数据代表比例

    可以理解为所有时间为星期一等等的数据当中涨跌幅好坏的比例

    2 使用crosstab(交叉表)实现上图

    • 交叉表:交叉表用于计算一列数据对于另外一列数据的分组个数(寻找两个列之间的关系)
    pd.crosstab(value1, value2)

    2.1 案例分析:

    • 准备两列数据,星期数据以及涨跌幅是好是坏数据
    • 进行交叉表计算
    # 寻找星期几跟股票张得的关系
    # 1、先把对应的日期找到星期几
    date = pd.to_datetime(data.index).weekday
    data['week'] = date
    # 2、假如把p_change按照大小去分个类0为界限
    data['posi_neg'] = np.where(data['p_change'] > 0, 1, 0)
    
    # 通过交叉表找寻两列数据的关系
    count = pd.crosstab(data['week'], data['posi_neg'])
    

    但是我们看到count只是每个星期日子的好坏天数,并没有得到比例,该怎么去做?

    • 对于每个星期一等的总天数求和,运用除法运算求出比例
    # 算数运算,先求和
    count.sum(axis=1).astype(np.float32)
    
    pro = count.div(count.sum(axis=1).astype(np.float32), axis=0)
    

    2.2 为了更好的看出效果

    使用plot画出这个比例,使用一直stacked的柱状图

    pro.plot(kind='bar', stacked=True)
    plt.show()
    

    3 使用pivot_table(透视表)实现上述功能

    使用透视表,刚才的过程更加简单

    • DataFrame.pivot_table([], index=[])
    # 通过透视表,将整个过程变成更简单一些
    data.pivot_table(['posi_neg'], index=['week'])
    

     

    展开全文
  • 交叉表

    2006-07-21 12:22:00
    交叉一般来讲是分组统计的一种,形式更复杂,显示更清淅,但数据库本身并没有提供实现交叉表功能,自己创建交叉表不仅要对过程、游标、临时表、动态SQL等非常熟悉,而且思路也要清淅,本例以PUBS.DBO.SALES表的...
    交叉一般来讲是分组统计的一种,形式更复杂,显示更清淅,但数据库本身并没有提供实现交叉表的功能,自己创建交叉表不仅要对过程、游标、临时表、动态SQL等非常熟悉,而且思路也要清淅,本例以PUBS.DBO.SALES表的数据做样本:
    
    CREATE PROCEDURE UP_TEST(
    @T1 VARCHAR(30),@T2 VARCHAR(30),
    @T3 VARCHAR(30),@T4 VARCHAR(30)) AS
    --T1 表名,T2,T3是交叉表的两上分类字段,T4是汇总字段
    --T2是行字段,T3列字段
    BEGIN
    DECLARE @SQL VARCHAR(7999),@FIELD VARCHAR(30)
    SELECT @SQL='SELECT DISTINCT '+@T3+' FROM '+@T1
    CREATE TABLE #FIELD(FIELD VARCHAR(30))
    --将列字段提取到临时表#FIELD中
    INSERT INTO #FIELD EXEC(@SQL)
    SELECT @SQL='CREATE TABLE CROSS_TEST('+@T2+' VARCHAR(30),'
    DECLARE CUR_FIELD CURSOR LOCAL FOR SELECT * FROM #FIELD
    OPEN CUR_FIELD
    FETCH CUR_FIELD INTO @FIELD
    WHILE @@FETCH_STATUS=0 BEGIN
    SELECT @FIELD='['+@FIELD+']'
    SELECT @SQL=@SQL+@FIELD+' DECIMAL(8,2) DEFAULT 0,'
    FETCH CUR_FIELD INTO @FIELD
    END
    SELECT @SQL=LEFT(@SQL,LEN(@SQL)-1)+')'
    --创建临时交叉表CROSS_TEST
    EXEC(@SQL)
    SELECT @SQL='INSERT INTO CROSS_TEST('+@T2+') SELECT DISTINCT '+@T2+' FROM '+@T1
    --将行数据存入交叉表#CROSS_TEST
    EXEC(@SQL)
    --创建分组数据表TEMP
    SELECT @SQL='CREATE TABLE TEMP('+@T2+' VARCHAR(30),'+@T3+' VARCHAR(30),'+@T4+' DECIMAL(8,2))'
    EXEC(@SQL)
    --将交叉汇总数据放入交叉表
    SELECT @SQL='SELECT '+@T2+','+@T3+', SUM(QTY) QTY FROM '+@T1 +' GROUP BY '+@T2+','+@T3
    INSERT INTO TEMP EXEC(@SQL)
    --将汇总数据写入交叉表
    DECLARE CUR_SUM CURSOR LOCAL FOR SELECT * FROM TEMP
    DECLARE @F1 VARCHAR(30),@F2 VARCHAR(30),@QTY DECIMAL(8,2),@Q1 VARCHAR(30)
    OPEN CUR_SUM
    FETCH CUR_SUM INTO @F1,@F2,@QTY
    WHILE @@FETCH_STATUS=0 BEGIN
    SELECT @F2='['+@F2+']',@Q1=CAST(@QTY AS VARCHAR(30))
    SELECT @SQL='UPDATE CROSS_TEST SET '+@F2+'='+@Q1+' WHERE '+@T2+'='''+@F1+''''
    EXEC(@SQL)
    FETCH CUR_SUM INTO @F1,@F2,@QTY
    END
    CLOSE CUR_SUM
    SELECT * FROM CROSS_TEST
    DROP TABLE TEMP
    DROP TABLE CROSS_TEST
    DROP TABLE #FIELD
    END
    --------------------------------------------------------
    EXEC UP_TEST 'SALES','TITLE_ID','STOR_ID','QTY'
    说明:字段加中括号为了处理字段中含有特殊字符,值得注意得是要实现交叉表的表必须有两个分类,本例只支持分类字段的数据类型是字符型的,最大的问题就是高亮显示这行的WHERE条件啦,字符类型字段查询时条件必须加单引号,如果是数值类型就可以直接写,所以数值类型的分类字段更容易实现一些,更可以融合在一个过程中。通常大家看到的交叉表都有行汇总与列汇总等信息,本例就没有实现,最后一点工作大家自己练练手吧。
     
    展开全文
  • C语言课程设计 三向十字交叉链表 insert功能和delete功能 modify功能
  • Tableau交叉表图表

    2020-10-25 18:20:13
    交叉表图表也称为文本表,以文本形式显示数据。 交叉表图表采用一个或多个维度以及一个或多个度量。此图表还可以显示度量字段值的不同计算,例如总百分比,运行总计等。 例如,如果要查找每个区域中每个细分的销售...

    交叉表图表也称为文本表,以文本形式显示数据。

    交叉表图表采用一个或多个维度以及一个或多个度量。此图表还可以显示度量字段值的不同计算,例如总百分比,运行总计等。

    例如,如果要查找每个区域中每个细分的销售数量,请考虑数据源:Sample-Superstore。要使用下面的可用订单日期显示每年的数据,请参阅创建交叉表图表的一些步骤。

    第1步:将维度订单日期拖到列架中。

    第2步:此外,将维度RegionSegment 拖动到行架子中。

    第3步:将度量Sales 拖到“标记(Labels)”窗格下的“标签(Marks)”功能区中。

    下面的屏幕截图显示了交叉表图表。

    交叉表图表

    在交叉表图表中,可以通过将“销售(Sales)”字段拖放到“颜色”工具架中来获取编码的颜色值。

    颜色编码根据度量值显示颜色强度。最高值具有较暗的颜色阴影,较小的值具有较浅的颜色阴影,如下面的屏幕截图所示:

    此外,除了颜色编码之外,还可以将计算应用于度量值。

    例如,可以应用计算来查找每行中的销售总额百分比,而不仅仅是“销售(Sales)”字段。

    1.右键单击“标记(Marks)”功能区中的“销售(Sales)”字段。
    2.然后选择“添加表计算(Add Table Calculation)”选项。

    3.打开“表计算(Table Calculation)”窗口。
    4.然后,选择“总计百分比(Percent of Total)”选项作为计算类型,选择“表格(交叉)”选项作为计算使用。

    总计百分比

    完成上述步骤后,将获得使用百分比值创建的交叉表图表,如下面的屏幕截图所示:

    交叉表图表


     

    展开全文
  • Pandas透视表和交叉表

    万次阅读 多人点赞 2017-09-25 16:15:27
    参考:《利用Python进行数据分析》 透视表与交叉表的介绍和例子

    参考:《利用Python进行数据分析》

    透视表

    透视表(pivot table)是各种电子表格程序和其他数据分析软件中一种常见的数据汇总工具。它根据一个或多个键对数据进行聚合,并根据行和列上得分组建将数据分配到各个矩形区域中。在Python和pandas中,可以通过本章所介绍的groupby功能以及(能够利用层次化索引的)重塑运算制作透视表。DataFrame有一个pivot_table方法,此外还有一个顶级的pandas.pivot_table函数。除了能为groupby提供便利之外,pivot_table还可以添加分项小计(也叫margins)。

    这里写图片描述
    回到如上图所示的小费数据集,假设我想要根据sex和smoker计算分组平均数(pivot_table的默认聚合类型),并将sex和smoker放到行上:

    # 方法一:使用groupby
    tips.groupby(['sex', 'smoker']).mean()
    # 方法二:使用pivot_table
    tips.pivot_table(row=['sex', 'smoker'])

    结果是一样的(严格来说,列的排列顺序不一样):
    这里写图片描述
    现在假设我们只想聚合tip_pct和size,而且想根据day进行分组。我将smoker放到列上,把day放到行上:

    tips.pivot_table(values=['tip_pct', 'size'], index=['sex', 'day'], columns='smoker')

    这里写图片描述
    可以看到,pivot_table()函数给我们提供了很多参数,用来选择用那些数据创建透视表,以及调整创建透视表之后的行和列。
    还可以对这个表作进一步处理,传入margins=True添加加分小计。这将会添加标签为ALL的行和列,其值对应于单个等级中所有数据的分组统计。在下面这个例子中,ALL值为平均数:不单独考虑烟民与非烟民(ALL列),不单独考虑行分组两个级别中的任何单项(ALL行)。换句话说:就是下面的ALL行和右边的ALL列只统计对应的列和行

    tips.pivot_table(values=['tip_pct', 'size'], index=['sex', 'day'], columns='smoker', margins=True)

    这里写图片描述
    要使用其他的聚合函数,将其传给参数aggfunc即可。例如,使用count或len可以得到有关分组大小的交叉表:

    tips.pivot_table('tip_pct', index=['sex', 'smoker'], columns='day', aggfunc=len, margins=True)

    这里写图片描述

    pivot_table的参数

    aggfunc : function or list of functions, default numpy.mean
    If list of functions passed, the resulting pivot table will have hierarchical columns whose top level are the function names (inferred from the function objects themselves)
    fill_value : scalar, default None
    Value to replace missing values with
    margins : boolean, default False
    Add all row / columns (e.g. for subtotal / grand totals)

    parametersintroduction
    dataDataFrame
    values待聚合的列的名称。默认聚合所有数值列
    index用于分组的列名或其他分组键,出现在结果透视表的行
    columns用于分组的列名或其他分组键,出现在结果透视表的列
    aggfunc聚合函数或函数列表,默认为‘mean’。可以使任何对groupby有效的函数
    fill_value用于替换结果表中的缺失值
    dropnaboolean,默认为True
    margins_namestring,默认为‘ALL’,当参数margins为True时,ALL行和列的名字

    交叉表:crosstab

    交叉表(cross-tabulation, 简称crosstab)是一种用于计算分组频率的特殊透视表。下面这个范例数据很典型,取自交叉表的Wikipedia页:

    data = pd.DataFrame({'Sample': range(1, 11), 'Gender': ['Female', 'Male', 'Female', 'Male', 'Male', 'Male', 'Female', 'Female', 'Male', 'Female'], 
                        'Handedness': ['Right-handed', 'Left-handed', 'Right-handed', 'Right-handed', 'Left-handed', 'Right-handed', 'Right-handed', 'Left-handed', 'Right-handed', 'Right-handed']})

    这里写图片描述
    假设我们想要根据性别和用手习惯对这段数据进行统计汇总。虽然可以用pivot_table()实现该功能,但是pandas.crosstab()函数会更方便:

    # 方法一:用pivot_table
    # 其实我觉的一点都不麻烦ε=(´ο`*)))唉
    data.pivot_table(index=['Gender'], columns='Handedness', aggfunc=len, margins=True)
    # 方法二:用crosstab
    pd.crosstab(data.Gender, data.Handedness, margins=True)

    这里写图片描述
    可以看到,crosstab()的前两个参数可以是数组、Series或数组列表。再比如对小费数据集:

    pd.crosstab([tips.time, tips.day], tips.smoker, margins=True)

    这里写图片描述

    总结

    1. 透视表pivot_table()是一种进行分组统计的函数,参数aggfunc决定统计类型;
    2. 交叉表crosstab()是一种特殊的pivot_table(),专用于计算分组频率。
    展开全文
  • 超级交叉表

    2007-03-01 09:33:00
    文档式报表SQLDOC发布了2.1.0版。...新版本中包含了三个数据计算模型:分页循环表、交叉表、分组表。SQLDOC中的交叉表与其它报表中的交叉表最大区别在于,SQLDOC的交叉表...交叉表是一个功能强大的数据展示组件。支持上边
  • Pandas中透视表和交叉表

    千次阅读 2020-07-01 12:07:46
    一、 什么是透视表? 二、为什么要使用pivot_table? 三、pivot_table api认识 四、如何使用pivot_table? 五、pivot_table vs. groupby 六、轴转换(透视功能)unstack 七、交叉表crosstab 八、小结
  • MySQL交叉表

    万次阅读 热门讨论 2009-06-19 21:10:00
    在某些数据库中有交叉表,但在MySQL中却没有这个功能,但网上看到有不少朋友想找出一个解决方法,特发贴集思广义。http://topic.csdn.net/u/20090530/23/0b782674-4b0b-4cf5-bc1a-e8914aaee5ab.html?96198现整理解法...
  • 交叉分析:通常用于分析两个或两个以上,分组变量之间的变量关系,以及交叉表形式进行变量间关系的对比分析 定量、定量分组交叉 定量、定性分析交叉 定性、定性分组交叉 1 交叉统计函数 pivot_table(values,...
  • 在数据分析中,常常需要用到数据透视表和交叉表,下面介绍pandas.DataFrame.pivot_table数据透视表和pandas.DataFrame.crosstab交叉表的用法和区别。 一、数据透视表 数据透视表用来做数据透视,可以通过一个或多...
  • Python数据分析 | (31) 透视表和交叉表

    千次阅读 2019-10-11 12:33:19
    2. 交叉表:crosstab 3. 总结 1. 透视表 透视表(pivot table)是各种电子表格程序和其他数据分析软件中一种常见的 数据汇总工具。它根据一个或多个键对数据进行聚合,并根据行和列上的分 组键将数据分配到各个矩形...
  • 1、实现了奇偶行不同颜色显示; 2、实现了对长文本列文本的换行; 3、创建公式,实现字符串的连接; 4、实现分页功能; 5、实现交叉表; 6、读取图片。
  • 这里随手记录一下小功能,在交叉表显示占比,之前遇到过一个问题,
  • SQL动态交叉表

    千次阅读 2008-06-15 21:21:00
    动态交叉表就是列表可以根据表中数据的情况动态创建列。 动态查询不能使用Select语句实现,它可以利用存储过程实现。思路是: 首先检索列头信息,形成一个游标,然后遍历游标,将上面静态交叉表实现过程中使用Case...
  • Pandas数据处理_分组聚合_透视表交叉表
  • 交叉表百分比之实现

    千次阅读 2008-08-18 15:02:00
    交叉表除了实现交叉汇总外,亦有计算百分比(横向、纵向)的功能。之前的文章中已经对交叉表的制作方法做了详细的说明,以下只针对百分比的情况进一步说明一下。 假设我们有以下数据表, 建一个如下的交叉表,...
  • 请问下我定义了一个交叉表,显示如图所示 ![图片说明](https://img-ask.csdn.net/upload/201511/08/1446913441_572852.png) 横向和纵向的数值不对! 我设置如下图: ![图片说明]...
  • SQL实现交叉表的方法

    千次阅读 2008-01-17 16:23:00
    交叉一般来讲是分组统计的一种,形式更复杂,显示更清淅,但数据库本身并没有提供实现交叉表功能,自己创建交叉表不仅要对过程、游标、临时表、动态SQL等非常熟悉,而且思路也要清淅,本例以PUBS.DBO.SALES表的...
  • WEBI交叉表与Dashboard解决方法

    千次阅读 2015-07-08 08:58:30
    WEBI交叉表与Dashboard解决方法  BI WS是一个很好的功能,甚至有些BI顾问将其称为革命性的。因为它允许我们将WEBI的某一个块儿作为web service发布。可是它有一个很明显的缺点,就是需要预先知道WEBI块的...
  • 内置“交叉表功能的问题在于它没有考虑丢失的数据。 例如,给定数据: xy 1 0 1 1 1 1 2 0 2 1 4 0 4 0 这应该给出一个列联表: 1 2 1 1 0 0 <- 没有 x=3 的数据2 0 但是,内置函数“crosstab”会给出答案...
  • 交叉销售功能介绍-功能

    千次阅读 2016-02-24 17:13:34
    交叉销售的功能在业务端完全在于销售凭证。当创建销售订单时,SAP系统会根据订单中的物料检索条件记录,如果找到,就会弹出一个窗口用来展示相关的物料,以及这些物料的价格和可用性信息。在上一篇blog中,我们提到...
  • Excel二维交叉表恢复为一维表

    千次阅读 2012-06-29 10:54:43
    工作中遇到这样的问题,收到Excel二维交叉表(数据透视表的结果,但已经保存为普通Excel),根据业务需要将其再次恢复为一维表。 如果数据量小的话,简单的复制剪切就可以了,如果数据量大的话,那么太繁琐了。  ...
  • 也可以直接过来       参考文献:http://blog.sina.com.cn/s/blog_63ac9eda0101bx5k.html   http://baijiahao.baidu.com/s?id=1594198128865683505...
  • 对列表、交叉表进行拼接,在实际开发中也是很常见的,对于某些业务需求或者性能、
  • MySQL交叉表:纵向数据显示为横向

    千次阅读 2017-09-06 18:45:36
     最近在处理一些数据,要实现纵向数据横向显示的效果,在百度花费多个小时东征西伐南讨北战之后,... 在某些数据库中有交叉表,但在MySQL中却没有这个功能,但网上看到有不少朋友想找出一个解决方法,特发贴集思

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 91,243
精华内容 36,497
关键字:

交叉表的功能