Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DISC/REF: split frame.py and generic.py into smaller files #30360

Closed
jbrockmendel opened this issue Dec 19, 2019 · 2 comments
Closed

DISC/REF: split frame.py and generic.py into smaller files #30360

jbrockmendel opened this issue Dec 19, 2019 · 2 comments
Labels
Refactor Internal refactoring of code

Comments

@jbrockmendel
Copy link
Member

These files are big enough that GH has trouble displaying a blame. I think we should consider splitting pieces of these off into other files. Brainstorming:

  • _make_logical_function, _make_cum_function, _make_stat_function_ddof, _make_stat_function, _make_min_count_stat_function at the bottom of generic could have their own file, maybe ops.unary
  • shared_docs could go in a dedicated file (this might also avoid some circular import issues IIRC)
  • IO pass-through methods could go into mixin classes (xref [ENH] Add to_markdown method #30350 motivating this idea)
    • to_json, to_hdf, to_sql, to_pickle, to_clipboard, to_xarray, to_latex, to_csv make up ~1200 lines of generic
    • to_gbq, to_stata, to_feather, to_parquet, to_html make up ~450 lines of frame.py

Thoughts?

@jreback
Copy link
Contributor

jreback commented Dec 19, 2019

sure this sounds reasonable

shared docs and/or io would be a good place to start

@jbrockmendel jbrockmendel added the Refactor Internal refactoring of code label Dec 22, 2019
@jreback
Copy link
Contributor

jreback commented Apr 1, 2020

we should still do this :)

o would split out the io stuff first as that has huge doc strings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Refactor Internal refactoring of code
Projects
None yet
Development

No branches or pull requests

2 participants