标签: pivot-table

在没有聚合的情况下在Excel中旋转,以显示文本,而不是数字?

假设我有一个这样的表格:

Country Region  Mytext
USA     North   a
USA     South   b
Brasil  North   c
Brasil  South   d
Run Code Online (Sandbox Code Playgroud)

如何在Excel中获得这样的支点?

Country  North         South
USA      a             b
Brasil   c             d
Run Code Online (Sandbox Code Playgroud)

如果'mytext'是一个数字,我可以做一个数据透视表:因为每个国家和地区组合只有一行,min = max = sum = avg,这些聚合函数中的任何一个实际上都会显示结果我想要.

但是当我想要的字段是非数字时呢?使用Python的pandas库,我甚至可以在非数字字段上使用dataframe.pivot()方法,但我还没有找到在Excel中执行相同操作的方法.我可以将一个数字关联到每一行,在Excel中执行数据透视以显示该数字,然后执行查找以获取相关文本,但对于应该真正更容易的事情来说,这似乎是一个相当复杂的过程!

excel pivot pivot-table

12
推荐指数
1
解决办法
8万
查看次数

将总行添加到 pandas DataFrame groupby

我知道这个链接,但我没能解决我的问题。

我有以下数据帧pandas.DataFrame.groupby().sum()

                                                          Value
Level      Company         Item
    1            X            a                             100
                              b                             200
                 Y            a                              35
                              b                             150
                              c                              35
    2            X            a                              48
                              b                             100
                              c                              50
                 Y            a                              80
Run Code Online (Sandbox Code Playgroud)

并想为我必须获得的每个索引级别添加总行数:

                                                          Value
Level      Company         Item
    1            X            a                             100
                              b                             200
                          Total                             300
                 Y            a                              35
                              b                             150
                              c                              35
                          Total                             520
             Total                                          820
    2            X            a                              48
                              b                             100
                              c                              50
             Total                                          198
                 Y            a                              80
                          Total                              80
               Total                                        278
Total                                                      1098
Run Code Online (Sandbox Code Playgroud)

就像要求的一样

level = …
Run Code Online (Sandbox Code Playgroud)

python group-by pivot-table python-3.x pandas

12
推荐指数
2
解决办法
2万
查看次数

Pivot计算公式:SUM(Field1)/ AVG(Field2)

我有一个简单的表,其中包含一些数量和间隔,以秒为单位和产品名称.

Month | Product | Amount | Interval in sec
------------------------------------------
05-'12| Prod A  | 10     | 5
05-'12| Prod A  | 3      | 5
05-'12| Prod B  | 4      | 5
05-'12| Prod C  | 13     | 5
05-'12| Prod C  | 5      | 5
Run Code Online (Sandbox Code Playgroud)

从这个表中我得到了一个数据透视表,其中包含SUM(金额),AVERAGE(以秒为单位的间隔)按月和产品.

Month | Product | SUM of Amount | AVG of Interval in sec
--------------------------------------------------------
05-'12| Prod A  | 13            | 5
05-'12| Prod B  | 4             | 5
05-'12| Prod C  | 18 …
Run Code Online (Sandbox Code Playgroud)

excel pivot-table calculated-columns

11
推荐指数
2
解决办法
6万
查看次数

数据透视表显示值,而不是值的总和

我想要显示一个数据透视表,并向它显示实际值,每行一个,而不是值的总和.例如

Name    Jan   Feb   Mar   Apr
Bob     12    10          4
        3     5      
James   2     6     8     1
                    15
Run Code Online (Sandbox Code Playgroud)

等等

我的出发点是有三列:Name,ValueMonth.

这可能而不必做一些完全不同的事情吗?

excel if-statement pivot-table excel-2007 excel-formula

11
推荐指数
1
解决办法
24万
查看次数

如何在我的数据透视表中添加加权平均值?

我想知道如何在我的数据透视表中添加加权平均值.实际上,我需要做以下计算:SUM(col1 * col2)/SUM(col2).

我试图通过使用计算字段选项来做到这一点但是当我输入我的公式时,我只有以下结果作为输出:SUM((col1 * col2)/col2)它等于SUM(col1).

excel pivot-table

11
推荐指数
1
解决办法
5万
查看次数

Excel数据透视表 - 计算总和的平均值

我确信这很简单,但是如何获得数据透视表以显示计算的字段总数的平均值?在简化示例中,我已过滤掉基金x1,数据透视表显示每人剩余资金的总和.现在我该怎样得到一个平均的人(因此,手工计算,三分之三千三百)?

我试图用一个计算字段,但无法弄清楚它是如何工作的,因为分母会改变基于有多少人会拥有我过滤的资金.如果我使用计算字段内的平均值,它会回到平均资金.

