小编Ale*_*lex的帖子

R中的xts回归

是否有使用以下类型的xts对象运行回归的实用程序:

lm(y ~ lab(x, 1) + lag(x, 2) + lag(x,3), data=as.data.frame(coredata(my_xts)))
Run Code Online (Sandbox Code Playgroud)

where my_xtsxts包含a x和a 的对象y.问题的关键在于有没有办法避免做一堆滞后并合并以获得data.frame所有滞后?我认为该包dyn适用于zoo对象,所以我希望它以相同的方式工作,xts但尽管可能有更新的东西.

r time-series lm zoo xts

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

在mysql中使用select语法创建表

我想知道mysql如何解释create table语法:

如果我写:

create table tbl1 (
`v1` int,
`v2` int
 constraint idx primary key (v1)
)
select a, b from tbl2;
Run Code Online (Sandbox Code Playgroud)

它确定哪个值进入v1,哪个值v2在select语句中按顺序进入?它是使用我在create table语句中指定的名称还是从select语句中获取它们?我已经使用过create table XX select val from YY之前的内容,但想更具体地了解上述语法.

mysql sql select create-table

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

我在data.table中的参数(计算结果为逻辑的表达式)

我有以下内容:

test <- data.table(id=1:11, t=c(rep(1:2,5), 3))
test[length(unique(id))>1,list(id, t), by=t]

    id t
 1:  1 1
 2:  2 2
 3:  3 1
 4:  4 2
 5:  5 1
 6:  6 2
 7:  7 1
 8:  8 2
 9:  9 1
10: 10 2
11: 11 3
Run Code Online (Sandbox Code Playgroud)

我预计这组test通过t,评估j每个组语句,返回其中的行i是真实的(即有超过1个唯一ID)。而是返回以下内容:

> test
     id t
 1:  1 1
 2:  2 2
 3:  3 1
 4:  4 2
 5:  5 1
 6:  6 2
 7:  7 1
 8:  8 …
Run Code Online (Sandbox Code Playgroud)

group-by r subset data.table

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

数据表连接时间

data.table在 R 中有两个s:

> tables()
     NAME          NROW   MB COLS                                 KEY       
[1,] dtb      2,536,206   68 dte,permno,capm_beta,mkt_beta_bucket permno,dte
[2,] idx_dtb        573    1 dte                                  dte       
[3,] ssd_dtb 58,808,208 1571 dte,permno,xs_ret,mkt_cap            permno,dte
Total: 1,640MB
Run Code Online (Sandbox Code Playgroud)

我想做一个正确的外连接: select * from dtb right join ssd_dtb using (permno, dte)

等效的命令data.table是:

mdtb <- dtb[ssd_dtb]
Run Code Online (Sandbox Code Playgroud)

到目前为止,这已经运行了大约 20 分钟。这似乎有点长,因为它通常在 SQL 服务器上运行所需的时间更少。我是否滥用了包裹?

回答问题后编辑:我认为了解为什么我必须这样做dtb[ssd_dtb]而不是这样做可能会有所帮助ssd_dtb[dtb]。我设计了一个简单的例子:

> x <- data.table(id=1:5, t=1:15, v=1:15)
> x
    id  t  v
 1:  1  1  1
 2:  2  2  2
 3:  3 …
Run Code Online (Sandbox Code Playgroud)

sql join r data.table

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

删除SAS数据集

我的SAS程序完成后,我想要删除几个数据集.我正在使用这个声明:

proc datasets lib=temp;
    delete xtemp2&sysparm trades&sysparm tickers&sysparm;
quit;
run;
Run Code Online (Sandbox Code Playgroud)

哪里

&sysparm评估数字和tempa libname.但是,我在日志文件中收到以下错误:

142             delete xtemp2&sysparm trades&sysparm tickers&sysparm;
            ______
            180
ERROR 180-322: Statement is not valid or it is used out of proper order.
Run Code Online (Sandbox Code Playgroud)

有谁知道这个问题?

编辑:

