Giter Club home page Giter Club logo

Comments (4)

vnmanoharan avatar vnmanoharan commented on August 11, 2024

We should look into using xarray. Unlike pandas, it supports multidimensional data sets. It also supports metadata in that you can assign a dictionary containing the metadata to a data set. Finally, it is based on pandas, so that we would not have to rewrite the Bayesian inference code. We might think about using it to replace Marray.

from holopy.

tdimiduk avatar tdimiduk commented on August 11, 2024

Yes, it looks like xarray is going to be the right way to do things. I have a very solid proof of concept that it works in my xarray branch:
https://github.com/tdimiduk/holopy/tree/xarray

I looks like it will be able to replace Marray, and give a much cleaner way of handling things like electric field components and timeseries or z stacks.

I should be submitting a PR soon.

from holopy.

tdimiduk avatar tdimiduk commented on August 11, 2024

Backwards comparability question I would like @vnmanoharan's opinion on.

xarray looks like it will make it possible to eliminate most of the marray classes and code. However, loading old yaml files needs those classes to exist. So far I see two decent ways of dealing with this:

  1. Eliminate the code from holopy, provide a separate tool to convert old files into new hdf5/netcdf files

  2. Keep the code in holopy but separate it off into a backwards compatibility file/directory so that holopy can still read all the old files directly, constructing new xarray objects for the user (which in turn can/should be saved as new hdf5/netcdf)

Opinions on which route to take, or do you want to propose a third option?

from holopy.

vnmanoharan avatar vnmanoharan commented on August 11, 2024

Spoke to @tdimiduk offline about this, but re-capping for the record: my preference is to get rid of the legacy code, since otherwise we'll have to maintain it, and to provide a separate tool to convert between formats.

from holopy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.