考虑:
a <- c("a", "b", "c")
b <- c("a", "e", "f")
c <- c("a", "h", "i")
> a %in% b %in% c
[1] FALSE FALSE FALSE
Run Code Online (Sandbox Code Playgroud)
我希望这可以评估TRUE FALSE FALSE,因为每个向量中的第一个元素是"a".为什么不是这样?
我的数据看起来像这样:
model aspect cover contour
1 flowering ~ 1 2 52 2400
2 flowering ~ 1 + temp + precip:temp 1 52 2390
3 flowering ~ 1 + temp + precip 1 52 2390
4 flowering ~ 1 + temp + precip 1 52 2390
5 flowering ~ 1 + precip + precip:temp 1 52 2400
6 flowering ~ 1 + precip + precip:temp 1 52 2400
Run Code Online (Sandbox Code Playgroud)
此数据集中有40,000行,包含54个唯一模型.
如何获得汇总数据集,显示每个模型在纵横x轮廓x覆盖组合中出现的次数?
我有一个看起来像这样的文件:
type created_at repository_name
1 IssuesEvent 2012-03-11 06:48:31 bootstrap
2 IssuesEvent 2012-03-11 06:48:31 bootstrap
3 IssuesEvent 2012-03-11 06:48:31 bootstrap
4 IssuesEvent 2012-03-11 06:52:50 bootstrap
5 IssuesEvent 2012-03-11 06:52:50 bootstrap
6 IssuesEvent 2012-03-11 06:52:50 bootstrap
7 IssueCommentEvent 2012-03-11 07:03:57 bootstrap
8 IssueCommentEvent 2012-03-11 07:03:57 bootstrap
9 IssueCommentEvent 2012-03-11 07:03:57 bootstrap
10 IssuesEvent 2012-03-11 07:03:58 bootstrap
11 IssuesEvent 2012-03-11 07:03:58 bootstrap
12 IssuesEvent 2012-03-11 07:03:58 bootstrap
13 WatchEvent 2012-03-11 07:15:44 bootstrap
14 WatchEvent 2012-03-11 07:15:44 bootstrap
15 WatchEvent 2012-03-11 07:15:44 bootstrap
16 …Run Code Online (Sandbox Code Playgroud) 我在Mac上使用R和RStudio.为了使用不同的软件包,我需要使用R的几个版本.似乎RSwitch不再可供下载.如何在Mac上以最简单的方式管理不同版本的R?
我有数据集:
top100_repository_name month monthly_increase monthly_begin_at monthly_end_with
Bukkit 2012-03 9 431 440
Bukkit 2012-04 19 438 457
Bukkit 2012-05 19 455 474
CodeIgniter 2012-03 15 492 507
CodeIgniter 2012-04 50 506 556
CodeIgniter 2012-05 19 555 574
Run Code Online (Sandbox Code Playgroud)
我使用以下R代码:
library(reshape)
latent.growth.data <- read.csv(file = "LGC_data.csv", header = TRUE)
melt(latent.growth.data, id = c("top100_repository_name", "month"), measured = c("monthly_end_with"))
cast(latent.growth.data, top100_repository_name + month ~ monthly_end_with)
Run Code Online (Sandbox Code Playgroud)
我想用它来创建具有以下结构的数据集:
top100_repository_name 2012-03 2012-04 2012-05
Bukkit 440 457 474
CodeIgniter 507 556 574
Run Code Online (Sandbox Code Playgroud)
但是,当我运行我的代码时,我得到以下输出:
Using monthly_end_with as value column. Use …Run Code Online (Sandbox Code Playgroud) 我有一个字符向量列表,其中一些元素是实际字符串,例如“FA”和“EX”。然而,有的只是“”。我想删除这些。
list1 <- c("FA", "EX", "")
list2 <- c("FA")
list3 <- c("")
list <- list(list1, list2, list3)
> list
[[1]]
[1] "FA" "EX" ""
[[2]]
[1] "FA"
[[3]]
[1] ""
Run Code Online (Sandbox Code Playgroud)
那么应该是
[[1]]
[1] "FA" "EX"
[[2]]
[1] "FA"
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
Jeffrey Friedl在他的"Mastering Regular Expressions"一书中列出了3种主要的正则表达式引擎:
R中哪一个用作标准?
我有一个data.frame:
DF <- data.frame(id=c(1,1,2,2), event=c("merged", "discussed", "merged", "discussed"))
Run Code Online (Sandbox Code Playgroud)
现在我想把它变成一个列表,这样列表包含两个条目 - 每个id一个(即1和2),然后只有与这些条目对应的记录,如下:
List of 2:
[1] name: "1", data.frame
id event
1 1 merged
2 1 discussed
[2] name: "2", data.frame
id event
1 2 merged
2 2 discussed
Run Code Online (Sandbox Code Playgroud)
显然,我正在寻找一个可推广的解决方案,它将扩展到这个最小的例子之外.
想象一下,我在列表中有多个字符串,如下所示:
[[1]]
[1] "1-FA-1-I2-1-I2-1-I2-1-EX-1-I2-1-I3-1-FA-1-"
[2] "-1-I2-1-TR-1-"
[3] "-1-I2-1-FA-1-I3-1-"
[4] "-1-FA-1-FA-1-NR-1-I3-1-I2-1-TR-1-"
[5] "-1-I2-1-"
[6] "-1-I2-1-FA-1-I2-1-"
[7] "-1-I3-1-FA-1-QU-1-"
[8] "-1-I2-1-I2-1-I2-1-NR-1-I2-1-I2-1-NR-1-"
[9] "-1-I2-1-"
[10] "-1-NR-1-I3-1-QU-1-I2-1-I3-1-QU-1-NR-1-I2-1-"
[11] "-1-NR-1-QU-1-QU-1-I2-1-"
Run Code Online (Sandbox Code Playgroud)
我想使用正则表达式来检测某个子字符串在另一个子字符串之前的特定字符串,但不一定直接在另一个子字符串之前.
例如,假设我们正在寻找FA前面的内容EX.这需要1在列表中匹配.尽管FA有-1-I2-1-I2-1-I2-1-自身之间和EX中,FA在之前仍然存在EX,因此比赛的预期.
如何定义通用正则表达式,以这种方式标识某些子串出现在另一个子串之前的字符串?
我正在使用TraMineR包.我打印输出到CSV文件,如下所示:
write.csv(seqient(sequences.seq), file = "diversity_measures.csv", quote = FALSE, na = "", row.names = TRUE)
write.csv(seqici(sequences.seq), file = "diversity_measures.csv", quote = FALSE, na = "", row.names = TRUE, append= TRUE)
write.csv(seqST(sequences.seq), file = "diversity_measures.csv", quote = FALSE, na = "", row.names = TRUE, append= TRUE)
Run Code Online (Sandbox Code Playgroud)
可以在此处找到dput(sequences.seq)对象.
但是,这不会正确附加输出,但会创建此错误消息:
In write.csv(seqST(sequences.seq), file = "diversity_measures.csv", :attempt to set 'append' ignored
Run Code Online (Sandbox Code Playgroud)
另外,它只给我最后一个命令的输出,所以看起来它每次都会覆盖文件.
是否可以将所有列都放在一个CSV文件中,每个列都有一个列名(即熵,复杂性,湍流)