我有一个如下数据:
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仍然非常受欢迎.
plot.lm 有一个很好的功能,一个接一个地显示图,所以在指定时
plot(lm(rnorm(100) ~ rnorm(100, 3, 1)))
Run Code Online (Sandbox Code Playgroud)
显示第一个图并询问用户
点击返回查看下一个图:
现在我想生成30个图,因此在网格中显示它们会使它们难以阅读,而一个接一个地指定它们是非常麻烦的.我一直想知道是否有模仿plot.lm行为的功能或方法?我特别感兴趣的是兼容的功能ggplot2.
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) 我有一个 .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) 我正在使用RMarkdown准备投影仪演示,并希望在其中包含lm输出。但是默认大小太大,因此输出被裁剪,无法完全看到。如何更改选项以控制R输出的大小(或字体)?我已经看到了很多关于地块大小的选择,但是没有关于R输出的选择。
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) 我想用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) 我有多个 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)
我怎样才能做到这一点?
我有以下代表生存函数的数据。
# 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)