Categorical names (again)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 990
- Forks
- 106
- Avg merge
- 7d 34m
- Merged PRs (30d)
- 1
Description
Do we really need, say, the reference level in the Treatment contrast? I'm not sure it adds enough information vs. the complexity it adds to the names to warrant inclusion. Thoughts? AFAICT, it only appears if you specify a reference level. If you specify one, then surely you know what you specified.
[~/]
[7]: dmatrix('~C(A, Treatment)', data=pd.DataFrame([['some really long name'], ['other name'], ['other name']], columns=['A']))
[7]:
DesignMatrix with shape (3, 2)
Intercept C(A, Treatment)[T.some really long name]
1 1
1 0
1 0
Terms:
'Intercept' (column 0)
'C(A, Treatment)' (column 1)
[~/]
[8]: dmatrix("~C(A, Treatment('some really long name'))", data=pd.DataFrame([['some really long name'], ['other name'], ['other name']], columns=['A']))
[8]:
DesignMatrix with shape (3, 2)
Intercept C(A, Treatment('some really long name'))[T.other name]
1 0
1 1
1 1
Terms:
'Intercept' (column 0)
"C(A, Treatment('some really long name'))" (column 1)
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the dmatrix entry point and the Treatment contrast named in the examples. Review how a specified reference level is incorporated into column names, then determine the intended naming behavior and add tests covering both default and explicitly specified reference levels.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100