JuliaData / JuliaData/DataFrames.jl

Inconsistent formatting of floating point numbers

Open
#3,151 11 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

display
Dominant language
Julia
Stars
1.8k
Forks
372
Avg merge
5d 7h
Merged PRs (30d)
5

Description

I would expect an entire column to either use scientific notation or not. It's especially odd that numbers in descending order flip between notations:

julia> d = DataFrame(x=[717068.92, 506896.01, 472500.85])
3×1 DataFrame
 Row │ x
     │ Float64
─────┼────────────────
   1 │      7.17069e5
   2 │ 506896.0
   3 │      4.72501e5

julia> d.x
3-element Vector{Float64}:
 717068.92
 506896.01
 472500.85

(@v1.9) pkg> st DataFrames
Status `/me/.julia/environments/v1.9/Project.toml`
  [a93c6f00] DataFrames v1.3.5

julia> versioninfo()
Julia Version 1.9.0-DEV.1223
Commit f066855cd5b (2022-08-31 02:40 UTC)
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 8 × AMD Ryzen 7 4700U with Radeon Graphics
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-14.0.5 (ORCJIT, znver2)
  Threads: 8 on 8 virtual cores
Environment:
  JULIA_DEPOT_PATH = /me/.julia

Contributor guide

Open the contributing guide

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

Reproduce the Julia REPL example from the issue and trace the DataFrame display formatting entry point that chooses numeric notation. Determine the intended column-wide notation behavior, then add or update coverage so the sample column renders consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.