【问题标题】:R & Excel: Creating Pivot Tables & SlicersR & Excel:创建数据透视表和切片器
【发布时间】:2017-11-02 13:05:33
【问题描述】:

我们的业务用户希望我们创建分析背后的数据导出。 AVP 想知道我们是否可以对数据进行切片,以便用户可以按照他们想要的任何方式过滤数据。 Excel 切片器由数据透视表支持,因此我必须能够首先在 Excel 工作簿中创建数据透视表。

我可以轻松地将数据从 R 导出到 Excel。我似乎找不到支持创建数据透视表或切片器的 R 包。这样的包存在吗?或者这只是超出了目前任何可用软件包的范围?

【问题讨论】:

    标签: r excel


    【解决方案1】:

    这是一个老问题,但万一有人来到这里仍然需要核心问题的答案:

    我可以轻松地将数据从 R 导出到 Excel。我似乎找不到支持创建数据透视表或切片器 [在 Excel 中] 的 R 包。有这样的包吗?

    是的,感谢 Chris Bailiss。查看包pivottabler,还有一个很棒的小插图演练here

    【讨论】:

    【解决方案2】:

    R 中提供这些功能的包很少。我建议你使用 rpivotTabledplyr。这是我经常使用的两个包。

    你可以详细研究这些。

    https://cran.r-project.org/web/packages/rpivotTable/rpivotTable.pdf

    【讨论】:

    • rpivotTable 使用 JavaScript 在浏览器中呈现数据透视表。我的用户想要下载包含数据的 Excel 工作簿。
    • 您好,我已经发布了另一个答案,请检查是否有帮助。
    【解决方案3】:

    嗨,迈克,我创建了一个数据集,看看如何使用 reshape 包生成枢轴。这可以下载为 excel/csv。希望对你有帮助

    ID<-c(2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023)

    type<-c('Spices','Spices','Fruit','Fruit','Fruit','Spices','Spices','Spices','Spices','Spices','Fruit','Fruit','Spices','Fruit','Fruit','Fruit','Fruit','Spices','Fruit','Fruit')

    state<-c('New Jersey','New Jersey','New Jersey','New Jersey','New Jersey','New Jersey','Florida','Michigan','Michigan','New Jersey','New Jersey','New Jersey','New Jersey','New Jersey','New Jersey','Florida','Michigan', 'Michigan','Florida','Florida')

    price<-c (1442,639,71,22,1185,508,434,24,528,8,41,82,2994,385,545,1850,2966,31,536,42)
    
    data=data.frame(ID,type,state,price)
    
    library(reshape)
    
    data.m=melt(data, id=c(1:4), measure=c(4))
    
    df1 <-cast(data.m, ID~type+value, sum)
    

    #for adding grand total

    df2<- cast(data.m, ID~type+value, sum, margins=c("grand_row"))
    
    #for adding filter
    
    df3 <- cast(data.m, ID~type+value, sum, margins=c("grand_row"),subset=state=="Florida")
    

    df1、df2 和 df3 是枢轴。

    【讨论】:

    • 这是否真的创建了一个可以与 Excel 切片器 一起使用的 Excel 数据透视表?还是只是转储到 Excel 中的预转换数据?我需要 Excel 中的内置数据透视表和切片器功能。
    • 是的,你需要这样做。
    猜你喜欢
    • 2019-06-20
    • 2014-03-27
    • 2020-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多