小编Ale*_*lex的帖子

在Windows 7上使用带有RSelenium的phantomjs

我正在尝试将PhantomJS与RSelenium一起使用并且似乎遇到了麻烦:

require(RSelenium)
RSelenium::startServer()
remDr <- remoteDriver(browserName = "phantomjs", extraCapabilities = list(phantomjs.binary.path =    "C:/Users/home/Desktop/phantomjs-1.9.8-windows/phantomjs.exe"))
remDr$open()
Run Code Online (Sandbox Code Playgroud)

这导致:

$class
[1] "org.openqa.selenium.UnsupportedCommandException"

$additionalInformation
[1] "\nDriver info: driver.version: unknown"
Run Code Online (Sandbox Code Playgroud)

sessionInfo()在下面:

$class
[1] "org.openqa.selenium.UnsupportedCommandException"

$additionalInformation
[1] "\nDriver info: driver.version: unknown"
Run Code Online (Sandbox Code Playgroud)

更新:不幸的是,下面的解决方案似乎不起作用:

[1] "Connecting to remote server"
Error:   Summary: UnknownError
         Detail: An unknown server-side error occurred while processing the command.
         class: java.lang.ClassNotFoundException
Run Code Online (Sandbox Code Playgroud)

selenium r phantomjs selenium-webdriver

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

Windows 上 RStudio 中的波形符扩展

在 UNIX 系统上工作时,会将~我的目录扩展到我的 UNIX 主目录。在我的 Windows 计算机上时,我想~扩展到映射并指向 Unix 主目录的驱动器。我在 Windows 计算机上使用 RStudio 进行编码,它将扩展~为没有帮助的东西,并且我在更改它时遇到了麻烦。我已经使用了环境变量,PATH但无法让它指向我想要的。有任何想法吗?

\n\n

更新

\n\n

根据乔希的回答。R_USER在启动 RStudio 之前更改Windows 中的环境变量会在启动时产生:

\n\n
Error: invalid version specification \xe2\x80\x98NA\xe2\x80\x99\nIn addition: Warning message:\nIn utils:::packageDescription(packageName, fields = "Version") :\n  no package \'rstudio\' was found\n
Run Code Online (Sandbox Code Playgroud)\n\n

每次 RStudio 启动后都可以使用此答案手动更改它,但我想避免这样做。

\n

unix r relative-path rstudio

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

如何检查页面是否在RSelenium中完成加载

想象一下,您在RSelenium页面上单击一个元素,并希望从结果页面中检索结果.如何检查以确保生成的页面已加载?我可以Sys.sleep()在处理页面和单击元素之间插入,但这似乎是一种非常难看和缓慢的做事方式.

selenium r selenium-webdriver

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

RSelenium中的不一致行为

在Linux上,RSelenium/ Selenium似乎表现不正常.我手动启动服务器,似乎启动良好.有时我可以从R会话连接到它,有时我会收到错误.我还不能确定原因:相同的脚本似乎有时会工作,而不是其他时间.有任何想法吗?

以下是启动服务器的输出:

12:41:25.811 INFO - Launching a standalone server
12:41:26.102 INFO - Java: Sun Microsystems Inc. 11.0-b16
12:41:26.102 INFO - OS: Linux 2.6.32-431.17.1.el6.x86_64 amd64
12:41:26.157 INFO - v2.44.0, with Core v2.44.0. Built from revision 76d78cf
12:41:26.492 INFO - Default driver org.openqa.selenium.ie.InternetExplorerDriver registration is skipped: registration capabilities Capabilities [{platform=WINDOWS, ensureCleanSession=true, browserName=internet explorer, version=}] does not match with current platform: LINUX
12:41:26.589 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
12:41:26.589 INFO - Version Jetty/5.1.x
12:41:26.590 INFO - …
Run Code Online (Sandbox Code Playgroud)

selenium r selenium-webdriver rselenium

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

使用列模式融合data.table

我有一个data.table看起来像这样:

id A1g_hi A2g_hi A3g_hi A4g_hi
1  2      3      4      5
...
Run Code Online (Sandbox Code Playgroud)

