是否有使用以下类型的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_xts是xts包含a x和a 的对象y.问题的关键在于有没有办法避免做一堆滞后并合并以获得data.frame所有滞后?我认为该包dyn适用于zoo对象,所以我希望它以相同的方式工作,xts但尽管可能有更新的东西.
我想知道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之前的内容,但想更具体地了解上述语法.
我有以下内容:
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) 我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) 我的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) 我有一堆格式的日期,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)
然而,这是非常缓慢的。有没有更快的方法来做到这一点?
我试图让下面的表达式到我的刻度标记ggplot2:x \to y这里\to是通常的乳胶箭头符号.这样做的正确方法是什么?expression(x%to%y)似乎不起作用.
我想在表面上添加一些值:
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局部多项式等,但样条真的是我正在寻找的.
我正在使用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计算第一次观察的残差?
我想更好地理解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()调用它的范围或者定义它的全局范围?
r ×7
data.table ×2
lm ×2
sql ×2
create-table ×1
dataset ×1
date ×1
date-format ×1
forecasting ×1
ggplot2 ×1
group-by ×1
join ×1
latex ×1
loess ×1
mysql ×1
plot ×1
prediction ×1
python ×1
python-2.7 ×1
python-2.x ×1
regression ×1
sas ×1
select ×1
spline ×1
subset ×1
time-series ×1
xts ×1
zoo ×1