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

Use "PyData Ecosystem" or "Scientific Python Ecosystem"? #3442

Closed
seisman opened this issue Sep 18, 2024 · 4 comments · Fixed by #3447
Closed

Use "PyData Ecosystem" or "Scientific Python Ecosystem"? #3442

seisman opened this issue Sep 18, 2024 · 4 comments · Fixed by #3447
Assignees
Labels
documentation Improvements or additions to documentation
Milestone

Comments

@seisman
Copy link
Member

seisman commented Sep 18, 2024

In the project goals, we mention that:

Integration with the PyData ecosystem: numpy.ndarray or pandas.DataFrame for data tables, xarray.DataArray for grids, and geopandas.GeoDataFrame for geographical data.

After looking at the link https://pydata.org/, users (and even myself) may be still confused with the definition and scope of "PyData Ecosystem". The best explanation of "PyData Ecosystem" may be this post: https://stackoverflow.com/questions/18168400/the-pydata-ecosystem.

In addition to "PyData Ecosystem", a similar term is "Scientific Python Ecosystem". This term is used on the NumPy Nature paper (https://www.nature.com/articles/s41586-020-2649-2#Sec3 and the figure 2 https://www.nature.com/articles/s41586-020-2649-2/figures/2) and across the scientific Python site. The term is also well defined at https://tools.scientific-python.org/about/:

The Scientific Python ecosystem is a loose federation of community developed and owned Python projects widely used in scientific research, technical computing, and data science.

I think we should use "Scientific Python Ecosystem" instead of "PyData Ecosystem".

@seisman seisman added the discussions Need more discussion before taking further actions label Sep 18, 2024
@yvonnefroehlich
Copy link
Member

It’s nice that you bring up this discussion.
Actually, I was also wondering about the difference between the "PyData Ecosystem" and "Scientific Python Ecosystem" but I did not look at this in more detail. Looking at your links am I also a bit usure about the exact definition of "PyData Ecosystem" (is this a community, a conference, or a list of Python libraries / packages?).

The SPEC 0 rules we are following are related to the “Scientific Python ecosystem” (https://www.pygmt.org/dev/minversions.html) and in the AGU abstract we wrote “Scientific Python ecosystem”:

PyGMT integrates smoothly within the Scientific Python ecosystem

Despite we currently write in the README:

Integration with the PyData ecosystem: numpy.ndarray or pandas.DataFrame for data tables, xarray.DataArray for grids, and geopandas.GeoDataFrame for geographical data

@yvonnefroehlich
Copy link
Member

So, after looking at Fig. 2 of the mentioned NumPy Nature publication (https://www.nature.com/articles/s41586-020-2649-2#Fig2) in more detail I feel using consistently "Scientific Python ecosystem" makes sense. In this figure they list different libraries and projects, which cover the data types we mention in the README:

Integration with the PyData ecosystem: numpy.ndarray or pandas.DataFrame for data tables, xarray.DataArray for grids, and geopandas.GeoDataFrame for geographical data.

@weiji14
Copy link
Member

weiji14 commented Sep 22, 2024

That sentence used to read "Integration with the SciPy stack" 😆 I suggested at #605 (comment) to change it to "PyData Ecosystem" based on this stackoverflow answer, but the intention was more around PyData "data structures" (like numpy arrays, pandas dataframes, xarray dataarrays, etc), some of which live under the https://github.com/pydata organization.

As of 2024, I think 'PyData' has expanded quite a bit since NumFOCUS is sponsoring many projects now (see https://numfocus.org/sponsored-projects/?_sft_project_category=python-interface), so the term is a bit more vague. Changing it to Scientific Python Ecosystem sounds good since we have a policy around SPEC 0 and that page has a concrete list of packages/dependencies we integrate with.

@seisman seisman added documentation Improvements or additions to documentation and removed discussions Need more discussion before taking further actions labels Sep 22, 2024
@seisman seisman added this to the 0.14.0 milestone Sep 22, 2024
@seisman
Copy link
Member Author

seisman commented Sep 22, 2024

We will go with the "Scientific Python Ecosystem".

@seisman seisman added the help wanted Helping hands are appreciated label Sep 22, 2024
@yvonnefroehlich yvonnefroehlich self-assigned this Sep 23, 2024
@yvonnefroehlich yvonnefroehlich removed the help wanted Helping hands are appreciated label Sep 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants