小编ali*_*ire的帖子

如何使用R在HTML中的注释标记内抓取表格?

我正在尝试使用rvest 从http://www.basketball-reference.com/teams/CHI/2015.html中删除.我使用了selectorgadget,发现标签对于我想要的表是#advanced.但是,我注意到它没有捡到它.查看页面源代码,我注意到这些表位于html注释标记内<!--

从评论标签中获取表格的最佳方法是什么?谢谢!

编辑:我正试图拉出"高级"表:http://www.basketball-reference.com/teams/CHI/2015.html#advanced :::none

r html-parsing web-scraping scrape rvest

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

将命名列表传递给 cols_only()

当我尝试做这样的事情时:

data <- read_csv("blah.csv",
+                n_max = 100,
+                col_types = cols_only(list(files = "c"))
+ )
Error: Some `col_types` are not S3 collector objects: 1
Run Code Online (Sandbox Code Playgroud)

所以问题是是否可以将命名列表传递给 cols_only()

r readr

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

复制相同的data.frame n次并将它们保存到列表中

我只需要复制我的data.frame n次(例如100)并将所有输出保存到列表中.

它应该是非常简单和直接的,但我还没有找到任何解决方案.

假数据框:

df = read.table(text = 'a b
1 2
5 6
4 4
11 78
23 99', header = TRUE)
Run Code Online (Sandbox Code Playgroud)

r list replicate dataframe

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

重塑从广泛到长期的变量组

这个问题与现有问题非常相似.

但是我无法将其扩展到多组变量.这是我正在处理的数据集

A tibble: 12 x 9
   Month Cabo_BU_PCT Acapulco_BU_PCT Cabo_LOS_AVG Acapulco_LOS_AVG BED_BUGS_Cabo BED_BUGS_Acapulco TOTAL_OCCUPIED_Cabo TOTAL_OCCUPIED_Acapulco

       1   0.6470034       0.6260116     5.223000         4.307667             5                 3               19216                    6498
       2   0.6167027       0.6777457     5.893571         4.247500             3                 0               17095                    6566
       3   0.6372108       0.6348126     5.229677         4.327742             5                 1               19556                    6809
       4   0.6357912       0.6548170     5.356667         4.220000             4                 6               18883                    6797
       5   0.6449006       0.6409659     5.344194         4.162903             2                 5               19792                    6875
       6   0.6747811       0.6935453     5.812667         4.362000             4                 3               20041                    7199
       7   0.6697947       0.6932687     5.544516         4.462903             5                 6               20556 …
Run Code Online (Sandbox Code Playgroud)

r reshape dplyr tidyr tidyverse

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

如何cbind和rbind 2个数据帧列表

我有2个数据帧列表.每个列表有24个数据帧

list1 <- (data1, data2, ..., data24)
list2 <- (result1, result2, ...., result3)
Run Code Online (Sandbox Code Playgroud)

我想cbind data1result1,data2result2等.然后将rbin所有数据帧组合在一起:

all1 <- cbind(data1, result1)
all2 <- cbind(data2, result2)
all.in <- rbind(all1, all2)
Run Code Online (Sandbox Code Playgroud)

如何有效地使用24个数据帧?

r rbind cbind

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

计算多列的每个字母的频率

我有一个数据框如下:

> dfnew

   C1 C2 C3 C4   C5   C6
1   A  A  G  A    G    A
2   A  T  T  T    G    G
3   T  A  G  A    T    A
4   C  A  A  A    A    G
5   C  A  T  T    T    C
6   C  A  A  A    T    A
7   T  C  T  G    A    A
8   G  A  G  C    T    A
9   C  T  A  T    G    A
10  G  A  A  A    G    G
11 …
Run Code Online (Sandbox Code Playgroud)

r

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

迭代 purrr 中的公式

我有一堆公式,作为字符串,我想在 glm 中一次使用一个,最好使用 tidyverse 函数。这就是我现在所在的地方。

library(tidyverse)
library(broom)

mtcars %>% dplyr::select(mpg:qsec) %>% colnames -> targcols
paste('vs ~ ', targcols) -> formulas
formulas

#> 'vs ~  mpg' 'vs ~  cyl' 'vs ~  disp' 'vs ~  hp' 'vs ~  drat' 'vs ~  wt' 'vs ~  qsec' 
Run Code Online (Sandbox Code Playgroud)

我可以使用这些公式中的任何一个来运行一般线性模型:

glm(as.formula(formulas[1]), family = 'binomial', data = mtcars) %>% glance

#>  null.deviance,  df.null,    logLik, AIC,    BIC,    deviance,   df.residual
#> 43.86011,    31,     -12.76667,  29.53334,   32.46481,   25.53334,   30 
Run Code Online (Sandbox Code Playgroud)

我想用列表中的每个可能的公式运行 glm 。我尝试这样做,如下所示。

data.frame(formulas = formulas) %>%
    mutate(mod = map(formulas, function(fs){ …
Run Code Online (Sandbox Code Playgroud)

r linear-regression purrr

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

合并两个数据集

我创建一个节点列表如下:

name <- c("Joe","Frank","Peter")
city <- c("New York","Detroit","Maimi")
age <- c(24,55,65)
node_list <- data.frame(name,age,city)

node_list    
   name age     city
1   Joe  24 New York
2 Frank  55  Detroit
3 Peter  65    Maimi
Run Code Online (Sandbox Code Playgroud)

然后我创建一个边缘列表如下:

from <- c("Joe","Frank","Peter","Albert")
to <- c("Frank","Albert","James","Tony")
to_city <- c("Detroit","St. Louis","New York","Carson City")
edge_list <- data.frame(from,to,to_city)

edge_list
    from     to     to_city
1    Joe  Frank     Detroit
2  Frank Albert   St. Louis
3  Peter  James    New York
4 Albert   Tony Carson City
Run Code Online (Sandbox Code Playgroud)

请注意,节点列表和边列表中的名称不会重叠100%.我想创建一个包含所有名称的主节点列表,同时捕获城市信息.这是我的dplyr尝试这样做:

new_node <- edge_list %>%
  gather("from_to", "name", from, to) %>% …
Run Code Online (Sandbox Code Playgroud)

r dplyr

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

ggplot2:标准错误色带与绘图线不匹配

我正在尝试向我的 ggplot 添加错误栏色带,但由于某种原因,阴影与绘制的线条不匹配。这是我第二次遇到这个问题,我一生都无法弄清楚为什么会发生这种情况。最初,我认为这可能是由于某些变量被定义为因子的方式而发生的,但是即使我更改了它们的格式,我仍然会遇到这个问题。任何想法或建议将不胜感激!谢谢!

使用不正确的色带绘图

数据框:

    m<- structure(list(sound = structure(c(2L, 2L, 2L, 2L, 1L, 1L, 1L, 
1L), .Label = c("Silence", "English"), class = "factor"), `Reading condition` = structure(c(1L, 
1L, 2L, 2L, 1L, 1L, 2L, 2L), .Label = c("normal", "trailing mask"
), class = "factor"), diff = structure(c(2L, 1L, 2L, 1L, 2L, 
1L, 2L, 1L), .Label = c("Easy questions", "Difficult questions"
), class = "factor"), Mean = c(0.283, 0.36, 0.183, 0.227, 0.19, 
0.347, 0.197, 0.333), SD = c(0.500558971667007, 0.34814947033031, 
0.497195715406262, 0.447163568809774, 0.49804988833968, 0.361515576848703, …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

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

str_detect 查找以字符开头并以字符结尾的单词

library(stringr)

words <- c("proposition", "proper", "poor", "paul", "park", "car")
words[str_detect(words, "^p")]
[1] "proposition" "proper" "poor" "paul" "park"
words[str_detect(words, "r$")]
[1] "proper" "poor" "car"
Run Code Online (Sandbox Code Playgroud)

我已经大大缩减了作业的数据。

我想检测以 p 开头并以 r 结尾的单词。我期待结果是正确的和糟糕的。我现在正在为一项作业花费几个小时来解决这个问题。

words[str_detect(words, "[^p][r$]")]
Run Code Online (Sandbox Code Playgroud)

无论位置如何,都会得出单词中带有 p 和 r 的任何内容。

words[str_detect(words, "^pr$")]
Run Code Online (Sandbox Code Playgroud)

这东西直接说是不行的。它不匹配任何内容,但没有抛出错误。我不明白为什么它不会抛出错误。我首先认为它与单词 ^pr$ 匹配,但这不需要转义“\”吗?

regex r stringr

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