-
Notifications
You must be signed in to change notification settings - Fork 0
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
Patrick/move out las reader writer #4
Patrick/move out las reader writer #4
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice piece of work!
I've looked only at curve
, well
, las
and the tests.
Major comments:
- this PR seems to contain changes to plotting that are unrelated to the claimed content (las writer)? This seems problematic, especially since the other PR is still being worked on. What is the branch dependency and merge sequence here?
- I'd put the
las
module not in the root but in adata_io
folder or similar. - there are also changes to file level fixture paths. Why is that? Should this not "safer" in a separate PR, to avoid doing too much in one place? Especially since it is also touching tests and methods unrelated to the LAS IO concern? Or is there a good reason to do this here?
- read/write tests can act up due to paths being interpreted differently on different operating systems. Are we sure that the writing works correctly for every developer setup?
- there is still a lot of read/write/formatting logic in the
well
class, infrom_las
andto_las
andadd_curves_from_lasio
. Do we really need that in there? It feels like it should be a loading/IO concern, and calling a method that creates curves from the output of the loaders in thelas
module. - similar in
curve.from_lasio_curve
, do we really want all that stuff in there?
Merging sequence is #3, then this PR, then #6. #3 Is already merged into this one and there are no conflicts.
I'd like to stick to the current structure without subfolders.
I think it is safe as we are sequentially merging PRs one-by-one. Needed to adjust a few tests to accommodate for the new header object type (pd.DataFrame instead of Header)
Added
Yes I agree. We could move that out. I can also address that in the next #6 PR. This PR is really only about moving out the reader/writer logic (from and to disk) while trying to keep interfaces intact.
This I will address in #6 where I change the curve object. Didn't want to touch the curve construction in this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi Patrick,
this looks really good. I had few comments related to doc. DO you have a notebook or .py file for testing to share?
@fkiraly-shell
I've added TODO tags to keep track of those. Requesting your review and approval. |
Note: First merge #3 before merging this.
Curve
andWell
class to thelas.py
module.Project.header
attribute is now apd.DataFrame
instead of Header class. Adapted functions and methods to accommodate forProject.header
being apd.DataFrame
from_lasio()
tofrom_las()
and add deprecation warning tofrom_lasio()
.version <= 2.0
) 1 to 1 to apd.DataFrame
by splitting the header and the data section from the LAS in two dataframes: