小编mch*_*gun的帖子

用Caret来估算缺失值

我正在参加Kaggle Titanic比赛,我有一个关于输入缺失值的问题.我正在尝试使用Caret包,我的训练集包括因素和数字.

我想使用preProcessCaret中的函数来估算缺失值,但在使用preProcess之前,我需要将所有因子转换为带有该dummyVars函数的虚拟变量.

dummies  = dummyVars(survived ~ . -1, data = train, na.action = na.pass)
xtrain = predict(dummies, train)
Run Code Online (Sandbox Code Playgroud)

然而,在使用dummyVars转换因子的过程中,所有的NA都是通过一些未知的算法预测age的,即使我已经指定,所有遗漏的列都变为1 na.action = na.pass.我想将我的因子转换为虚拟变量而没有触及NA,所以我可以使用然后使用该preProcess函数来估算它们.我怎样才能做到这一点?

谢谢.

在这里输入:

structure(list(survived = structure(c(1L, 2L, 2L, 2L, 1L, 1L, 
1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 2L), .Label = c("0", 
"1"), class = "factor"), pclass = structure(c(3L, 1L, 3L, 1L, 
3L, 3L, 1L, 3L, 3L, 2L, 3L, 1L, 3L, …
Run Code Online (Sandbox Code Playgroud)

r r-caret

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

将数据框拆分为固定大小的行

我有一堆不同长度的数据帧,范围从大约.15,000到500,000.对于这些数据帧中的每一个,我想将它们分成更小的数据帧,每个数据帧有300行,我将对其进行进一步处理.我怎样才能做到这一点?

这(按行数分割数据帧)提供了部分答案,但它不起作用,因为并非所有数据帧的长度都是300的倍数.

如果可以同时提供plyr和non-plyr解决方案,将非常感激.

谢谢!

split r plyr dataframe

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

IBrokers要求历史期货合约数据?

我试图请求历史期货数据,但对于初学者来说,ibrokers.pdf文档记录不充分.示例Gold Miny Contract Dec11 NYSELIFFE:

goldminy<-twsFuture("YG","NYSELIFFE","201112",multiplier="33.2")
reqHistoricalData(conn,
Contract= "goldminy",
endDateTime"",
barSize = "1 S",
duration = "1 D",
useRTH = "0",
whatToShow = "TRADES","BID", "ASK", "BID_ASK",
timeFormat = "1",
tzone = "",
verbose = TRUE,
tickerId = "1",
eventHistoricalData,
file)
Run Code Online (Sandbox Code Playgroud)

我也不知道如何正确指定一些数据参数?

whatToShow?我需要Date,Time,BidSize,Bid,Ask,AskSize,Last,LastSize,Volume

tickerID?

eventHistoricalData?

档案?

r ibrokers

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

rsession空闲时的CPU使用率

我最近注意到我的R/RStudio安装存在问题.当我打开RStudio时,活动监视器中的CPU使用情况显示,即使R处于空闲状态且没有运行任何内容,rsession和kernel_task进程仍会占用约30%的使用率.我知道这是一个非常模糊的问题描述,我希望有人在这里可以指点如何调试此问题或发布更多相关信息.

谢谢.

> sessionInfo()
R version 2.15.2 (2012-10-26)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)

locale:
[1] en_GB.UTF-8/en_GB.UTF-8/en_GB.UTF-8/C/en_GB.UTF-8/en_GB.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] tools_2.15.2
Run Code Online (Sandbox Code Playgroud)

macos r rstudio

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

IBrokers历史指数数据

如何从Interactive Brokers获取IND的历史数据?如果是期货,我会使用这个命令(这里建议IBrokers请求历史期货合约数据?):

library(twsInstrument)
a <- reqHistoricalData(tws, getContract("ESJUN2013"))
Run Code Online (Sandbox Code Playgroud)

但是对connid标准普尔指数的相应指挥给出了一个错误:

> a <- reqHistoricalData(tws, getContract("11004968"))
Connected with clientId 110.
Contract details request complete. Disconnected.
waiting for TWS reply on ES ....failed.
Warning message:
In errorHandler(con, verbose, OK = c(165, 300, 366, 2104, 2106,  :
  Error validating request:-'uc' : cause - HMDS Expired Contract Violation:contract can not expire.
Run Code Online (Sandbox Code Playgroud)

PS有足够积分的人应该为IBrokers创建一个标签

r ibrokers

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

Sys.glob扩展

我正在尝试使用Sys.glob打开一个名为"apcp_sfc_latlon_subset_19940101_20071231.nc". 以下命令的文件:

> Sys.glob(file.path("data/train", "apcp*"))
[1] "data/train/apcp_sfc_latlon_subset_19940101_20071231.nc"
Run Code Online (Sandbox Code Playgroud)

但是这个命令不会返回任何内容.我不知道为什么它不起作用.

> Sys.glob(file.path("data/train", "apcp", "*"))
character(0)
Run Code Online (Sandbox Code Playgroud)

我想要"apcp"位作为它自己的参数,因为我将传递变量而不是硬编码字符串.

谢谢.

r filepath

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

无法在OS X上安装netCDF4 python包

我正在尝试在OS X上安装netCDF4 pip install netCDF4,我收到以下错误:

------------------------------------------------------------
/usr/local/bin/pip run on Wed Aug  7 23:02:37 2013
Downloading/unpacking netCDF4

  Running setup.py egg_info for package netCDF4



    HDF5_DIR environment variable not set, checking some standard locations ..

    checking /Users/mc ...

    checking /usr/local ...

    checking /sw ...

    checking /opt ...

    checking /opt/local ...

    checking /usr ...

    Traceback (most recent call last):

      File "<string>", line 16, in <module>

      File "/var/folders/jj/0w0dd3n16jq4g5579g6c7h040000gn/T/pip-build/netCDF4/setup.py", line 114, in <module>

        raise ValueError('did not find HDF5 headers')

    ValueError: did not find HDF5 headers …
Run Code Online (Sandbox Code Playgroud)

python pip netcdf

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

R是Python中的read.table等价物

我正在尝试将我的一些处理工作从R转移到Python.在R中,我使用read.table()来读取非常混乱的CSV文件,它会以正确的格式自动拆分记录.例如

391788,"HP Deskjet 3050 scanner always seems to break","<p>I'm running a Windows 7 64 blah blah blah........ake this work permanently?</p>

<p>Update: It might have something to do with my computer. It seems to work much better on another computer, windows 7 laptop. Not sure exactly what the deal is, but I'm still looking into it...</p>
","windows-7 printer hp"
Run Code Online (Sandbox Code Playgroud)

正确分为4列.1条记录可以分成很多行,并且到处都有逗号.在RI只做:

read.table(infile, header = FALSE, nrows=chunksize, sep=",", stringsAsFactors=FALSE)
Run Code Online (Sandbox Code Playgroud)

Python中有什么能够同样做到这一点吗?

谢谢!

python r read.table

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

更快地计算numpy数组python中字符串出现次数的方法

我有一个numpy元组:

trainY = np.array([('php', 'image-processing', 'file-upload', 'upload', 'mime-types'),
                   ('firefox',), ('r', 'matlab', 'machine-learning'),
                   ('c#', 'url', 'encoding'), ('php', 'api', 'file-get-contents'),
                   ('proxy', 'active-directory', 'jmeter'), ('core-plot',),
                   ('c#', 'asp.net', 'windows-phone-7'),
                   ('.net', 'javascript', 'code-generation'),
                   ('sql', 'variables', 'parameters', 'procedure', 'calls')], dtype=object)
Run Code Online (Sandbox Code Playgroud)

我给出了这个np.array子集的索引列表:

x = [0, 4]
Run Code Online (Sandbox Code Playgroud)

和一个字符串:

label = 'php'
Run Code Online (Sandbox Code Playgroud)

我想计算标签'php'出现在np.array的这个子集中的次数.在这种情况下,答案是2.

笔记:

1)标签只会出现在元组中的最多ONCE

2)元组的长度可以是1到5.

3)列表的长度x通常为7-50.

4)长度trainY约为0.8密耳

