[R] Help with another ggplot error
Bill Poling
B|||@Po||ng @end|ng |rom ze||@@com
Thu Jun 13 18:19:36 CEST 2019
UGH!
I stared and stared at this thinking I may have a typo and did not see it!
Thank you very much Sir!
WHP
autocorrelate <- function(data, value, lags = 0.20) { #lags Not Lags!!!!! Sheesh!
value_expr <- enquo(value)
acf_values <- data %>%
select(!! value_expr) %>%
pull() %>%
acf(lag.max = tail(lags, 1), plot = FALSE) %>%
.$acf %>%
.[,,1]
ret <- tibble(acf = acf_values) %>%
rowid_to_column(var = "lag") %>%
mutate(lag = lag - 1) %>%
filter(lag %in% lags)
return(ret)
}
g2 <- as_tibble(dftmp) %>%
autocorrelate(NetEditRev, lags = 0:nrow(.)) %>%
ggplot(aes(lag, acf)) +
geom_point(alpha = 0.5, color = "#2c3e50") +
expand_limits(y = c(-1, 1)) +
theme_tq() +
labs(title = "Autocorrelation For Net Edit Revenue")
From: William Dunlap <wdunlap using tibco.com>
Sent: Thursday, June 13, 2019 10:38 AM
To: Bill Poling <Bill.Poling using zelis.com>
Cc: r-help (r-help using r-project.org) <r-help using r-project.org>
Subject: Re: [R] Help with another ggplot error
> Hello I have created a function called autocorrelate.
>
> When I run it with ggplot I get this error:
> #Error in autocorrelate(., NetEditRev, lags = 0:nrow(.)) : unused argument (lags = 0:nrow(.))
This means that autocorrelate does not have an argument called lags. E.g.
> f <- function(x) x+1
> f(y=10)
Error in f(y = 10) : unused argument (y = 10)
It looks like your autocorrelate has an argument called 'Lags', not 'lags'.
Use traceback() after an error
Bill Dunlap
TIBCO Software
wdunlap http://tibco.com
On Thu, Jun 13, 2019 at 7:14 AM Bill Poling <mailto:Bill.Poling using zelis.com> wrote:
#RStudio Version 1.2.1335
sessionInfo()
#R version 3.5.3 (2019-03-11)
#Platform: x86_64-w64-mingw32/x64 (64-bit)
#Running under: Windows >= 8 x64 (build 9200)
Hello I have created a function called autocorrelate.
When I run it with ggplot I get this error:
#Error in autocorrelate(., NetEditRev, lags = 0:nrow(.)) : unused argument (lags = 0:nrow(.))
Using what I learned from Rui yesterday I have tried to track down the problem myself
#---------------------------------- ggplot ISSUE 2 -----------------------------------------------------------#
#------------------------------------------------------------------------------------------------------------------#
getAnywhere('lags')
# A single object matching 'lags' was found
# It was found in the following places
# package:TTR
# namespace:TTR
# with value
function (x, n = 1)
{
x <- as.matrix(x)
if (is.null(colnames(x)))
colnames(x) <- paste("V", 1:NCOL(x), sep = "")
out <- embed(x, n + 1)
if (n == 1)
lag.names <- 1
else if (NCOL(x) == 1)
lag.names <- 1:n
else lag.names <- rep(1:n, NCOL(x))
colnames(out) <- c(colnames(x), paste(colnames(x), sort(lag.names),
sep = "."))
return(out)
}
<bytecode: 0x0000021163065658>
# <environment: namespace:TTR>
#Here are references I have perused but not sure they help, or at least I do not understand how they help me?
https://stackoverflow.com/questions/32056718/annotate-ggplot-bar-chart-error-unused-arguments#https://stackoverflow.com/questions/24004974/sudden-unused-argument-error
find("lags")
#"package:TTR"
#Here are the Pkgs/libraries loaded, and I see TTR_0.23-4
# I did not load this library so it must be coming in with another library?
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] plotly_4.9.0 tseries_0.10-46 timeDate_3043.102 h2o_3.22.1.1 lime_0.4.1
[6] parsnip_0.0.2 sweep_0.2.1.1 forecast_8.7 riem_0.1.1 timetk_0.1.1.1
[11] tidyquant_0.5.6 forcats_0.4.0 stringr_1.4.0 dplyr_0.8.1 purrr_0.3.2
[16] readr_1.3.1 tidyr_0.8.3 tibble_2.1.1 ggplot2_3.1.1 tidyverse_1.2.1
[21] quantmod_0.4-14 TTR_0.23-4 PerformanceAnalytics_1.5.2 xts_0.11-2 zoo_1.8-5
[26] lubridate_1.7.4 yardstick_0.0.3
?`TTR-package`
These are the libraries I have loaded
library(yardstick)
library(tidyquant)
library(timetk)
library(riem)
library(forecast)
library(sweep)
library(parsnip)
library(lime)
library(h2o)
library(timeDate)
library(tseries)
library(ggplot2)
library(tidyverse)
library(lubridate)
library(plotly)
I tried changing lags to lags1 in the function but that did not help
Here are the script and a data sample to assist anyone who might try to help me.
Thank you for any advice.
WHP
#Create a function----
autocorrelate <- function(dftmp, value, Lags = 0.20) {
value_expr <- enquo(value)
acf_values <- dftmp %>%
select(!! value_expr) %>%
pull() %>%
acf(lag.max = tail(lags, 1), plot = FALSE) %>%
.$acf %>%
.[,,1]
ret <- tibble(acf = acf_values) %>%
rowid_to_column(var = "lag") %>%
mutate(lag = lag - 1) %>%
filter(lag %in% lags)
return(ret)
}
g2 <- as_tibble(dftmp) %>%
autocorrelate(NetEditRev,lags = 0:nrow(.)) %>%
ggplot(aes(lag,acf)) +
geom_point(alpha = 0.5, color = "#2c3e50") +
expand_limits(y = c(-1,1)) +
theme_tq() +
labs(title = "Autocorrelation For Net Edit Revenue")
#And I get --> Error in autocorrelate(., NetEditRev, lags = 0:nrow(.)) : unused argument (lags = 0:nrow(.))
#Notice in the error it looks like autocorrelate(., yet there is no ., in my script?
ggplotly(g2)
str(dftmp)
'data.frame':892 obs. of 10 variables:
$ Date2 : Date, format: "2017-01-01" "2017-01-02" "2017-01-03" "2017-01-04" ...
$ NetEditRev: num -923 19222 -8397 37697 46075 ...
$ index.num : int 1483228800 1483315200 1483401600 1483488000 1483574400 1483660800 1483747200 1483833600 1483920000 1484006400 ...
$ year : int 2017 2017 2017 2017 2017 2017 2017 2017 2017 2017 ...
$ half : int 1 1 1 1 1 1 1 1 1 1 ...
$ quarter : int 1 1 1 1 1 1 1 1 1 1 ...
$ month.lbl : Ord.factor w/ 12 levels "January"<"February"<..: 1 1 1 1 1 1 1 1 1 1 ...
$ day : int 1 2 3 4 5 6 7 8 9 10 ...
$ wday.lbl : Ord.factor w/ 7 levels "Sunday"<"Monday"<..: 1 2 3 4 5 6 7 1 2 3 ...
$ holiday : num 0 1 0 0 0 0 0 0 0 0 ...
Here is a sample of my df
head(dftmp,n=35)
Date2 NetEditRev index.num year half quarter month.lbl day wday.lbl holiday
1 2017-01-01 -923.40 1483228800 2017 1 1 January 1 Sunday 0
2 2017-01-02 19222.09 1483315200 2017 1 1 January 2 Monday 1
3 2017-01-03 -8396.82 1483401600 2017 1 1 January 3 Tuesday 0
4 2017-01-04 37696.58 1483488000 2017 1 1 January 4 Wednesday 0
5 2017-01-05 46075.34 1483574400 2017 1 1 January 5 Thursday 0
6 2017-01-06 38329.35 1483660800 2017 1 1 January 6 Friday 0
7 2017-01-07 3110.51 1483747200 2017 1 1 January 7 Saturday 0
8 2017-01-08 21.39 1483833600 2017 1 1 January 8 Sunday 0
9 2017-01-09 63569.67 1483920000 2017 1 1 January 9 Monday 0
10 2017-01-10 50777.00 1484006400 2017 1 1 January 10 Tuesday 0
11 2017-01-11 55548.60 1484092800 2017 1 1 January 11 Wednesday 0
12 2017-01-12 70217.73 1484179200 2017 1 1 January 12 Thursday 0
13 2017-01-13 62536.15 1484265600 2017 1 1 January 13 Friday 0
14 2017-01-14 2696.83 1484352000 2017 1 1 January 14 Saturday 0
15 2017-01-15 2230.00 1484438400 2017 1 1 January 15 Sunday 0
16 2017-01-16 56310.90 1484524800 2017 1 1 January 16 Monday 1
17 2017-01-17 58521.93 1484611200 2017 1 1 January 17 Tuesday 0
18 2017-01-18 50057.73 1484697600 2017 1 1 January 18 Wednesday 0
19 2017-01-19 57366.70 1484784000 2017 1 1 January 19 Thursday 0
20 2017-01-20 61390.94 1484870400 2017 1 1 January 20 Friday 0
21 2017-01-21 1839.09 1484956800 2017 1 1 January 21 Saturday 0
22 2017-01-22 807.57 1485043200 2017 1 1 January 22 Sunday 0
23 2017-01-23 72209.44 1485129600 2017 1 1 January 23 Monday 0
24 2017-01-24 70799.21 1485216000 2017 1 1 January 24 Tuesday 0
25 2017-01-25 70240.88 1485302400 2017 1 1 January 25 Wednesday 0
26 2017-01-26 51462.66 1485388800 2017 1 1 January 26 Thursday 0
27 2017-01-27 46852.37 1485475200 2017 1 1 January 27 Friday 0
28 2017-01-28 2396.67 1485561600 2017 1 1 January 28 Saturday 0
29 2017-01-29 2051.62 1485648000 2017 1 1 January 29 Sunday 0
30 2017-01-30 72561.32 1485734400 2017 1 1 January 30 Monday 0
31 2017-01-31 69630.69 1485820800 2017 1 1 January 31 Tuesday 0
32 2017-02-01 -17304.22 1485907200 2017 1 1 February 1 Wednesday 0
33 2017-02-02 11773.84 1485993600 2017 1 1 February 2 Thursday 0
34 2017-02-03 20703.69 1486080000 2017 1 1 February 3 Friday 0
35 2017-02-04 2762.87 1486166400 2017 1 1 February 4 Saturday 0
Confidentiality Notice This message is sent from Zelis. ...{{dropped:13}}
______________________________________________
mailto:R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Confidentiality Notice This message is sent from Zelis. This transmission may contain information which is privileged and confidential and is intended for the personal and confidential use of the named recipient only. Such information may be protected by applicable State and Federal laws from this disclosure or unauthorized use. If the reader of this message is not the intended recipient, or the employee or agent responsible for delivering the message to the intended recipient, you are hereby notified that any disclosure, review, discussion, copying, or taking any action in reliance on the contents of this transmission is strictly prohibited. If you have received this transmission in error, please contact the sender immediately. Zelis, 2018.
More information about the R-help
mailing list