summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-10 03:39:19 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-10 03:39:19 +0000
commit27ab9af1b94a4e3b7e49a4ea2e6a111c10bcb1ff (patch)
tree7e3427fb33b0ffc0b380d6242c43e46035175076
parent2b9ccf04e6edf876398cfec4daa5ff9490290bde (diff)
automatic import of python-mat73openeuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-mat73.spec332
-rw-r--r--sources1
3 files changed, 334 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..aa2cf74 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/mat73-0.60.tar.gz
diff --git a/python-mat73.spec b/python-mat73.spec
new file mode 100644
index 0000000..b977360
--- /dev/null
+++ b/python-mat73.spec
@@ -0,0 +1,332 @@
+%global _empty_manifest_terminate_build 0
+Name: python-mat73
+Version: 0.60
+Release: 1
+Summary: Load MATLAB .mat 7.3 into Python native data types (via h5/hd5/hdf5/h5py)
+License: GPL3
+URL: https://github.com/skjerns/mat7.3
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/8f/36/1f70c608ca2018a8b29dbce25ba11d8bdce6c3f4cdb9e48d1fc592c9eb0c/mat73-0.60.tar.gz
+BuildArch: noarch
+
+Requires: python3-h5py
+Requires: python3-numpy
+
+%description
+![Python package](https://github.com/skjerns/mat7.3/workflows/Python%20package/badge.svg) ![pypi Version](https://img.shields.io/pypi/v/mat73)
+
+# mat 7.3
+
+Load MATLAB 7.3 .mat files into Python.
+
+Starting with MATLAB 7.3, `.mat` files have been changed to store as custom `hdf5` files.
+This means they cannot be loaded by `scipy.io.loadmat` any longer and raise.
+
+```Python
+NotImplementedError: Please use HDF reader for matlab v7.3 files
+```
+
+## Quickstart
+
+This library loads MATLAB 7.3 HDF5 files into a Python dictionary.
+
+```Python
+import mat73
+data_dict = mat73.loadmat('data.mat')
+```
+
+As easy as that!
+
+By enabling `use_attrdict=True` you can even access sub-entries of `structs` as attributes, just like in MATLAB:
+
+```Python
+data_dict = mat73.loadmat('data.mat', use_attrdict=True)
+struct = data_dict['structure'] # assuming a structure was saved in the .mat
+struct[0].var1 == struct[0]['var1'] # it's the same!
+```
+
+You can also specifiy to only load a specific variable or variable tree, useful to reduce loading times
+
+```Python
+data_dict = mat73.loadmat('data.mat', only_include='structure')
+struct = data_dict['structure'] # now only structure is loaded and nothing else
+
+data_dict = mat73.loadmat('data.mat', only_include=['var/subvar/subsubvar', 'tree1/'])
+tree1 = data_dict['tree1'] # the entire tree has been loaded, so tree1 is a dict with all subvars of tree1
+subsubvar = data_dict['var']['subvar']['subsubvar'] # this subvar has been loaded
+```
+
+## Installation
+
+To install, run:
+
+```
+pip install mat73
+```
+
+Alternatively for most recent version:
+
+```
+pip install git+https://github.com/skjerns/mat7.3
+```
+
+## Datatypes
+
+The following MATLAB datatypes can be loaded
+
+| MATLAB | Python |
+| ------------------------ | ----------------- |
+| logical | np.bool_ |
+| single | np.float32 |
+| double | np.float64 |
+| int8/16/32/64 | np.int8/16/32/64 |
+| uint8/16/32/64 | np.uint8/16/32/64 |
+| complex | np.complex128 |
+| char | str |
+| struct | list of dicts |
+| cell | list of lists |
+| canonical empty | [] |
+| missing | None |
+| sparse | scipy.sparse.csc |
+| Other (ie Datetime, ...) | Not supported |
+
+## Short-comings
+
+- This library will __only__ load mat 7.3 files. For older versions use `scipy.io.loadmat`
+- Proprietary MATLAB types (e.g `datetime`, `duriation`, etc) are not supported. If someone tells me how to convert them, I'll implement that
+- For now, you can't save anything back to the .mat. It's a bit more difficult than expected, so it's not on the roadmap for now
+- See also [hdf5storage](https://github.com/frejanordsiek/hdf5storage), which can indeed be used for saving .mat, but has less features for loading
+- See also [pymatreader](https://gitlab.com/obob/pymatreader/) which has a (maybe even better) implementation of loading MAT files, even for older ones
+
+
+
+
+%package -n python3-mat73
+Summary: Load MATLAB .mat 7.3 into Python native data types (via h5/hd5/hdf5/h5py)
+Provides: python-mat73
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-mat73
+![Python package](https://github.com/skjerns/mat7.3/workflows/Python%20package/badge.svg) ![pypi Version](https://img.shields.io/pypi/v/mat73)
+
+# mat 7.3
+
+Load MATLAB 7.3 .mat files into Python.
+
+Starting with MATLAB 7.3, `.mat` files have been changed to store as custom `hdf5` files.
+This means they cannot be loaded by `scipy.io.loadmat` any longer and raise.
+
+```Python
+NotImplementedError: Please use HDF reader for matlab v7.3 files
+```
+
+## Quickstart
+
+This library loads MATLAB 7.3 HDF5 files into a Python dictionary.
+
+```Python
+import mat73
+data_dict = mat73.loadmat('data.mat')
+```
+
+As easy as that!
+
+By enabling `use_attrdict=True` you can even access sub-entries of `structs` as attributes, just like in MATLAB:
+
+```Python
+data_dict = mat73.loadmat('data.mat', use_attrdict=True)
+struct = data_dict['structure'] # assuming a structure was saved in the .mat
+struct[0].var1 == struct[0]['var1'] # it's the same!
+```
+
+You can also specifiy to only load a specific variable or variable tree, useful to reduce loading times
+
+```Python
+data_dict = mat73.loadmat('data.mat', only_include='structure')
+struct = data_dict['structure'] # now only structure is loaded and nothing else
+
+data_dict = mat73.loadmat('data.mat', only_include=['var/subvar/subsubvar', 'tree1/'])
+tree1 = data_dict['tree1'] # the entire tree has been loaded, so tree1 is a dict with all subvars of tree1
+subsubvar = data_dict['var']['subvar']['subsubvar'] # this subvar has been loaded
+```
+
+## Installation
+
+To install, run:
+
+```
+pip install mat73
+```
+
+Alternatively for most recent version:
+
+```
+pip install git+https://github.com/skjerns/mat7.3
+```
+
+## Datatypes
+
+The following MATLAB datatypes can be loaded
+
+| MATLAB | Python |
+| ------------------------ | ----------------- |
+| logical | np.bool_ |
+| single | np.float32 |
+| double | np.float64 |
+| int8/16/32/64 | np.int8/16/32/64 |
+| uint8/16/32/64 | np.uint8/16/32/64 |
+| complex | np.complex128 |
+| char | str |
+| struct | list of dicts |
+| cell | list of lists |
+| canonical empty | [] |
+| missing | None |
+| sparse | scipy.sparse.csc |
+| Other (ie Datetime, ...) | Not supported |
+
+## Short-comings
+
+- This library will __only__ load mat 7.3 files. For older versions use `scipy.io.loadmat`
+- Proprietary MATLAB types (e.g `datetime`, `duriation`, etc) are not supported. If someone tells me how to convert them, I'll implement that
+- For now, you can't save anything back to the .mat. It's a bit more difficult than expected, so it's not on the roadmap for now
+- See also [hdf5storage](https://github.com/frejanordsiek/hdf5storage), which can indeed be used for saving .mat, but has less features for loading
+- See also [pymatreader](https://gitlab.com/obob/pymatreader/) which has a (maybe even better) implementation of loading MAT files, even for older ones
+
+
+
+
+%package help
+Summary: Development documents and examples for mat73
+Provides: python3-mat73-doc
+%description help
+![Python package](https://github.com/skjerns/mat7.3/workflows/Python%20package/badge.svg) ![pypi Version](https://img.shields.io/pypi/v/mat73)
+
+# mat 7.3
+
+Load MATLAB 7.3 .mat files into Python.
+
+Starting with MATLAB 7.3, `.mat` files have been changed to store as custom `hdf5` files.
+This means they cannot be loaded by `scipy.io.loadmat` any longer and raise.
+
+```Python
+NotImplementedError: Please use HDF reader for matlab v7.3 files
+```
+
+## Quickstart
+
+This library loads MATLAB 7.3 HDF5 files into a Python dictionary.
+
+```Python
+import mat73
+data_dict = mat73.loadmat('data.mat')
+```
+
+As easy as that!
+
+By enabling `use_attrdict=True` you can even access sub-entries of `structs` as attributes, just like in MATLAB:
+
+```Python
+data_dict = mat73.loadmat('data.mat', use_attrdict=True)
+struct = data_dict['structure'] # assuming a structure was saved in the .mat
+struct[0].var1 == struct[0]['var1'] # it's the same!
+```
+
+You can also specifiy to only load a specific variable or variable tree, useful to reduce loading times
+
+```Python
+data_dict = mat73.loadmat('data.mat', only_include='structure')
+struct = data_dict['structure'] # now only structure is loaded and nothing else
+
+data_dict = mat73.loadmat('data.mat', only_include=['var/subvar/subsubvar', 'tree1/'])
+tree1 = data_dict['tree1'] # the entire tree has been loaded, so tree1 is a dict with all subvars of tree1
+subsubvar = data_dict['var']['subvar']['subsubvar'] # this subvar has been loaded
+```
+
+## Installation
+
+To install, run:
+
+```
+pip install mat73
+```
+
+Alternatively for most recent version:
+
+```
+pip install git+https://github.com/skjerns/mat7.3
+```
+
+## Datatypes
+
+The following MATLAB datatypes can be loaded
+
+| MATLAB | Python |
+| ------------------------ | ----------------- |
+| logical | np.bool_ |
+| single | np.float32 |
+| double | np.float64 |
+| int8/16/32/64 | np.int8/16/32/64 |
+| uint8/16/32/64 | np.uint8/16/32/64 |
+| complex | np.complex128 |
+| char | str |
+| struct | list of dicts |
+| cell | list of lists |
+| canonical empty | [] |
+| missing | None |
+| sparse | scipy.sparse.csc |
+| Other (ie Datetime, ...) | Not supported |
+
+## Short-comings
+
+- This library will __only__ load mat 7.3 files. For older versions use `scipy.io.loadmat`
+- Proprietary MATLAB types (e.g `datetime`, `duriation`, etc) are not supported. If someone tells me how to convert them, I'll implement that
+- For now, you can't save anything back to the .mat. It's a bit more difficult than expected, so it's not on the roadmap for now
+- See also [hdf5storage](https://github.com/frejanordsiek/hdf5storage), which can indeed be used for saving .mat, but has less features for loading
+- See also [pymatreader](https://gitlab.com/obob/pymatreader/) which has a (maybe even better) implementation of loading MAT files, even for older ones
+
+
+
+
+%prep
+%autosetup -n mat73-0.60
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-mat73 -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.60-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..0750f3e
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+13c6a66b7594367ab40b99d18a743de7 mat73-0.60.tar.gz