我目前的代码是:

sum([1 for n in x if label in trainY[n]])
Run Code Online (Sandbox Code Playgroud)

这是我的程序的性能瓶颈,我正在寻找一种方法来使它更快.我认为,我们可以在跳过循环x,只是做了矢量化仰视trainY喜欢trainY[x],但我无法得到的东西的工作.

谢谢.

python arrays string performance numpy

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

itertools.product - 返回列表而不是元组

我想itertools.product返回一个列表而不是一个元组.我目前通过创建我自己的函数来做到这一点:

def product_list(*args, **kwds):
    # product('ABCD', 'xy') --> Ax Ay Bx By Cx Cy Dx Dy
    # product(range(2), repeat=3) --> 000 001 010 011 100 101 110 111
    pools = map(tuple, args) * kwds.get('repeat', 1)
    result = [[]]
    for pool in pools:
        result = [x + [y] for x in result for y in pool]
    for prod in result:
        yield list(prod)  # Yields list() instead of tuple()
Run Code Online (Sandbox Code Playgroud)

代码来自Python文档 - 我刚刚修改了最后一行.这很好,但似乎不是很聪明.

这样做的其他方法是什么?我正在考虑使用类似的东西decorator或用我自己的生成器函数包装它.我对这两个概念都不太熟悉所以如果有人能给我看,我会很感激.

编辑 我正在做一些像这样凌乱的事情:

for r0 in …
Run Code Online (Sandbox Code Playgroud)

python python-itertools

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