我尝试将计算放在数据透视表之外,这是有效的,但当然,当我过滤时,我的计算字段不再与数据透视表数据相邻,而只是在工作表上自行浮动.

TIA.

例

这里的每个请求是字段列表 - 如果我尝试在值框中添加"平均金额",它会平均基金金额,而不是每人的基金金额.:

在此输入图像描述

excel pivot-table

11
推荐指数
1
解决办法
2万
查看次数

使用多索引列展平DataFrame

我想将从数据透视表派生的Pandas DataFrame转换为行表示,如下所示.

这就是我所在的地方:

import pandas as pd
import numpy as np
df = pd.DataFrame({
    'goods': ['a', 'a', 'b', 'b', 'b'],
    'stock': [5, 10, 30, 40, 10],
    'category': ['c1', 'c2', 'c1', 'c2', 'c1'],
    'date': pd.to_datetime(['2014-01-01', '2014-02-01', '2014-01-06', '2014-02-09', '2014-03-09'])
})
# we don't care about year in this example
df['month'] = df['date'].map(lambda x: x.month)
piv = df.pivot_table(["stock"], "month", ["goods", "category"], aggfunc="sum")
piv = piv.reindex(np.arange(piv.index[0], piv.index[-1] + 1))
piv = piv.ffill(axis=0)
piv = piv.fillna(0)
print piv
Run Code Online (Sandbox Code Playgroud)

结果

stock            
goods        a       b    
category …
Run Code Online (Sandbox Code Playgroud)

python pivot-table pandas

11
推荐指数
2
解决办法
2万
查看次数

如何防止数据透视图成为工作表副本上的常规图表?

使用Excel 2010,我编写了一些VBA来将选定的工作表从主工作簿复制到客户端工作簿.该代码可以很好地复制具有与数据关联的数据和数据透视表的数据表,以及具有一个或多个数据透视图的图表工作表到新工作簿.

问题是在目标工作簿中,图表不再是数据透视图,它们是常规图表,其源数据范围是空白的.Master PivotChart的源数据已填写,但显示为灰色,因此无法编辑.

将工作表从一个工作簿复制到另一个工作簿(在此行XLMaster.Sheets(SlideRS.Fields(2).Value).Copy After:=XLClinic.Sheets(XLClinic.Sheets.Count):)时会立即出现此问题,但我将包含该调用的代码Subs.当它到达那些线时,图表已经被打破

问题是三部分:

  1. 我可以阻止数据透视图转换为副本中的常规图表吗?即是否有.Copy我错过的旗帜/场景?
  2. 如果没有,我可以通过某种方式再次将图表更新为数据透视图cchart.Chart.PivotLayout.PivotTable = mchart.Chart.PivotLayout.PivotTable吗?
  3. 如果失败了,那么在复制的工作表中从头开始创建数据透视图的最佳方法是什么?

笔记:

  1. 这些是标准的Excel数据透视表,我没有使用PowerPivot.不过,我对此持开放态度,如果能解决这个问题的话.刚刚对PowerPivot进行了一些阅读,我认为它不会对我有所帮助,但是,我再次接受建议.
  2. 回应Jens的评论,原始数据和数据透视位于一张纸上,而数据透视位于第二张纸上.

这是代码.除了复制具有完整数据透视图的工作表作为数据透视图之外,它的工作效果非常好.

  While Not SlideRS.EOF                                                   'loop through all the supporting data sheets for this graph sheet
    If SlideRS.Fields(1) <> SlideRS.Fields(2) Then                        'the worksheet depends on something else, copy it first
      If InStr(1, UsedSlides, SlideRS.Fields(2)) = 0 Then                 'if the depended upon slide is not in the list …
Run Code Online (Sandbox Code Playgroud)

excel vba pivot-table excel-vba

11
推荐指数
1
解决办法
1469
查看次数

Google表格数据透视表未更新

我有一个谷歌应用程序脚本,它将信息提交给有组织的工作表,并希望创建一个包含工作表中所有信息的数据透视表.我可以这样做,但每当我向工作表提交一行新数据时,它都不会自动包含在数据透视表中.每次提交新的数据行时,我都必须手动更改数据透视表的范围.有什么方法可以让sheet/pivot表自动包含新的数据行吗?

pivot-table google-sheets google-apps-script

11
推荐指数
2
解决办法
2万
查看次数

Pandas pivot_table,按列排序值

我是熊猫的新用户,我喜欢它!

我正在尝试在Pandas中创建一个数据透视表.一旦我按照我想要的方式拥有数据透视表,我想按列对值进行排名.

我附加了Excel中的图像,因为它更容易以表格格式看到我想要实现的内容.链接到图像

我已经搜索了stackoverflow,但我找不到答案.我尝试使用.sort()但这不起作用.任何帮助将不胜感激.

提前致谢

python indexing pivot-table pandas

11
推荐指数
1
解决办法
2万
查看次数