我试图刮掉大量的网页,以便以后分析它们.由于URL的数量巨大,我决定使用该parallel包XML.
具体来说,我正在使用htmlParse()函数from XML,它在使用时工作正常sapply,但在使用时会生成类HTMLInternalDocument的空对象parSapply.
url1<- "http://forums.philosophyforums.com/threads/senses-of-truth-63636.html"
url2<- "http://forums.philosophyforums.com/threads/the-limits-of-my-language-impossibly-mean-the-limits-of-my-world-62183.html"
url3<- "http://forums.philosophyforums.com/threads/how-language-models-reality-63487.html"
myFunction<- function(x){
cl<- makeCluster(getOption("cl.cores",detectCores()))
ok<- parSapply(cl=cl,X=x,FUN=htmlParse)
return(ok)
}
urls<- c(url1,url2,url3)
#Works
output1<- sapply(urls,function(x)htmlParse(x))
str(output1[[1]])
> Classes 'HTMLInternalDocument', 'HTMLInternalDocument', 'XMLInternalDocument', 'XMLAbstractDocument', 'oldClass' <externalptr>
output1[[1]]
#Doesn't work
myFunction<- function(x){
cl<- makeCluster(getOption("cl.cores",detectCores()))
ok<- parSapply(cl=cl,X=x,FUN=htmlParse)
stopCluster(cl)
return(ok)
}
output2<- myFunction(urls)
str(output2[[1]])
> Classes 'HTMLInternalDocument', 'HTMLInternalDocument', 'XMLInternalDocument', 'XMLAbstractDocument', 'oldClass' <externalptr>
output2[[1]]
#empty
Run Code Online (Sandbox Code Playgroud)
谢谢.
最近我一直在试验slidify和rCharts.使用slidify生成简单图表的教程是解释性的,但我无法找到任何关于rCharts的教程.
例如,我知道以下内容会生成交互式图
data(mtcars)
r1<- rPlot(mpg ~ wt | am + vs, data=mtcars, type="point")
data(iris)
hair_eye = as.data.frame(HairEyeColor)
rPlot(Freq ~ Hair | Eye,color = 'Eye', data = hair_eye, type = 'bar')
Run Code Online (Sandbox Code Playgroud)
但是,我不知道如何将结果绘图合并到我的幻灯片中slidify.
我在Ramnath的git上看到了以下内容:
---
title : Practice
subtitle : makes perfect
author : Noob
job :
framework : io2012 # {io2012, html5slides, shower, dzslides, ...}
highlighter : highlight.js # {highlight.js, prettify, highlight}
hitheme : tomorrow #
widgets : …Run Code Online (Sandbox Code Playgroud) 我在UI.R中收到意外输入错误,如下所示:
ERROR: C:\Users\myApp/ui.R:1:2: unexpected input
1: ï»
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试在第1行定位错误时,绝对没有任何形式ï»。
要解决此错误,我尝试将UI.R文件另存为文本文件并将编码更改为UTF-8,但这仍然不能删除奇怪的字符。我还尝试删除了前几行并重新编写了代码,但仍然给出了相同的错误!
如何删除该字符?我应该使用其他文本编辑器吗?我正在使用基本R,而不是R Studio。如果需要该信息,我已经从GitHub帐户中粘贴了我的代码...可以在此处查看我文件的代码。
非常感谢。
我有900,000 x 500类型的数据集,但下面显示了适合该问题的玩具数据集.
library(data.table)
df1 <- data.table(x = c(1,2,4,0), y = c(0,0,10,15), z = c(1,1,1,0))
Run Code Online (Sandbox Code Playgroud)
我想做以下事情:
我是data.table的新手.在stackoverflow上查看问题的示例,我找不到类似的问题,除了这个: 如何替换表*中的NA值用于所选列*?data.frame,data.table
我自己的尝试如下,但这不起作用:
for (col in c("x", "y")) df1[(get(col)) == 0, (col) := max(col) + 1)
Run Code Online (Sandbox Code Playgroud)
显然,我还没有习惯data.table,所以我现在正撞在墙上......
如果有人能提供dplyr解决方案data.table,我会很感激.
道歉,返回lists并dataframes在R一段时间后,所以忘了我约的方式.假设我在列表中有几个数据帧:
d2<- data.frame(week=c("12th","13th","14th"),value=c(1,20,100))
d1<- data.frame(week=c("12th","13th","14th"),value=c(1,10,15))
d3<- data.frame(week=c("12th","13th","14th"),value=c(1,220,30))
dfList<- list(d1,d2,d3)
dfList
[[1]]
week value
1 12th 1
2 13th 10
3 14th 15
[[2]]
week value
1 12th 1
2 13th 20
3 14th 100
[[3]]
week value
1 12th 1
2 13th 220
3 14th 30
Run Code Online (Sandbox Code Playgroud)
我希望有一个带有组合数据的最终数据框,其形状如下
finalDf<- data.frame(week=c("12th","13th","14th"),value1=c(1,20,100),value2=c(1,10,15),value3=c(1,220,30))
week value1 value2 value3
1 12th 1 1 1
2 13th 20 10 220
3 14th 100 15 30
Run Code Online (Sandbox Code Playgroud)
我怎样才能实现上述数据形式?另外,如果我的初始数据帧也有NAs,我想在实现最终数据形式之前删除它?
非常感谢.