小编Zaf*_*far的帖子

Matrix数学与Sparklyr

希望将一些R代码转换为Sparklyr,例如lmtest :: coeftest()和sandwich :: sandwich().尝试开始使用Sparklyr扩展但对Spark API来说很新并且遇到问题:(

运行Spark 2.1.1和sparklyr 0.5.5-9002

感觉第一步是使用linalg库制作DenseMatrix对象:

library(sparklyr)
library(dplyr)
sc <- spark_connect("local")

rows <- as.integer(2)
cols <- as.integer(2)
array <- c(1,2,3,4)

mat <- invoke_new(sc, "org.apache.spark.mllib.linalg.DenseMatrix", 
                  rows, cols, array)
Run Code Online (Sandbox Code Playgroud)

这会导致错误:

Error: java.lang.Exception: No matched constructor found for class org.apache.spark.mllib.linalg.DenseMatrix
Run Code Online (Sandbox Code Playgroud)

好的,所以我得到了一个java lang异常,我很确定构造函数中的args rowscolsargs很好,但不确定最后一个,它应该是java Array.所以我尝试了几种排列:

array <- invoke_new(sc, "java.util.Arrays", c(1,2,3,4))
Run Code Online (Sandbox Code Playgroud)

但最终得到类似的错误信息......

Error: java.lang.Exception: No matched constructor found for class java.util.Arrays
Run Code Online (Sandbox Code Playgroud)

我觉得我错过了一些非常基本的东西.谁知道怎么了?

r apache-spark apache-spark-mllib sparklyr

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

麻烦在熊猫中转动(在R中展开)

我在pandas中的pd.pivot()或pivot_table()函数遇到了一些问题.

我有这个:

df = pd.DataFrame({'site_id': {0: 'a', 1: 'a', 2: 'b', 3: 'b', 4: 'c', 5:
 'c',6: 'a', 7: 'a', 8: 'b', 9: 'b', 10: 'c', 11: 'c'},
                   'dt': {0: 1, 1: 1, 2: 1, 3: 1, 4: 1, 5: 1,6: 2, 7: 2, 8: 2, 9: 2, 10: 2, 11: 2},
                   'eu': {0: 'FGE', 1: 'WSH', 2: 'FGE', 3: 'WSH', 4: 'FGE', 5: 'WSH',6: 'FGE', 7: 'WSH', 8: 'FGE', 9: 'WSH', 10: 'FGE', 11: 'WSH'},
                   'kw': {0: '8', 1: …
Run Code Online (Sandbox Code Playgroud)

pivot spread python-3.x pandas tidyr

7
推荐指数
2
解决办法
1555
查看次数

通过在purrr中按元素求和来减少列表

我正在尝试使用purrr相同的索引对列表元素求和.这可以使用以下内容在基本R中实现:

xx <- list(a = c(1,2,3,4,5), b = c(1,2,3,4,5))
Reduce("+", xx)
Run Code Online (Sandbox Code Playgroud)

它提供:

[1]  2  4  6  8 10
Run Code Online (Sandbox Code Playgroud)

大!这就是我的需要,但我想全力以赴purrr.%>% reduce(sum)给出一个单值.有谁知道这样做的语法purrr

编辑 - 我忘了指定,这需要适用于n个列表.

r purrr tidyverse

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

在dplyr tidyverse中按组采样不同数量的行

我想按组对数据帧中的行进行采样.但是这里有一个问题,我想根据另一个表中的数据对不同数量的记录进行采样.这是我可重复的数据:

df <- data_frame(
  Stratum = rep(c("High","Medium","Low"), 10),
  id = c(1:30),
  Value = runif(30)
)

sampleGuide <- data_frame(
  Stratum = c("High","Medium","Low"),
  Surveys = c(3,2,5)
)
Run Code Online (Sandbox Code Playgroud)

输出应如下所示:

# A tibble: 10 × 2
   Stratum      Value
     <chr>      <dbl>
1     High 0.21504972
2     High 0.71069005
3     High 0.09286843
4   Medium 0.52553056
5   Medium 0.06682459
6      Low 0.38793128
7      Low 0.01285081
8      Low 0.87865734
9      Low 0.09100829
10     Low 0.14851919
Run Code Online (Sandbox Code Playgroud)

这是我的非工作尝试

> df %>% 
+   left_join(sampleGuide, by = "Stratum") %>% 
+   group_by(Stratum) %>% 
+ …
Run Code Online (Sandbox Code Playgroud)

random r dplyr tidyr purrr

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

如何在R中保存网页中的图像

我的数据如工作。url 编码了制作地图所需的所有代码。

我想遍历 90 个这样的图并将它们从网站保存到我的本地磁盘。我知道如何在 R 中构建 url,但我对如何从 RStudio 保存图像没有第一个想法。

任何想法表示赞赏,丹

r

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