Here is some more of the log file to address the answer:
NOTE: "OUT_CSV" file was successfully created.
NOTE: PROCEDURE EXPORT used (Total process time):
      real time           0.27 seconds
      cpu time            0.12 seconds


142             delete xtemp2&sysparm trades&sysparm tickers&sysparm;
        ______
        180 …
Run Code Online (Sandbox Code Playgroud)

sas dataset

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

将日期转换为年季度格式

我有一堆格式的日期,yyyy-mm-dd我想将它们转换为一年中的季度的yyyy-q格式qq(所以月 1, 2, 3 映射到 q=1 和 4, 5, 6 映射到 q =2 等)。我使用以下函数来完成此操作:

get_month <- function(d) { return(as.numeric(format(d, "%m")))}
get_qtr <- function(d) {
f <- function(m) {
    if (m %in% c(1,2,3)) { return(1) }
    else if (m %in% c(4,5,6)) { return(2) }
    else if (m %in% c(7,8,9)) { return(3) }
    else if (m %in% c(10,11,12)) { return(4) }
}
m <- get_month(d)
r <- sapply(m, f)
return(r)
}
Run Code Online (Sandbox Code Playgroud)

然而,这是非常缓慢的。有没有更快的方法来做到这一点?

r date date-format

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

将LaTex中的符号转换为R中的ggplot2

我试图让下面的表达式到我的刻度标记ggplot2:x \to y这里\to是通常的乳胶箭头符号.这样做的正确方法是什么?expression(x%to%y)似乎不起作用.

plot latex r ggplot2

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

在R中以3维样条插值

我想在表面上添加一些值:

x = 1:10
y = 10:1
z = sample(1:10,10)
Run Code Online (Sandbox Code Playgroud)

我想要有趣的东西spline_function(z ~ x + y).R中的实际样条函数似乎只占用x,y因此我不能有二维x坐标.在R中这样做的方法是什么?我知道loess局部多项式等,但样条真的是我正在寻找的.

interpolation r spline loess

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

R中的残差使用auto.arima和预测包

我正在使用auto.arima包中的函数拟合模型forecast.例如,我得到的是AR(1)的模型.然后我从这个模型中提取残差.这如何产生与原始矢量相同数量的残差?如果这是AR(1)模型,那么残差的数量应该比原始时间序列的维数小1.我错过了什么?

例:

require(forecast)
arprocess = as.numeric(arima.sim(model = list(ar=.5), n=100))
#auto.arima(arprocess, d=0, D=0, ic="bic", stationary=T)
#  Series: arprocess 
#  ARIMA(1,0,0) with zero mean     

#  Coefficients:
#          ar1
#       0.5198
# s.e.  0.0867

# sigma^2 estimated as 1.403:  log likelihood=-158.99
# AIC=321.97   AICc=322.1   BIC=327.18
r = resid(auto.arima(arprocess, d=0, D=0, ic="bic", stationary=T))
> length(r)
  [1] 100
Run Code Online (Sandbox Code Playgroud)

更新:深入研究代码auto.arima,我看到它使用Arima了反过来使用的代码stats:::arima.因此,问题实际上是如何stats:::arima计算第一次观察的残差?

regression r prediction forecasting lm

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

在python中解析来自全局范围的变量

我想更好地理解python中的作用域.我有以下玩具示例:

a = 1
print "in global: " + str(a)

def g():
    a += 1
    print "in g(): " + str(a)


def f():
    a += 1
    print "in f(): " + str(a)
    g()

f()
Run Code Online (Sandbox Code Playgroud)

我希望这会运行并打印出来1然后2再打印出来2.但是,我得到了错误:

UnboundLocalError: local variable 'a' referenced before assignment
Run Code Online (Sandbox Code Playgroud)

我会想到两者g()并且f()a从全球范围中拉出来.不正确的?

更新:感谢您的答案,但不清楚的是:如果我只想读取全局变量a并将其分配给我创建的局部变量,还可以命名a吗?

我这样做的原因是我试图找出是否g()继承了f()调用它的范围或者定义它的全局范围?

python python-2.x python-2.7

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