Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中将数据从一列拆分为不同的列_R_Regex_Web Scraping_Split - Fatal编程技术网

在R中将数据从一列拆分为不同的列

在R中将数据从一列拆分为不同的列,r,regex,web-scraping,split,R,Regex,Web Scraping,Split,“我在R中执行了刮取,但在将数据拆分为不同列时遇到了问题。我无法为第8:10列(代码的最后一行)编写代码。下面是代码” 库(xml2) 图书馆(rvest) 图书馆(stringr) 图书馆(tidyr) reddit_wbpg% html_text() 评论% html_节点(“q.location-review-review-list-parts-ExpandableReview_uuReviewText--gOmRC”)%>% html_text() 用户数据1% html_节点(“div

“我在R中执行了刮取,但在将数据拆分为不同列时遇到了问题。我无法为第8:10列(代码的最后一行)编写代码。下面是代码”

库(xml2)
图书馆(rvest)
图书馆(stringr)
图书馆(tidyr)
reddit_wbpg%
html_text()
评论%
html_节点(“q.location-review-review-list-parts-ExpandableReview_uuReviewText--gOmRC”)%>%
html_text()
用户数据1%
html_节点(“div.social-member-event-MemberEventOnObjectBlock_uu事件类型--3njyv”)%>%
html_text()
用户数据2%
html_节点(“div.social-member-MemberHeaderStats_u事件信息--30wFs”)%>%
html_text()
审查标题%
html_节点(“div.location-review-review-list-parts-ReviewTitle_uureviewtitle--2GO9Z”)%>%
html_text()

刮取数据这里有一种方法使用
str\u extract
同时使用正向和反向前瞻:

scraping_data[,8] <- str_extract(scraping_data$user_data2,"^(?![0-9]+ (con|hel)).+?(?=[0-9]+ (con|hel)|$)")
scraping_data[,9] <- str_extract(scraping_data$user_data2,"[0-9]+(?= contribution)")
scraping_data[,10] <- str_extract(scraping_data$user_data2,"[0-9]+(?= helpful vote)")
scraping_data
#                               user_data1                                     user_data2 user_name date         location contribution helpful_votes
#1 mohd saqibsaqib wrote a review Mar 2020                 2 contributions2 helpful votes         a    a             <NA>            2             2
#2        hitesh k wrote a review Mar 2020                  4 contributions1 helpful vote         a    a             <NA>            4             1
#3          Basant wrote a review Mar 2020                                2 contributions         a    a             <NA>            2          <NA>
#4          RagP65 wrote a review Mar 2020 New Delhi, India9 contributions4 helpful votes         a    a New Delhi, India            9             4
#5          Mbosma wrote a review Mar 2020                                2 contributions         a    a             <NA>            2          <NA>

每个
r
标签(悬停或单击查看)的
scraping_数据[,8]:请随所需输出一起提供。对数据使用
dput()
,并使用
library()
调用指定所有非基本包。另外,不要使用。90%的工作看起来已经完成。谢谢仍然存在一些错误。1) 在第4行中,1个贡献没有被捕获(代码仅用于贡献,需要添加贡献。2)我正在对多个页面进行抓取。我这样做是为了另一页,在这种情况下,第1行没有正确地拆分。请提供帮助。我编辑了我的答案,通过删除前瞻中的
s
来修复问题1。对于第2期,请使用可复制的问题示例编辑您的问题。我已按照建议对代码进行了编辑,并附上了一张快照供您参考。我已编辑了我的答案以说明问题。如果一个答案对你有用,请考虑点击左边的检查标记和/或对它进行投票。非常感谢。我感谢你的帮助。
scraping_data[,8] <- str_extract(scraping_data$user_data2,"^(?![0-9]+ (con|hel)).+?(?=[0-9]+ (con|hel)|$)")
scraping_data[,9] <- str_extract(scraping_data$user_data2,"[0-9]+(?= contribution)")
scraping_data[,10] <- str_extract(scraping_data$user_data2,"[0-9]+(?= helpful vote)")
scraping_data
#                               user_data1                                     user_data2 user_name date         location contribution helpful_votes
#1 mohd saqibsaqib wrote a review Mar 2020                 2 contributions2 helpful votes         a    a             <NA>            2             2
#2        hitesh k wrote a review Mar 2020                  4 contributions1 helpful vote         a    a             <NA>            4             1
#3          Basant wrote a review Mar 2020                                2 contributions         a    a             <NA>            2          <NA>
#4          RagP65 wrote a review Mar 2020 New Delhi, India9 contributions4 helpful votes         a    a New Delhi, India            9             4
#5          Mbosma wrote a review Mar 2020                                2 contributions         a    a             <NA>            2          <NA>