queryverse / queryverse/Query.jl

Docs for missing values

Open
#306 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Julia
Stars
403
Forks
48
Avg merge
3d 6h
Merged PRs (30d)
6

Description

I got confused by the following query

metrics = @from i in data0 begin
    @where i.happy != "NA" && i.energetic != "NA" && !ismissing(i.ActualStartTime)
    @select {i.ParticipantID, happy=round(Int, i.happy), energy=round(Int, i.energetic), i.sex, time=i.ActualStartTime}
    @collect DataFrame
end

and I expected the resulting dataframe to not contain any records for which time is missing, but no filtering took place. I had it explained for me on Zulip, that missing are translated to DataValues. The docs https://www.queryverse.org/Query.jl/stable/gettingstarted/#Missing-values-1
are not super clear on this and I did not expect this behavior even after having read that part of the docs again. In particular, the docs do not really mention what to use instead of ismissing or how I can opt out of the automatic translation if it all possible.

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

Start with the “Missing values” section of the Query.jl getting-started documentation linked in the issue, and compare it with the reported query using ismissing. Update the documentation so it clearly explains the DataValues translation, what users should use instead of ismissing, and whether automatic translation can be disabled.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.