cleanTS

R package for univariate time series cleaning.

https://github.com/mayur1009/cleants

Science Score: 18.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (18.3%) to scientific vocabulary
Last synced: 11 months ago · JSON representation ·

Repository

R package for univariate time series cleaning.

Basic Info
Statistics
  • Stars: 11
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 2
Created about 5 years ago · Last pushed almost 3 years ago
Metadata Files
Readme License Citation

README.Rmd

---
output: github_document
---

```{r, echo = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/README-"
)
```


# cleanTS



[![CRAN status](https://www.r-pkg.org/badges/version/cleanTS)](https://CRAN.R-project.org/package=cleanTS)
[![R-CMD-check](https://github.com/Mayur1009/cleanTS/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/Mayur1009/cleanTS/actions/workflows/R-CMD-check.yaml)
[![Lifecycle: stable](https://img.shields.io/badge/lifecycle-stable-brightgreen.svg)](https://lifecycle.r-lib.org/articles/stages.html#stable)



`cleanTS` package focuses on developing a tool for making the process of cleaning large datasets simple and efficient. Currently it solely focuses on data cleaning for univariate time series data. The package is integrated with already developed and deployed tools for missing value imputation. It also provides a way for visualizing data at different resolutions, allowing micro-scale visualization. The ultimate goal is the creation of a handy software tool that deals with the problems, processes, analysis and visualization of big data time series, with minimum human intervention.

* `cleanTS()` checks the data for missing and duplicate timestamps, performs missing value imputation and removes anomalies/outliers from the data.

* `animate_interval()` splits the data and generates an animated plot.

* `interact_plot()` is similar to `animate_interval()` but creates an interactive plot which provides relatively more control over the animation.

The package can also be used using a shiny application, available at [https://mayur1009.shinyapps.io/cleanTS/](https://mayur1009.shinyapps.io/cleanTS/).

Package Documentation can be found at [https://mayur1009.github.io/cleanTS/](https://mayur1009.github.io/cleanTS/).

This project was a part of [Google Summer of Code 2021](https://summerofcode.withgoogle.com/projects/#4626948166254592).

## Installation

```{r Installation, eval=F}
# Install release version from CRAN
install.packages("cleanTS")

# Install development version from GitHub
devtools::install_github("Mayur1009/cleanTS")
```

## Example

```{r Example}
library(cleanTS)

# Read sunspot.month dataset
data <- timetk::tk_tbl(sunspot.month)
print(data)

# Randomly insert missing values to simulate missing value imputation
set.seed(10)
ind <- sample(nrow(data), 100)
data$value[ind] <- NA

# Create `cleanTS` object
cts <- cleanTS(data, date_format = c("my"))
summary(cts)

# Cleaned Data
head(cts$clean_data)

# Genearate animated plot
a <- animate_interval(cts, interval = "10 year")
gen.animation(a, height = 700, width = 900)
```

```{r InteractPlot, eval = F}
# Generate interactive plot
interact_plot(cts, interval = "10 year")
```

Owner

  • Name: Mayur Shende
  • Login: Mayur1009
  • Kind: user

Citation (CITATION.bib)

@article{SHENDE2022155,
title = {cleanTS: Automated (AutoML) tool to clean univariate time series at microscales},
journal = {Neurocomputing},
volume = {500},
pages = {155-176},
year = {2022},
issn = {0925-2312},
doi = {https://doi.org/10.1016/j.neucom.2022.05.057},
url = {https://www.sciencedirect.com/science/article/pii/S0925231222006117},
author = {Mayur Kishor Shende and Andrés E. Feijóo-Lorenzo and Neeraj Dhanraj Bokde},
keywords = {Time series analysis, Time series cleaning, Data cleaning, AutoML, Machine learning},
abstract = {Data cleaning is one of the most important tasks in data analysis processes. One of the perennial challenges in data analytics is the detection and handling of non-valid data. Failing to do so can result in creating imbalanced observations that can cause bias and influence estimates, and in extreme cases, can even lead to inaccurate analytics and unreliable decisions. Usually, the process of data cleaning is time-consuming due to its growing volume, velocity, and variety. Further, the complexity and difficulty of the cleaning process increase with the amount of data to be analyzed. It is rarely the case that any real-world data is clean and error-free. Thus, pre-processing the data before using it for analysis has become standard practice. This paper is intended to provide an easy-to-use and reliable system which automates the cleaning process for univariate time series data. Also, automating the process reduces the time required for cleaning it. Another issue that the proposed system aims to solve is making the visualization of a large amount of data more effective. To tackle these issues, an R package, cleanTS is proposed. The proposed system provides a way to analyze data on different scales and resolutions. Also, it provides users with tools and a benchmark system for comparing various techniques used in data cleaning.}
}

GitHub Events

Total
Last Year

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 22
  • Total Committers: 1
  • Avg Commits per committer: 22.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 4
  • Committers: 1
  • Avg Commits per committer: 4.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Mayur1009 m****e@g****m 22

Issues and Pull Requests

Last synced: 12 months ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: about 1 year
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • felxcon (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 285 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 3
  • Total maintainers: 1
cran.r-project.org: cleanTS

Testbench for Univariate Time Series Cleaning

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 285 Last month
Rankings
Stargazers count: 16.3%
Average: 27.6%
Forks count: 28.8%
Dependent packages count: 29.8%
Dependent repos count: 35.5%
Maintainers (1)
Last synced: 12 months ago

Dependencies

DESCRIPTION cran
  • anomalize * imports
  • data.table * imports
  • gganimate * imports
  • ggplot2 * imports
  • ggtext * imports
  • glue * imports
  • imputeTS * imports
  • imputeTestbench * imports
  • lubridate * imports
  • shiny * imports
  • stringr * imports
  • tibble * imports
  • tibbletime * imports
  • transformr * imports
  • gifski >= 1.4.3 suggests
  • rmarkdown * suggests
  • timetk * suggests