小编Ree*_*eza的帖子

汇总不同聚合级别的数据-R和tidyverse

我正在创建一堆基本状态报告,而我发现乏味的事情之一是向所有表添加总计行。我目前正在使用Tidyverse方法,这是我当前代码的一个示例。我正在寻找的是默认包含一些不同级别的选项。

#load into RStudio viewer (not required)
iris = iris

#summary at the group level
summary_grouped = iris %>% 
       group_by(Species) %>%
       summarize(mean_s_length = mean(Sepal.Length),
                 max_s_width = max(Sepal.Width))

#summary at the overall level
summary_overall = iris %>% 
  summarize(mean_s_length = mean(Sepal.Length),
            max_s_width = max(Sepal.Width)) %>%
  mutate(Species = "Overall")

#append results for report       
summary_table = rbind(summary_grouped, summary_overall)
Run Code Online (Sandbox Code Playgroud)

多次执行此操作非常繁琐。我有点想要:

summary_overall = iris %>% 
       group_by(Species, total = TRUE) %>%
       summarize(mean_s_length = mean(Sepal.Length),
                 max_s_width = max(Sepal.Width))
Run Code Online (Sandbox Code Playgroud)

仅供参考-如果您熟悉SAS,我正在寻找可通过proc中的类,方法或类型语句使用的相同类型的功能,这意味着让我可以控制汇总级别并在一个调用中获得多个级别。

任何帮助表示赞赏。我知道我可以创建自己的函数,但希望已经存在一些东西。我也希望坚持使用整洁的编程风格,尽管我对此并不感兴趣。

r group-summaries dplyr tidyverse

6
推荐指数
1
解决办法
212
查看次数

如何在SAS中绘制简单的线图

我的数据结构如下(这些只是示例数据,因为原始数据是秘密的)

id | crime   | location | crimedate
------------------------------
1  | Theft   | public   | 2019-01-04
1  | Theft   | public   | 2019-02-06
1  | Theft   | public   | 2019-02-20
1  | Theft   | private  | 2019-03-10
1  | Theft   | private  | 2019-03-21
1  | Theft   | public   | 2019-03-01
1  | Theft   | private  | 2019-03-14
1  | Theft   | public   | 2019-06-15
1  | Murder  | private  | 2019-01-04
1  | Murder  | private  | 2019-10-20
1 …
Run Code Online (Sandbox Code Playgroud)

aggregate sas timeserieschart sgplot

4
推荐指数
1
解决办法
142
查看次数

使用 docx 库打开有密码的 Word 文档

我正在尝试打开一个有密码的 word 文档。

我正在使用 docx 包 - 有点旧

from docx import opendocx, getdocumenttext
Run Code Online (Sandbox Code Playgroud)

并进一步

 document = opendocx(filename)
Run Code Online (Sandbox Code Playgroud)

我想知道 opendocx 上是否有允许它打开受密码保护的 Word 文档的选项——我知道密码。我在这里检查了 github 存储库:https : //github.com/mikemaccana/python-docx但没有看到选项。我试图避免重写代码以使用更新的包,但这可能是不可避免的。

ms-word python-2.7

3
推荐指数
1
解决办法
4890
查看次数

如何将SAS数据集转换为数据步骤

如何将我的SAS数据集转换为可以轻松粘贴到论坛中的数据集,或者交给某人复制我的数据.理想情况下,我还希望能够控制所包含的记录数量.

即我在SASHELP库中有sashelp.class,但我想在这里提供它,以便其他人可以将它作为我问题的起点.

sas

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

R - 在维护记录顺序的同时删除重复列表

我有关于一系列事件的数据,并想检查更改,因此我并不真正关心相同事件的重复。

这就是我所拥有的:

ID  Date        Item
1   1-Jan-19    A
1   5-Jan-19    A
1   8-Jan-19    B
1   15-Jan-19   A
2   1-Jan-19    A
2   5-Jan-19    A
2   8-Jan-19    B
2   15-Jan-19   B
3   1-Jan-19    B
3   5-Jan-19    A
3   8-Jan-19    B
3   15-Jan-19   A
4   1-Jan-19    A
4   5-Jan-19    A
4   8-Jan-19    A
4   15-Jan-19   B
Run Code Online (Sandbox Code Playgroud)

由此,我想要的是:

ID Sequence
1   ABA
2   AB
3   BABA
4   AB
Run Code Online (Sandbox Code Playgroud)

使用 tidyverse 我能够将所有内容放入一个列表/变量中,但我无法弄清楚如何在该步骤或单个步骤中删除重复列表。为了把它变成一个单一的变量,我使用了 mutate、group_by 和 paste0,代码如下。

任何帮助表示赞赏。

#create fake data
have = cbind(
    c(1, 1, 1, …
Run Code Online (Sandbox Code Playgroud)

r tidyverse

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

当某个子组因子为0时,按组和子组计算行数

我知道如何通过proc freq或sql 计算组和子组号.我的问题是当子组中的某些因素丢失时,我仍然希望将缺失因子显示为0.我该怎么做?例如,数据集是:

group1 group2
1      A
1      A
1      A
1      A
2      A
2      B
2      B
Run Code Online (Sandbox Code Playgroud)

我想要一个结果:

group1 group2 N
1      A      4
1      B      0
2      A      1
2      B      2
Run Code Online (Sandbox Code Playgroud)

如果我只使用默认的SAS设置,它通常会显示为

group1 group2 N
1      A      4
2      A      1
2      B      2
Run Code Online (Sandbox Code Playgroud)

但是我仍然希望结果中的第二行告诉我该类别中有0个观察值.

sas

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

PROC SQL SAS 中的长度和连接

我想在 select 语句中定义某些特定列的长度,并且想连接两列,sponsor idsponsorSAS proc sql 中的“ABC-123”。请帮助这是代码

proc sql;
select
    project_id,
    sponsor_id,

    empl_country,
    region,
    empl_dept_descr,
    empl_bu_descr,

    sponsor,
    full_name,
    mnth_name FROM Stage0;
quit;
Run Code Online (Sandbox Code Playgroud)

sas proc-sql proc

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