- Notifications
You must be signed in to change notification settings - Fork160
Open
Milestone
Description
LAS 3 specification:https://github.com/kinverarity1/lasio/blob/main/standards/LAS_3_File_Structure.pdf
Tasks:
- PRRearrange reader #327 Re-arrange LASFile.read so that header sections are parsed before touching any data sections (see comments inParse dates to datetime objects #1)
- IssueParse comma-delimited ~ASCII sections #265 Write a reader to handle comma separated data sections and strings -> numpy record array (refer to discussion inParse dates to datetime objects #1)
- partly completed - seecomment below
- PRRead data section as dataframe #424: Ensure LASFile can handle different data types per CurveItem (possible partial solution PR inRead data section as dataframe #424 which uses pd.DataFrame, althoughnot
pd.read_csv) -Update 26th April: resolved byAllow different data types per curve in data section reader #461 - IssueUse an accelerated numpy reader (
np.genfromtxt) #446: Use an accelerated pandas reader e.g.pd.read_csv/pd.read_fwfwhere it is not needed for substitutions etc (refer to discussion inParse dates to datetime objects #1) -Update 26th April: being worked on inAdd a numpy engine for reading using numpy.genfromtxt() #452 - IssueCompile set of real-world LAS 3 files #513: Compile set of real-world LAS 3 files to provide targets for tests and feature implementation.
- IssueLink LAS 3 "data set" sections together #514: Finalize the API on LASFile for multiple linked Data + Definition sections (e.g. refer to discussion in this issue)
- IssueParse LAS 3 format codes in header section lines #515: Add format to HeaderItem
- Issue TBA Add association to HeaderItem
- Issue TBA: Figure out how to handle runs (needs discussion)
Update May 2020: I will start to sketch out a roadmap for how to achieve this. I think once this is reasonably well tested we can do a version 1 release.
Goals:
- Assume all LAS files are version 3 for parsing, even if they have a VERS code of 2.0. Only avoid this if we have to for performance.
Aim to improve reading performance times, it's really bad at the moment
Because I expect this work might require a broken branch for a while, let's merge into the las3-develop branch if we need to.