我正在开发一个新的包,我有一些单元测试要写.tests/和之间有什么区别inst/tests/?每种东西应该包含哪些东西?
特别是,我在http://journal.r-project.org/archive/2011-1/RJournal_2011-1_Wickham.pdf中看到Hadley建议使用inst/tests/"因此用户也可以访问它们",然后将引用放入tests/运行中商场.但为什么不把它们全部放入tests/?
在什么情况下readRDS()R 中的函数尝试加载包/命名空间?我很惊讶在新的R会议中看到以下内容:
> loadedNamespaces()
[1] "base" "datasets" "graphics" "grDevices" "methods" "stats"
[7] "tools" "utils"
> x <- readRDS('../../../../data/models/my_model.rds')
There were 19 warnings (use warnings() to see them)
> loadedNamespaces()
[1] "base" "class" "colorspace" "data.table"
[5] "datasets" "dichromat" "e1071" "earth"
[9] "evaluate" "fields" "formatR" "gbm"
[13] "ggthemes" "graphics" "grDevices" "grid"
[17] "Iso" "knitr" "labeling" "lattice"
[21] "lubridate" "MASS" "methods" "munsell"
[25] "plotmo" "plyr" "proto" "quantreg"
[29] "randomForest" "RColorBrewer" "reshape2" "rJava"
[33] "scales" "spam" "SparseM" "splines"
[37] "stats" "stringr" "survival" …Run Code Online (Sandbox Code Playgroud) 内壳时
which conda
Run Code Online (Sandbox Code Playgroud)
我明白了
/anaconda3/bin/conda
Run Code Online (Sandbox Code Playgroud)
在 tmux 里面我得到
/anaconda3/condabin/conda
Run Code Online (Sandbox Code Playgroud)
有人知道我的配置有什么区别或有问题吗?
雅虎的身份验证/授权非常困难.我在我的帐户中启用了BOSS,设置了付款方式,现在我正在尝试使用一些python代码运行搜索:
import urllib2
import oauth2 as oauth
import time
OAUTH_CONSUMER_KEY = "blahblahblah"
OAUTH_CONSUMER_SECRET = "blah"
def oauth_request(url, params, method="GET"):
params['oauth_version'] = "1.0",
params['oauth_nonce'] = oauth.generate_nonce(),
params['oauth_timestamp'] = int(time.time())
consumer = oauth.Consumer(key=OAUTH_CONSUMER_KEY,
secret=OAUTH_CONSUMER_SECRET)
params['oauth_consumer_key'] = consumer.key
req = oauth.Request(method=method, url=url, parameters=params)
req.sign_request(oauth.SignatureMethod_HMAC_SHA1(), consumer, None)
return req
if __name__ == "__main__":
url = "http://yboss.yahooapis.com/ysearch/web"
req = oauth_request(url, params={"q": "cats dogs"})
req_url = req.to_url()
print req_url
result = urllib2.urlopen(req_url)
Run Code Online (Sandbox Code Playgroud)
我一直有urllib2.HTTPError: HTTP Error 401: Unauthorized例外.我无法弄清楚我的密钥或签名方法是否有问题,或者我是否在签署后以某种方式篡改我的数据,或者交易是什么.有人有建议吗?
只是好奇 - 是否有包含物理常数值的包或数据集?我只是问,因为我现在输入273.15了几次(Celsius到Kelvin转换)错误.=)
当我将参数传递给#+begin_src块时,有没有办法动态计算它们?
具体来说,我想将:height属性设置为依赖于我的R代码中的一些变量的东西,如下面的模型:
#+begin_src R
x <- 5
#+end_src
#+begin_src R :results graphics :file foo.svg :height (3*getvar('x'))
...draw picture here
#+end_src
Run Code Online (Sandbox Code Playgroud)
那个getvar()东西,以及那些计算,也许是我的一厢情愿的想法.
R中是否有函数或包用于计算样本的滑动FFT?我的意思是,给定输出fft(x[n:m]),fft(x[1+(n:m)])有效地计算.
理想情况下,我会找到一个在线版本(我在开始时无法访问全时系列,或者它太大而无法放入内存中,我不会尝试将整个运行的FFT保存在内存或者是批处理版本(我给它整个样本x并告诉它运行的窗口宽度w,产生一个复杂的维度矩阵c(w,length(x)/w)).
这里给出了这种算法的一个例子(但我从未试过用任何语言实现它):
http://cnx.org/content/m12029/latest/
如果R中已经没有这样的东西,那我觉得实现起来并不难.
我想编写一个R函数,它接受一个公式作为它的第一个参数,类似于lm()或glm()和朋友.在这种情况下,它是一个获取数据框并以SVMLight格式写出文件的函数,它具有以下通用形式:
<line> .=. <target> <feature>:<value> <feature>:<value> ... <feature>:<value> # <info>
<target> .=. +1 | -1 | 0 | <float>
<feature> .=. <integer> | "qid"
<value> .=. <float>
<info> .=. <string>
Run Code Online (Sandbox Code Playgroud)
例如,以下数据框:
result qid f1 f2 f3 f4 f5 f6 f7 f8
1 -1 1 0.0000 0.1253 0.0000 0.1017 0.00 0.0000 0.0000 0.9999
2 -1 1 0.0098 0.0000 0.0000 0.0000 0.00 0.0316 0.0000 0.3661
3 1 1 0.0000 0.0000 0.1941 0.0000 0.00 0.0000 0.0509 0.0000
4 -1 …Run Code Online (Sandbox Code Playgroud) 我经常使用Sweave生成LaTeX文档,其中通过执行R代码动态生成某些块.这很好用 - 但是也可以使代码块以不同的方式执行,例如通过在shell中执行代码,或者运行Perl,依此类推?能够混合起来会很有帮助,所以我可以做一些事情,比如运行一些shell命令来获取一些数据,运行一些perl命令来预处理它,然后运行R命令来分析它.
当然,我可以使用所有R块并system()用作穷人的替代品,但这并不能使文档中的阅读非常愉快.
以指定单位表示以intervalin 表示的时间长度的最佳方法是什么lubridate?我能弄明白的就是下面这个混乱的东西:
> ival
[1] 2011-01-01 03:00:46 -- 2011-10-21 18:33:44
> difftime(attr(ival, "start") + as.numeric(ival), attr(ival, "start"), 'days')
Time difference of 293.6479 days
Run Code Online (Sandbox Code Playgroud)
(我还在https://github.com/hadley/lubridate/issues/105上添加了这个功能请求,假设没有更好的方法可用 - 但也许有人知道一个.)
更新 - 显然该difftime功能也无法处理.这是一个例子.
> (d1 <- as.POSIXct("2011-03-12 12:00:00", 'America/Chicago'))
[1] "2011-03-12 12:00:00 CST"
> (d2 <- d1 + days(1)) # Gives desired result
[1] "2011-03-13 12:00:00 CDT"
> (i2 <- d2 - d1)
[1] 2011-03-12 12:00:00 -- 2011-03-13 12:00:00
> difftime(attr(i2, "start") + as.numeric(i2), attr(i2, "start"), …Run Code Online (Sandbox Code Playgroud)