我想melt这个表,所以它看起来像这样:

id time hi
1  1    2
1  2    3
1  3    4
1  4    5
...
Run Code Online (Sandbox Code Playgroud)

我尝试过这样的事:

melt(dtb, measure.vars = patterns("^A"), value.name = "hi", variable.name="time")
Run Code Online (Sandbox Code Playgroud)

哪个不给我想要的东西.我是否需要在这里求助于字符串拆分,或者是否存在data.table执行此操作的本机函数?

r reshape reshape2 data.table

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

R(动物园)中的rollapply时间序列对后向数据的影响

我想使用zoo函数rollapply在时间序列上应用函数(例如均值),但仅使用最后N个已知点.例如:

x = zoo(c(1,2,3,4), order.by=c(10,11,12,13))

rollmean(x,2)

生产:

10 11 12

1.5 2.5 3.5

我想制作一个系列,其日期条目为11,12,13,值为1.5,2.5,3.5.这些值似乎是正确的,但rollmean输出的日期似乎与我想要的不一致.我有点担心只是将我想要的日期分配给动物园对象使用time(x)<-因为我不确定rollapply实际上做的是正确的事情.帮助一如既往地受到赞赏.

r time-series moving-average zoo

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

提取data.table的段

我有一个data.table,我需要从不同的行位置开始提取相等长度的段.最简单的方法是什么?例如:

x <- data.table(a=sample(1:1000,100), b=sample(1:1000,100))
r <- c(1,2,10,20,44)
idx <- lapply(r, function(i) {j <-which(x$a == i); if (length(j)>0) {return(j)} })
y <- lapply(idx, function(i) {if (!is.null(i)) x[i:(i+5)]})
do.call(rbind, y)
    a   b
1:  44  63
2:  96 730
3: 901 617
4: 446 370
5: 195 341
6: 298 411
Run Code Online (Sandbox Code Playgroud)

这当然不是data.table做事的方式所以我希望有更好的方法吗?

编辑:根据下面的评论,我编辑它只是为了清楚,它们中的值a不一定是连续的,也不对应于行号.

r rbind do.call data.table

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

如何将两个向量粘贴在一起并在末尾填充?

我想将paste两个字符串放在一起,并在末尾用另一个字符填充以使组合具有一定的长度.我想知道是否有paste一个可以通过的选项或我错过的另一个技巧?我可以通过计算每个行的长度然后调用来在多行中执行此操作paste,rep(my_pad_character,N)但我想在一行中执行此操作.

例如:垫在一起"hi",并用"hello"垫子"a"来制作序列长度为10.结果将是"hihelloaaa"

string r paste

4
推荐指数
2
解决办法
233
查看次数

使用data.table滞后面板数据

我目前使用data.table以下方式使用面板数据:

require(data.table)
x <- data.table(id=1:10, t=rep(1:10, each=10), v=1:100)
setkey(x, id, t) #so that things are in increasing order
x[,lag_v:=c(NA, v[1:(length(v)-1)]),by=id]
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更好的方法来做到这一点?我在网上找到了关于交叉连接的东西,这是有道理的.但是,交叉连接会data.table为大型数据集生成相当大的数据集,所以我对使用它犹豫不决.

r time-series data.table

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

在x中的后缀在R中合并

当试图mergexts对象,它看起来并不像suffixesARG正常工作:

require(xts)
x <- xts(1:10, seq.Date(from=as.Date("2012-01-01"), len=10, by=1))
y <- xts(11:20, seq.Date(from=as.Date("2012-01-01"), len=10, by=1))

names(x) <- "x"
names(y) <- "x"

merge(x,y,suffixes=c("truex", "truey"))

            x x.1
2012-01-01  1  11
2012-01-02  2  12
2012-01-03  3  13
2012-01-04  4  14
2012-01-05  5  15
2012-01-06  6  16
2012-01-07  7  17
2012-01-08  8  18
2012-01-09  9  19
2012-01-10 10  20
Run Code Online (Sandbox Code Playgroud)

我在滥用吗?

r time-series zoo xts

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