JuliaAI / JuliaAI/ScientificTypes.jl

Separate `interval` and `ratio` types

Open
#194 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

next breaking release
Dominant language
Julia
Stars
98
Forks
7
PR merge metrics
No merged PRs in 30d

Description

I’ve noticed there’s no way to tell the difference between interval and ratio scales ATM. They’re both Continuous right now, but they’re not quite the same; ratio scales have a true zero value (e.g. Kelvin), while interval scales don’t (e.g. Fahrenheit or Celsius). This makes a big difference in some stats analyses; for example, you can say something is “twice as much” with ratio scales, but not with interval scales. These scales are useful since they let us throw errors when users perform invalid operations on interval scales (like taking logarithms or using MAPE); in addition, we can warn users when they make questionable decisions (like trying to do a linear regression with a ratio outcome, without taking the logarithm first).

A good heuristic for ratio types is all-positive values.

What do you think about adding new types to make this distinction possible?

(cc @juliohm for the same issue in DataScienceTraits.jl)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named in the issue. Start by locating the existing Continuous type and its dispatch or validation uses; done means agreeing on how interval and ratio scales are distinguished and which statistical operations are affected.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
backend-api-design, data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.