.
1. 문제
acf 거리 계산을 위해 TSdist 패키지의 TSDatabaseDistances 함수를 사용하다 오류가 발생했어요.
기출문제 풀이를 해보려는 과정에서 (2022.07.14 - [ADP 실기 준비(R)] - [ADP 실기 study log] ADP 23회 코로나 시계열 데이터 ) 전에는 <simpleError in .common.ts.sanity.check(x): NA in the series> 에러가 발생했습니다.
오랫만에 그 문제를 해결하려고 시도하는 중에, 원래 오류 해결은 못하고 새로운 오류를 만났어요
2. 재현
rm(list=ls())
pacman::p_load(tidyverse,magrittr,lubridate,reshape2,recipes,forecast, factoextra, dtw)
temp <- "https://www.sharpsightlabs.com/datasets/covid19/covid_data_2020-05-08.csv" %>%
read_delim(delim = ";") %>%
select(date, country, confirmed, new_cases, dead)
temp %>%
group_by(country) %>%
mutate (row =row_number()) %>%
pivot_wider(names_from = country,
values_from = new_cases) %>%
ungroup() %>%
select (-date, -row) %>%
t() %>%
TSdist::TSDatabaseDistances( distance = "acf")
Error in .get_entry_index(name, stop_if_missing) :
Entry “TSDistances” not in registry.
3. 문제 원인
정확한 원인은 아직 모름
distance 관련 패키들은 library 등록을 통해 pr_DB 업데이트가 필수적으로 보임.
4. 해결 방법
TSdist::TSDatabaseDistances 로 명시하는 것과 별개로 library(TSdist) 호출 필요
rm(list=ls())
pacman::p_load(tidyverse,magrittr,lubridate,reshape2,recipes,forecast, factoextra, dtw)
temp <- "https://www.sharpsightlabs.com/datasets/covid19/covid_data_2020-05-08.csv" %>%
read_delim(delim = ";") %>%
select(date, country, confirmed, new_cases, dead)
library(TSdist)
temp %>%
group_by(country) %>%
mutate (row =row_number()) %>%
pivot_wider(names_from = country,
values_from = new_cases) %>%
ungroup() %>%
select (-date, -row) %>%
t() %>%
TSdist::TSDatabaseDistances( distance = "acf")
5. 연구
참고 : http://uribo.github.io/rpkg_showcase/data-analysis/proxy.html
pr_DB
summary(pr_DB)
pr_DB$get_entry("TSDistances")
library(TSdist)
호출 이후 결과가 달라짐
'ADP (R)' 카테고리의 다른 글
오늘의 ADP 준비 / 2022-08-08 월(D48) (0) | 2022.08.08 |
---|---|
[R] NA in the series 오류 해결 (0) | 2022.08.08 |
오늘의 ADP 준비 / 2022-08-07 일(D49) (0) | 2022.08.07 |
매개효과분석 (0) | 2022.08.06 |
오늘의 ADP 준비 / 2022-08-03 수(D53) (0) | 2022.08.03 |