Я хочу установить новую переменную с функцией прокрутки (скользящее среднее, стандартное отклонение и т. Д.) В dbplyr
Вот база данных
library(odbc)
library(DBI)
library(tidyverse)
library(zoo)
con <- DBI::dbConnect(odbc::odbc(),
Driver = "SQL Server",
Server = "xx.xxx.xxx.xxx",
Database = "stock",
UID = "userid",
PWD = "userpassword")
startday = 20150101
day = tbl(con, in_schema("dbo", "LogDay"))
Я хотел бы рассчитать скользящее среднее за 5 дней, вот мой код, но он не работает
Как я могу решить эту проблему?
library(zoo)
day %>%
mutate(ma5 = rollmean(priceClose, k = 5, fill = NA))
error: nanodbc/nanodbc.cpp:1655: 42000: [Microsoft][ODBC SQL Server Driver][SQL Server]키워드 'AS' 근처의 구문이 [Microsoft][ODBC SQL Server Driver][SQL Server]문을 준비할 수
<SQL> 'SELECT TOP 11 "logNo", "stockCode", "logDate", "priceOpen", "priceHigh", "priceLow", "priceClose", "adjRate", "volume", "amount", "numListed", "remark", "marketCap", "foreignRate", "personNetbuy", "foreignNetbuy", "instNetbuy", "financeNetbuy", "insuranceNetbuy", "toosinNetbuy", "bankNetbuy", "gitaFinanceNetbuy", "pensionNetbuy", "gitaInstNetbuy", "gitaForeignNetbuy", "samoNetbuy", "nationNetbuy", rollmean("priceClose", 5.0 AS "k", NULL AS "fill") AS "ma5"
FROM "dbo"."LogDay"
WHERE ("logDate" > 20150101.0)
ORDER BY "stockCode"'
Warning :
Named arguments ignored for SQL rollmean