Giter Club home page Giter Club logo

Comments (4)

nicrie avatar nicrie commented on May 28, 2024 1

I must admit I'm not sure of a package that can automatically apply this kind of weighting for you, but that's not to say it doesn't exist!

However, I'm a bit skeptical that simply providing coordinates in kilometers would enable accurate calculation of weights. What you'd actually need is a more detailed understanding of the projection used to represent the data. Climate data is typically portrayed on a rectangular lon/lat grid, which, while convenient and familiar to us as observers, does distort the area represented by a grid point towards the poles, making it appear larger.

The coslat correction is a handy workaround for this specific distortion, but keep in mind that this effect arises from the classic (PlateCarree) projection that's commonly used.

Given that you're working with a different projection, you should be careful about determining the necessary correction, if any is needed at all. It might be unavoidable to delve deeper into your data set to understand the projection used and how it may distort the data.

That said, you can certainly carry out the analysis without any corrections. However, you should be cognizant that in such a case, your results are likely to reflect EOFs of what could be described as "inflated" areas.

from xmca.

nicrie avatar nicrie commented on May 28, 2024

Just to be sure, xMCA only works with xr.DataArray (in xeofs Dataset will be allowed soon), so be sure to convert your Dataset before the analysis.

Also , please ensure that the dimensions are time, lon and lat and remove any other dimension/coordinate i.e. dimensions bnds.

Finally, have you applied latitude correction via .apply_coslat? Unfortunately, this won't work in the current version as it assumes latitudes in degrees to compute the weights. Since your latitudes are in km, the weights will be false and thus the final result.

from xmca.

gkb999 avatar gkb999 commented on May 28, 2024

Just to be sure, xMCA only works with xr.DataArray (in xeofs Dataset will be allowed soon), so be sure to convert your Dataset before the analysis.

I converted to data array, so this shouldn't be a problem.

Also , please ensure that the dimensions are time, lon and lat and remove any other dimension/coordinate i.e. dimensions bnds.
Well, I did not drop the extra bands. I will do that and try
Finally, have you applied latitude correction via .apply_coslat? Unfortunately, this won't work in the current version as it assumes latitudes in degrees to compute the weights. Since your latitudes are in km, the weights will be false and thus the final result.

I'm pretty sure this is the major problem.
As my data array is in meters, do you know any packages/links where in I can apply latitude correction?

Thanks a lot for providing these insights.
Always helpful. :)

from xmca.

gkb999 avatar gkb999 commented on May 28, 2024

you can certainly carry out the analysis without any corrections.

Many Many Thanks for the detailed explanation @nicrie, I'm so glad you're here to provide detailed information on these. I'm working with this projection (https://nsidc.org/data/user-resources/help-center/guide-nsidcs-polar-stereographic-projection), units are in meters.
And also, the data is in anti-meridian zone and hence the classic projections aren't well applied using raster-xarray packages.

I can now get the root cause and will work on it and get back if the re-projection and coslat correction works and I'm able to do EOFs using either xMCA and xeofs. Meanwhile, please get back if by any chance you accidentally come across some information on this.

Thanks a ton again :)

from xmca.

Related Issues (15)

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.