小编maj*_*jom的帖子

加速sqlFetch()

我正在使用Oracle数据库,并希望获取一个包含3000万条记录的表.

library(RODBC)
ch <- odbcConnect("test", uid="test_user", 
                  pwd="test_pwd", 
                  believeNRows=FALSE, readOnly=TRUE)
db <- sqlFetch(ch, "test_table")
Run Code Online (Sandbox Code Playgroud)

对于100万条记录,该过程需要1074.58秒.因此,所有3000万条记录需要相当长的时间.有没有可能加快这个过程?

我将不胜感激任何帮助.谢谢.

database r

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

R中的匹配算法(二分匹配,匈牙利算法)

我想知道如何在R中设置一些基本匹配程序的例子.在各种编程语言中有很多例子,但我还没有找到一个很好的R例子.

假设我想让学生与项目相匹配,我会考虑在谷歌搜索这个问题时遇到的3种替代方法:

1)Bipartite匹配案例:我要求每个学生指出要处理的3个项目(没有说明3个项目中的任何偏好排名).

ID  T.1 T.2 T.3 T.4 T.5 T.6 T.7
1   1   1   1   0   0   0   0
2   0   0   0   0   1   1   1
3   0   1   1   1   0   0   0
4   0   0   0   1   1   1   0
5   1   0   1   0   1   0   0
6   0   1   0   0   0   1   1
7   0   1   1   0   1   0   0
Run Code Online (Sandbox Code Playgroud)

-

