小编jak*_*kes的帖子

查找长度等于或大于n的最新TRUE序列

我有一个如下数据:

library(dplyr)
ex <- data.frame(bool = c(rep(FALSE, 2), rep(TRUE, 3), rep(FALSE, 2), rep(TRUE, 5), 
                      FALSE, FALSE, rep(TRUE, 6), FALSE, FALSE, FALSE)) %>%
  mutate(seq = data.table::rleid(bool)) %>% 
  group_by(seq) %>% 
  mutate(n = n()) %>% 
  ungroup() %>% 
  mutate(expected_output = c(4, 4, NA, NA, NA, 4, 4, rep(NA,5), 4, 4, rep(NA, 6), rep(6, 3)))
Run Code Online (Sandbox Code Playgroud)

对于每一个FALSE我需要找到一个TRUE长度至少为最新的序列4.但是如果之前没有这样的序列(比如行1:2或者6:7),我们应该向前检查,即找到观察后出现的第一个长度为4或更长的序列.

最后一列ex包含预期输出.我怎么能这样做(充其量tidyverse)?

编辑

使用的解决方案tidyverse仍然非常受欢迎.

r dplyr tidyverse

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

在R中一个接一个地显示多个ggplot2图(如plot.lm一样)

plot.lm 有一个很好的功能,一个接一个地显示图,所以在指定时

plot(lm(rnorm(100) ~ rnorm(100, 3, 1)))
Run Code Online (Sandbox Code Playgroud)

显示第一个图并询问用户

点击返回查看下一个图:

现在我想生成30个图,因此在网格中显示它们会使它们难以阅读,而一个接一个地指定它们是非常麻烦的.我一直想知道是否有模仿plot.lm行为的功能或方法?我特别感兴趣的是兼容的功能ggplot2.

plot r ggplot2

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

在 map2 中映射 - 如何正确引用参数(purrr)

ex <- structure(list(group = c("group B", "group B", "group C", "group B","group C", "group B", "group B", "group A", "group C", "group C", "group C", "group B", "group A", "group A", "group A", "group B", "group A", "group A", "group B", "group C", "group B", "group A", "group C", "group C", "group C", "group C", "group B", "group A", "group A", "group C", "group B", "group A", "group A", "group B", "group C", "group C", "group A", "group C", "group …
Run Code Online (Sandbox Code Playgroud)

nested r purrr

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

SAS - 使用 excel 文件进行 proc 导入,dbms 无效

我有一个 .xls excel 文件(Microsoft Excel 97-2003 工作表),我想将其导入到 SAS。所以我使用了:

proc import datafile = "C:\Users\***\***\data.xls" 
        out = data dbms = EXCEL;
run;
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

错误:DBMS 类型 EXCEL 对导入无效。

我尝试过不同的 DBMS(在很多情况下我并没有真正得到区别,但只是对 EXCEL97、EXCEL4、EXCEL5、XLS 进行了猜测)。这些都没有奏效。你知道如何处理吗?

前几列如下所示:

id      status      start       end         duration   browser    browserversion   country              Age
51      complete    03/08/2016  03/08/2016  0:21:57    Chrome     65.0             1                    51
133     complete    03/08/2016  03/08/2016  0:10:07    Chrome     58.0             1                    18
1002    complete    03/08/2016  03/08/2016  0:17:57    Chrome     58.0             1                    40
Run Code Online (Sandbox Code Playgroud)

excel sas

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

在RMarkdown中更改R输出的大小

我正在使用RMarkdown准备投影仪演示,并希望在其中包含lm输出。但是默认大小太大,因此输出被裁剪,无法完全看到。如何更改选项以控制R输出的大小(或字体)?我已经看到了很多关于地块大小的选择,但是没有关于R输出的选择。

latex r beamer r-markdown

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

如何将嵌套 df 内的变量中出现次数少于 k 次的所有值设置为 0

library(tidyverse)
ex <- structure(list(group = c("Group A", "Group B", "Group C"), data = list(
structure(list(a = c(25.1, 15.1, 28.7, 29.7, 5.3, 3.4, 5.3, 
10.1, 2.4, 18, 4.7, 22.1, 9.5, 3.1, 26.5, 5.1, 24, 22.5, 
19.4, 22.9, 24.5, 18.2, 7.9, 5.3, 24.7), b = c(95.1, 51, 
100, 94.1, 47.3, 0, 50.7, 45.8, 40.7, 49.4, 51.9, 76.4, 26.7, 
19.8, 37.4, 59.4, 59.1, 60.2, 26.1, 2.8, 100, 40.7, 56.4, 
42.5, 0), c = c(39.9, 42.7, 16.3, 11.1, 56.9, 17.8, 62, 28.1, 
43, 44.8, …
Run Code Online (Sandbox Code Playgroud)

r dplyr purrr

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

Rcpp与Rmarkdown?合作时出错

我想用Rmarkdown创建一个html文档.在R代码的开头我需要源几个R脚本,而其中一个包含C++函数的定义Rcpp.Rmd中的一大块代码成功运行,但是在编织时我遇到了错误:

第85行命令'sourceCpp中的错误(代码=代码,env = env,rebuild = rebuild,cacheDir = cacheDir,':构建共享库时出现错误1.调用:... withVisible - > eval - > eval - > cppFunction - > sourceCpp

不幸的是,我不能分享我的整个代码,但结构如下.无论如何,似乎错误是由使用引起的cppFunction.如何处理这个以生成html或pdf文档?

```{r}
library(rlang)
library(tidyverse)
library(Rcpp)

source('directory\\script1.R')
source('directory\\script2.R')
```
Run Code Online (Sandbox Code Playgroud)

r rcpp r-markdown

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

如何将外部对象附加到系列索引

我有多个 Pandas 系列,如下所示:

s = pd.Series([1, 2, 3], index=[0, 1, 2])
s.index.name = 'id'
Run Code Online (Sandbox Code Playgroud)

每个系列都指向某个具有已知 ID 的组。我想将这些存储为一个 int 变量 ( group_id) 的id 添加为 Series MultiIndex 的第一级。所以产生的系列看起来像这样:

group_id  id
41        0     1
          1     2
          2     3
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

python multi-index pandas

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

将分布拟合到生存曲线

我有以下代表生存函数的数据。

# A tibble: 53 x 2
   month survival
   <int>    <dbl>
 1     0    1.00 
 2     1    1.00 
 3     2    1.00 
 4     3    1.00 
 5     4    1.00 
 6     5    1.00 
 7     6    0.999
 8     7    0.998
 9     8    0.997
10     9    0.993
11    10    0.984
12    11    0.976
13    12    0.973
14    13    0.971
15    14    0.969
16    15    0.969
17    16    0.969
18    17    0.969
19    18    0.968
20    19    0.968
21    20    0.968
22    21    0.968
23    22    0.968 …
Run Code Online (Sandbox Code Playgroud)

statistics r curve-fitting survival-analysis

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