# temper 1.1.1 (CRAN)

Temporal Encoder-Masked Probabilistic Ensemble Regressor

[Record of 1.1.1](/cran/temper/v/1.1.1.md) | Compare: [With 1.1.0](/cran/temper/compare/1.1.0...1.1.1.md), [With another package](/compare/temper.md#add), [Downloads](/downloads/compare/temper.md#add) | [Licences](/cran/temper/licences.md) | [SBOM](/cran/temper/sbom.md)

Install from CRAN: `install.packages("temper")`

Also from:

- r2u (Ubuntu binaries): `sudo apt install r-cran-temper` _Listed from recorded download activity on this channel, not from a live index, so read it as last known. Bioconductor packages are named r-bioc-<name> there._
- autoCRAN (openSUSE): `sudo zypper install R-temper` _Listed from recorded download activity on this channel, not from a live index, so read it as last known._

- CRAN checks: All OK (13 platforms)
- CRAN 30-day downloads: 189 (down 22.9% on the 30 days before, the worse direction)
- Dependent packages: 0 (none suggest it)
- Test coverage: 0% (of lines run by tests)
- Advisories: None known

## About

[Method](/about/licenses.md)

Implements a probabilistic ensemble time-series forecaster that combines an auto-encoder with a neural decision forest whose split variables are learned through a differentiable feature-mask layer. Functions are written with 'torch' tensors and provide CRPS (Continuous Ranked Probability Scores) training plus mixture-distribution post-processing.

- Maintainer: Giancarlo Vercellino
- Licence: [GPL-3](/licences/GPL-3.md)
- Latest release: 16 Jul 2026
- First release: 15 Jul 2025

- [Website](https://rpubs.com/giancarlo_vercellino/temper)
- [CRAN page](https://cran.r-project.org/package=temper)
- [Source of every release](https://github.com/cran/temper)

[Compare with another package](/compare/temper.md#add)

**More details**

- Releases: 3
- Needs compilation: No
- Needs R: >= 4.1.0
- Config/testthat/edition: 3
- LazyData: true
- RoxygenNote: 7.2.3

**Subjects (1) [Method](/about/subjects.md#found)**

- [Time series analysis](/topics/subjects/time-series-forecasting.md)

**Cite**

#### Package

Run in R for the authors' preferred citation:

`citation("temper")`

APA: Vercellino, G. (2026). temper: Temporal Encoder-Masked Probabilistic Ensemble Regressor (Version 1.1.1) [Computer software]. https://doi.org/10.32614/CRAN.package.temper

BibTeX:

```
@Manual{temper,
  title  = {temper: Temporal Encoder-Masked Probabilistic Ensemble Regressor},
  author = {Vercellino, Giancarlo},
  year   = {2026},
  note   = {R package version 1.1.1},
  doi    = {10.32614/CRAN.package.temper},
  url    = {https://CRAN.R-project.org/package=temper}
}
```

This package has no citation file, so `citation()` returns this entry built from `DESCRIPTION`.

#### R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA: Balamuta, J. J. (2026). R Observatory: Metrics for temper version 1.1.1 [Data set]. HJJB, LLC. Data release v2026-10-28. https://doi.org/10.5281/zenodo.21843040

BibTeX:

```
@misc{robservatorytemper,
  author    = {Balamuta, James Joseph},
  title     = {{R} {Observatory}: Metrics for {temper} version 1.1.1},
  year      = {2026},
  publisher = {HJJB, LLC},
  doi       = {10.5281/zenodo.21843040},
  url       = {https://r-observatory.thecoatlessprofessor.com/packages/temper},
  note      = {Data set. Data release v2026-10-28}
}
```

From data release v2026-10-28, which the citation names so these numbers can be found later.

## Health

[Method](/about/checks-health.md)

All 13 check platforms pass.

13 CRAN platforms: 13 OK.

Platforms now:

- r-devel-linux-x86_64-debian-clang: OK
- r-devel-linux-x86_64-debian-gcc: OK
- r-devel-linux-x86_64-fedora-clang: OK
- r-devel-linux-x86_64-fedora-gcc: OK
- r-devel-windows-x86_64: OK
- r-oldrel-macos-arm64: OK
- r-oldrel-macos-x86_64: OK
- r-oldrel-windows-x86_64: OK
- r-patched-linux-x86_64: OK
- r-release-linux-x86_64: OK
- r-release-macos-arm64: OK
- r-release-macos-x86_64: OK
- r-release-windows-x86_64: OK

#### Over time

No change since 4 Aug 2026

**As a list (3)**

| Changed | Worst status | OK | Notes | Warnings | Errors |
| --- | --- | ---: | ---: | ---: | ---: |
| 4 Aug 2026 | OK | 13 | 0 | 0 | 0 |
| 1 Aug 2026 | Note | 12 | 1 | 0 | 0 |
| 10 Mar 2026 | OK | 14 | 0 | 0 | 0 |

Since March 2026

[Check results on CRAN](https://cran.r-project.org/web/checks/check_results_temper.html)

## Downloads

[Method](/about/downloads.md)

- Downloads in the last 30 days: 194 (down 26% on the 30 days before, the worse direction. It is the sum of 3 channels: CRAN, r2u and autoCRAN.)

CRAN alone: rank among CRAN packages, last 30 days: 23,577 of 26,530.

| Channel | Downloads in the last 30 days | In the total | Rank in that channel | Change |
| --- | ---: | --- | --- | --- |
| CRAN | 189 | yes | 23,577 of 26,530 | down 22.9% on the 30 days before, the worse direction |
| r2u | 3 | yes | 11,992 of 30,526 | down 50% on the 30 days before, the worse direction |
| autoCRAN | 2 | yes | 22,452 of 29,212 | down 81.8% on the 30 days before, the worse direction |

Other windows: [Last 90 days](/cran/temper.md?win=90d#downloads), [Last 365 days](/cran/temper.md?win=365d#downloads), [All time](/cran/temper.md?win=all#downloads).

To leave channels out of the total, name them in the address, joined by dots: `?off=r2u.autocran`.

#### Over time

Downloads over time, the last 12 whole months:

| Month | CRAN | r2u | autoCRAN | Sum |
| --- | ---: | ---: | ---: | ---: |
| Sep 2025 | 118 | 21 | no figure | 139 |
| Oct 2025 | 178 | 2 | no figure | 180 |
| Nov 2025 | 98 | 2 | no figure | 100 |
| Dec 2025 | 115 | 9 | no figure | 124 |
| Jan 2026 | 124 | 2 | no figure | 126 |
| Feb 2026 | 129 | 4 | no figure | 133 |
| Mar 2026 | 176 | no figure | no figure | 176 |
| Apr 2026 | 46 | 11 | no figure | 57 |
| May 2026 | no figure | 7 | no figure | 7 |
| Jul 2026 | 120 | 10 | no figure | 130 |
| Aug 2026 | 170 | 8 | 26 | 204 |
| Sep 2026 | 242 | no figure | 9 | 251 |

First day on record: CRAN 15 Jul 2025, r2u 17 Jul 2025, autoCRAN 2 Jul 2026.

Every channel here counts downloads, so the channels can be stacked and summed for one period. Each channel counts in its own way and covers a different span of years, so read a sum as a rough total, and read a rise where a channel begins as that channel starting, not as growth.

Weeks start on Monday. A first or last week or month that the channel does not cover in full is left out, so every point is a whole period.

Days with no record add nothing to their week or month. For a little-used package that is usually a day with no downloads, but it can also be a gap in collection.

[Compare downloads](/downloads/compare/temper.md#add)

## Dependencies

[Method](/about/reverse-dependencies.md)

- Needs: 6
- Dependent packages: 0
- Suggested by: 0

**Needs (6)**

- [ggplot2](/cran/ggplot2.md)
- [imputeTS](/cran/imputeTS.md)
- [lubridate](/cran/lubridate.md)
- [purrr](/cran/purrr.md)
- [scales](/cran/scales.md)
- [torch](/cran/torch.md)

- Installing it adds: 56 packages, 42.2 MB of source
- Of those, need compilation: 34

**Optional extras (2)**

- [knitr](/cran/knitr.md)
- [testthat](/cran/testthat.md)

## Code

[Method](/about/code-metrics.md)

Selected function: `train_model`

- Kind: Internal R function
- File: R/main.R, line 450
- Lines: 134
- Complexity: 17
- Covered by tests: 0%

Called by 1: [`temper`](/cran/temper.md?fn=temper&view=focus#code) (0% of lines run by tests)

Calls 1: [`nnf_crps_ensemble`](/cran/temper.md?fn=nnf_crps_ensemble&view=focus#code) (0% of lines run by tests)

Paths: 2 steps each way.

Called by 1:

- [`temper`](/cran/temper.md?fn=temper&view=focus#code)

Calls 1:

- [`nnf_crps_ensemble`](/cran/temper.md?fn=nnf_crps_ensemble&view=focus#code)

The open file in the files map is `R/main.R`.

- Functions: 7
- Lines: 361
- Calls that stay inside it: 6
- Calls to other files: 0
- Calls from other files: 0

| Function in main.R | Calls in other files |
| --- | --- |
| [`train_model`](/cran/temper.md?fn=train_model&view=focus#code) selected | nothing outside this file |
| [`dts`](/cran/temper.md?fn=dts&view=focus#code) | nothing outside this file |
| [`gmix`](/cran/temper.md?fn=gmix&view=focus#code) | nothing outside this file |
| [`nnf_crps_ensemble`](/cran/temper.md?fn=nnf_crps_ensemble&view=focus#code) | nothing outside this file |
| [`plot_graph`](/cran/temper.md?fn=plot_graph&view=focus#code) | nothing outside this file |

**More functions (2)**

| Function in main.R | Calls in other files |
| --- | --- |
| [`smart_reframer`](/cran/temper.md?fn=smart_reframer&view=focus#code) | nothing outside this file |
| [`temper`](/cran/temper.md?fn=temper&view=focus#code) | nothing outside this file |


The whole package has 7 function names in 1 file and 6 calls between them.

Graph: the whole call graph has 7 function names that take part in a call and 6 calls between them, set out in 3 layers with callers before what they call. Called by the most functions: `dts` (1), `gmix` (1), `plot_graph` (1), `smart_reframer` (1), `train_model` (1). Calling the most functions: `temper` (5), `train_model` (1), `dts` (0), `gmix` (0), `plot_graph` (0).

Most connected functions: [`temper`](/cran/temper.md?fn=temper&view=focus#code) 5, [`train_model`](/cran/temper.md?fn=train_model&view=focus#code) 2, [`dts`](/cran/temper.md?fn=dts&view=focus#code) 1, [`gmix`](/cran/temper.md?fn=gmix&view=focus#code) 1, [`nnf_crps_ensemble`](/cran/temper.md?fn=nnf_crps_ensemble&view=focus#code) 1, [`plot_graph`](/cran/temper.md?fn=plot_graph&view=focus#code) 1

To select another function, add ?fn=NAME to this address.

The call graph also has an address of its own: /cran/temper/graph.md?fn=train_model&view=focus

- Functions: 7
- Public exports: 1
- Lines of R code: 606
- Median complexity: 4

**Functions (7)**

| Function (sorted, low to high) | Kind | File | Lines | Complexity | Covered |
| --- | --- | --- | ---: | ---: | ---: |
| [`temper`](/cran/temper.md?fn=temper#code) | Public | R/main.R | 55 | 3 | 0% |
| [`dts`](/cran/temper.md?fn=dts#code) | Internal | R/main.R | 7 | 2 | 0% |
| [`gmix`](/cran/temper.md?fn=gmix#code) | Internal | R/main.R | 105 | 7 | 0% |
| [`nnf_crps_ensemble`](/cran/temper.md?fn=nnf_crps_ensemble#code) | Internal | R/main.R | 20 | 2 | 0% |
| [`plot_graph`](/cran/temper.md?fn=plot_graph#code) | Internal | R/main.R | 26 | 6 | 0% |
| [`smart_reframer`](/cran/temper.md?fn=smart_reframer#code) | Internal | R/main.R | 14 | 4 | 0% |
| [`train_model`](/cran/temper.md?fn=train_model#code) | Internal | R/main.R | 134 | 17 | 0% |

This page lists 1 to 7 of 7 functions.

**Size and composition**

#### Lines by kind (854)

| Kind | Lines | Share |
| --- | ---: | ---: |
| R code | 606 | 71% |
| Tests | 100 | 12% |
| Documentation | 148 | 17% |

#### Lines by language

| Language | Lines | Share |
| --- | ---: | ---: |
| R | 706 | 83% |
| Rd | 148 | 17% |

Languages are counted from file extensions.

- Files: 12
- R functions: 7

**Complexity**

- Median: 4
- Mean: 5.86
- Highest: 17
- Median lines per function: 26

_About complexity: Cyclomatic complexity counts the independent paths through a function: 1 is a straight line, higher is harder to test. R functions only._

**Call graph figures**

- R functions: 7
- Calls: 6
- Unconnected: 0
- Groups: 1

**Growth (3 releases)**

Total lines by release: from 787 (on 15 Jul 2025) to 854 (on 16 Jul 2026). The lowest is 787 and the highest is 854.

**Release changes**

[Both releases side by side](/cran/temper/compare/1.1.0...1.1.1.md)

**1.1.0 to 1.1.1**, 18 Aug 2025 to 16 Jul 2026

- Files changed: 6
- Lines added: 53
- Lines deleted: 17
- Exports: No change

**Changed measures (5)**

| Measure | Subject | Before | After |
| --- | --- | ---: | ---: |
| Total lines | Structure | 822 | 854 |
| Lines of R code | Structure | 596 | 606 |
| Lines of tests | Structure | 87 | 100 |
| Lines of documentation | Documentation | 139 | 148 |
| Test lines per line of code | Testing | 0.15 | 0.17 |

**Most changed files (6 of 6)**

| File | Lines added | Lines deleted |
| --- | ---: | ---: |
| `tests/testthat/test-main.R` | 20 | 7 |
| `R/main.R` | 11 | 1 |
| `man/temper.Rd` | 10 | 1 |
| `MD5` | 5 | 5 |
| `DESCRIPTION` | 3 | 3 |
| `NEWS.md` | 4 | 0 |

## Tests

[Method](/about/coverage.md)

The tests ran and coverage was measured.

- Lines run by tests: 0%
- Expressions run by tests: 0%
- Test cases: 3
- Exports named in tests: 100%

**Coverage by file (1)**

1 file measured, least covered first.

| File | Lines | Run by tests | Not run | Coverage |
|---|---:|---:|---:|---:|
| `R/main.R`, 7 functions | 212 | 0 | 212 | 0% |

**Coverage run**

- Lines counted: 212
- Lines the tests ran: 0
- Tests passed: Yes
- Measured with: covr 3.6.5 on R 4.6.1

**Test suite**

- Has tests: Yes
- Test frameworks: testthat
- Test cases: 3
- Lines of tests: 100
- Test lines per line of code: 0.17

## Documentation

[Method](/about/code-metrics.md)

- Exports documented: 100%
- Arguments documented: 100%
- Return value documented: 100%
- Help pages with examples: 100%
- Examples run in checks: 100%

**Other documentation**

- README: No
- Release notes file: Yes
- Help pages: 2
- Lines of documentation: 148

## Datasets

[Method](/about/objects.md)

| Dataset | Size | Columns |
| --- | --- | --- |
| [dummy_set](/cran/temper/data/dummy_set.md), Tech Stock Time Series Dataset, also in 1 other package | 2,133 × 4 | dates, MSFT.Close, TSLA.Close, MARA.Close |

## People

[Method](/about/author-identity.md)

- [Giancarlo Vercellino](/people/Giancarlo+Vercellino.md): Maintainer since 1.0.0 (2025), author, copyright holder

## Repository

[Method](/about/repo-signals.md#figures)

No repository on record

## History

[Method](/about/archive.md)

The line runs from the first release of temper on 15 Jul 2025 to 28 Oct 2026 and marks all 3 of its releases. CRAN archived it once, and it came back once.

#### Archived and back

| Archived | Back | CRAN's reason | Kind |
| --- | --- | --- | --- |
| 28 Apr 2026 | 16 Jul 2026 | "issues were not corrected in time" | Checks not fixed |

| Version | Released | R | Events |
| --- | --- | ---: | --- |
| [1.1.1](/cran/temper/v/1.1.1.md) current | 16 Jul 2026 | 4.6.1 | Back on CRAN 16 Jul 2026. |
| [1.1.0](/cran/temper/v/1.1.0.md) | 18 Aug 2025 | 4.5.1 | Archived 28 Apr 2026. “issues were not corrected in time” |
| [1.0.0](/cran/temper/v/1.0.0.md) | 15 Jul 2025 | 4.5.1 |  |

**Release notes (1.1.1)**

- Improved CRAN compatibility by making torch-based examples and tests run only when the full torch runtime is available.

---

R Observatory is independent of the R Project, CRAN and Bioconductor. The same page for people is at /cran/temper, and every address is listed at /llms.txt.