d.1 <- structure(list(Student.ID = 1:7, Project.1 = c(1L, 0L, 0L, 0L, 
1L, …
Run Code Online (Sandbox Code Playgroud)

optimization r linear-programming

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

R的哈维球

如何在R中创建如下图表?

在此输入图像描述

一些玩具数据看起来像这样:

# Data
data <- rep(c(0, 25, 50, 75, 100),6) 
data <-  matrix(data, ncol=3, byrow=TRUE) 
colnames(data) <- paste0("factor_", seq(3))
rownames(data) <- paste0("observation_", seq(10))


#                factor_1 factor_2 factor_3
# observation_1         0       25       50
# observation_2        75      100        0
# observation_3        25       50       75
# observation_4       100        0       25
# observation_5        50       75      100
# observation_6         0       25       50
# observation_7        75      100        0
# observation_8        25       50       75
# observation_9       100        0       25
# observation_10       50       75      100
Run Code Online (Sandbox Code Playgroud)

谢谢.

plot visualization r ggplot2 lattice

10
推荐指数
2
解决办法
1564
查看次数

按元素名称组合/合并列表(列表中的列表)

我有两个列表,其元素具有部分重叠的名称,我需要逐个元素地合并/组合成一个列表:

我的问题与按元素名称组合/合并列表有关,但我的示例中的数据结构更复杂,因此,在这种情况下,上述链接下提供的解决方案不起作用.

这是一个简化的玩具示例:

l.1 <- list(list(c(10,20), NULL),list(c(10,20,30), NULL), list(c(9,12,13), NULL))
names(l.1) <- c("a","b","c")

l.2 <- list(list(NULL,c(1,0)),list(NULL,c(1,2,3)))
names(l.2) <- c("a","b")
Run Code Online (Sandbox Code Playgroud)

因此,数据的类型为"list in list",如下所示:

# > l.1
# $a
# $a[[1]]
# [1] 10 20
# $a[[2]]
# NULL
# 
# $b
# $b[[1]]
# [1] 10 20 30
# $b[[2]]
# NULL
# 
# $c
# $c[[1]]
# [1]  9 12 13
# $c[[2]]
# NULL
# 
# > l.2
# $a
# $a[[1]]
# NULL
# $a[[2]]
# …
Run Code Online (Sandbox Code Playgroud)

merge r list

9
推荐指数
2
解决办法
3951
查看次数

价格优化的多武装强盗分析

最近,我读了一篇名为Bandits Know the Best Product Price的博客文章"(http://pkghosh.wordpress.com/2013/08/25/bandits-know-the-best-product-price/),其中概述了如何使用多臂强盗分析进行价格优化.

关于多臂强盗分析是否优于A/B测试(例如"每次将击败A/B测试的20行代码")还有很多讨论:http://stevehanov.ca/blog/index .php?id = 132?utm_medium =推荐与"为什么多臂强盗算法不比A/B测试更好":http://visualwebsiteoptimizer.com/split-testing-blog/multi-armed-bandit-算法/).

我知道有一个叫做"强盗"的R包,它可以用于这样的分析.

有人有一个玩具示例 -与博客文章中的示例相似 - 它显示了如何通过使用R(在价格优化的背景下)应用此方法?

谢谢你的帮助.

r ab-testing bandit

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

加速 R 中的 API 调用

我正在查询 Freebase 以获取大约 10000 部电影的类型信息。

在阅读如何使用 R 中的 getURL() 优化抓取后,我尝试并行执行请求。但是,我失败了 - 见下文。除了并行化,我还读到这httr可能是RCurl.

我的问题是:是否可以通过使用以下循环的并行版本(使用 WINDOWS 机器)来加速 API 调用?b) getURL 的替代方法,例如GEThttr-package 中?

library(RCurl)
library(jsonlite)
library(foreach)
library(doSNOW)

df <- data.frame(film=c("Terminator", "Die Hard", "Philadelphia", "A Perfect World", "The Parade", "ParaNorman", "Passengers", "Pink Cadillac", "Pleasantville", "Police Academy", "The Polar Express", "Platoon"), genre=NA)

f_query_freebase <- function(film.title){

  request <- paste0("https://www.googleapis.com/freebase/v1/search?",
                    "filter=", paste0("(all alias{full}:", "\"", film.title, "\"", " type:\"/film/film\")"),
                    "&indent=TRUE",
                    "&limit=1",
                    "&output=(/film/film/genre)")

  temp <- getURL(URLencode(request), ssl.verifypeer = FALSE) …
Run Code Online (Sandbox Code Playgroud)

api parallel-processing r geturl httr

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

在R中为h2o模型打印"漂亮"表

有多个软件包R可以帮助从统计模型输出中打印"漂亮"表(LaTeX/HTML/TEXT)并轻松比较替代模型规范的结果.

一些包有apsrtable,xtable,memisc,texreg,outreg,和stargazer(例如参见这里:https://www.r-statistics.com/2013/01/stargazer-package-for-beautiful-latex-tables-from-r-statistical -models-output /).

是否有任何类似的R包支持包装的型号h2o

这是两个简单GLM模型的示例h2o,我喜欢将它们作为"漂亮"表格彼此相邻打印.

# Load package and setup h2o
library(h2o)
localH2O <- h2o.init(ip = 'localhost', port = 54321, max_mem_size = '4g')

# Load data
prostatePath <- system.file("extdata", "prostate.csv", package = "h2o")
prostate.hex <- h2o.importFile(path = prostatePath, destination_frame = "prostate.hex")

# Run GLMs
model.output.1 <- h2o.glm(y = "CAPSULE", x = c("RACE","PSA","DCAPS"),
  training_frame = prostate.hex,family = "binomial", …
Run Code Online (Sandbox Code Playgroud)

r stargazer texreg h2o

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

逐行组合列表(Python)

假设我有3个不同的列表

col1 = ['2006-03-28','2006-04-05','2006-04-06']
col2 = ['IBM', 'MSFT', 'IBM']
col3 = [1000, 1000, 500]
Run Code Online (Sandbox Code Playgroud)

将这些列表组合在另一个列表中的最有效方法是什么,如下所示:

col = [('2006-03-28', 'IBM', 1000),
       ('2006-04-05', 'MSFT', 1000),
       ('2006-04-06', 'IBM', 500)]
Run Code Online (Sandbox Code Playgroud)

python list

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

按组扩展data.table对象时保留现有列

我有一个data.table对象,我id根据日期变量start.time和扩展stop.time.下面列出的代码可行 - 我的问题是如何使我的代码更容易使用.

如何避免在语句中手动列出data.table对象的现有变量,即"start.time"和"stop.time" test <- DT[, list(start.time, stop.time, time=seq(start.time, stop.time, by="1 month")), by=id].如果你假设我不仅有两个变量而是几十个变量,那么手动添加变量会很烦人.目的是包括原始data.table对象中存在的所有列.

我试图添加.SDsetdiff(names(DT), "id")不是变量名称,但这引发了错误.

DT <- data.table(id=sample(1000), 
                 start.time=sample(seq(as.Date("01-01-2010", format="%d-%m-%Y"), as.Date("31-12-2010", format="%d-%m-%Y"), by="day"), 1000, replace=TRUE),
                 stop.time=sample(seq(as.Date("01-01-2011", format="%d-%m-%Y"), as.Date("31-12-2011", format="%d-%m-%Y"), by="day"), 1000, replace=TRUE))

# > DT
#        id start.time  stop.time
#    1: 105 2010-12-16 2011-07-30
#    2: 837 2010-01-15 2011-01-19
#    3: 155 2010-11-30 2011-10-07
#    4: 125 2010-03-31 2011-04-19
#    5: 192 2010-07-13 2011-03-27
#   ---                          
# …
Run Code Online (Sandbox Code Playgroud)

r data.table

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

Scala相当于Python中的Pandas或R中的data.frame / data.table

Python已经拥有pandasR data.table,事实上已经拥有R 用于数据处理的标准库。

Scala相当于什么?

scala dataframe

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