在R中的lapply函数中创建数据帧

时间:2016-11-29 16:00:01

标签: r dataframe lapply rvest

我正在研究Rvest的网络报废。 我已从页面中收集了输出列表,但我的函数无法将其包装在数据框中。 我的代码:

test_qry <- lapply(paste0('https://......&CurrentPage=', 1:3),
             function(url){
               c(
                hospital <- url %>% read_html() %>% 
                   html_nodes(".findcompare-results table th.fctitle a") %>% 
                   html_text(),
                Tele_no <- url %>% read_html() %>%
                   html_nodes(".findcompare-results table td p.fctel") %>%
                   html_text())

             })

我不知道如何在函数内部创建数据框来包装所有变量。我用这个函数来读取所有页面(共3页)。 我的输出是这样的

1 Coulsdon Dental Practice 
2 mydentist, Chipstead Valley Road, Coulsdon
3 Coulsdon Dental Clinic 
4 Ivory 
5 Crossways Dental Practice 
6 Confidental Clinic 
7 Azenabor, Ify 
8 Kerschbaumer, Andreas 
9 Paice, Andrew 
10 Kenley Dental Practice
11 Tel: 020 8668 2607
12 Tel: 02086686870
13 Tel: 020 8660 3308
14 Tel: 020 8668 2579
15 Tel: 01737 551622
16 Tel: 020 8660 8923
17 Tel: 01737 554177
18 Tel: 020 8660 0415
19 Tel: 020 8660 6565
20 Tel: 020 8668 2696

但我需要两个单独的变量,它写入单个列表。 像data.frame(name,tele_no)

我使用了unlist(test_qry)来创建数据框。

请帮帮我!!!

1 个答案:

答案 0 :(得分:0)

我建议同时使用tidyversetibble()bind_row()来创建df。

这里是参考:

Scraping webpage with react JS in R