dsff 1.0.7__py3-none-any.whl → 1.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
dsff/formats/pa.py ADDED
@@ -0,0 +1,29 @@
1
+ # -*- coding: UTF-8 -*-
2
+ from .__common__ import *
3
+
4
+
5
+ __all__ = []
6
+
7
+
8
+ def _nowrite(m):
9
+ raise NotImplementedError(f"none of {m}.write_table and {m}.write_{m} is implemented")
10
+
11
+
12
+ for module in ["feather", "orc", "parquet"]:
13
+ __all__ += [f"from_{module}", f"to_{module}"]
14
+ def gen_func(m):
15
+ def from_(dsff, path=None, exclude=DEFAULT_EXCL):
16
+ dataset = globals()[m].read_table(path)
17
+ dsff.write(data=[dataset.schema.names] + [list(r.values()) for r in dataset.to_pylist()],
18
+ metadata=literal_eval(dataset.schema.metadata.pop(b'__metadata__', b"{}").decode()),
19
+ features={k.decode(): v.decode() for k, v in dataset.schema.metadata.items()})
20
+ from_.__name__ = f"from_{m}"
21
+ def to_(dsff, path=None, text=False):
22
+ with (BytesIO() if text else open(path, 'wb+')) as f:
23
+ getattr(globals()[m], "write_table", getattr(globals()[m], f"write_{m}", _nowrite))(dsff._to_table(), f)
24
+ if text:
25
+ return f.getvalue()
26
+ to_.__name__ = f"to_{m}"
27
+ return from_, to_
28
+ globals()[f'from_{module}'], globals()[f'to_{module}'] = gen_func(module)
29
+
@@ -1,9 +1,9 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: dsff
3
- Version: 1.0.7
3
+ Version: 1.2.0
4
4
  Summary: DataSet File Format (DSFF)
5
5
  Author-email: Alexandre D'Hondt <alexandre.dhondt@gmail.com>
6
- License: GNU GENERAL PUBLIC LICENSE
6
+ License: GNU GENERAL PUBLIC LICENSE
7
7
  Version 3, 29 June 2007
8
8
 
9
9
  Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
@@ -691,18 +691,16 @@ Classifier: Intended Audience :: Other Audience
691
691
  Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
692
692
  Classifier: Programming Language :: Python :: 3
693
693
  Classifier: Programming Language :: Python :: 3 :: Only
694
- Classifier: Programming Language :: Python :: 3.8
695
- Classifier: Programming Language :: Python :: 3.9
696
- Classifier: Programming Language :: Python :: 3.10
697
- Classifier: Programming Language :: Python :: 3.11
698
- Classifier: Programming Language :: Python :: 3.12
699
694
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
700
- Requires-Python: <4,>=3.8
695
+ Requires-Python: <4,>=3.10
701
696
  Description-Content-Type: text/markdown
702
697
  License-File: LICENSE
703
698
  Requires-Dist: openpyxl
699
+ Provides-Extra: extra
700
+ Requires-Dist: pyarrow; extra == "extra"
701
+ Dynamic: license-file
704
702
 
705
- <p align="center"><img src="https://github.com/packing-box/python-dsff/raw/main/docs/pages/imgs/logo.png"></p>
703
+ <p align="center" id="top"><img src="https://github.com/packing-box/python-dsff/raw/main/docs/pages/imgs/logo.png"></p>
706
704
  <h1 align="center">DataSet File Format <a href="https://twitter.com/intent/tweet?text=DataSet%20File%20Format%20-%20XSLX-based%20format%20for%20handling%20datasets.%0D%0ATiny%20library%20for%20handling%20a%20dataset%20as%20an%20XSLX%20and%20for%20converting%20it%20to%20ARFF,%20CSV%20or%20a%20FilelessDataset%20structure%20as%20for%20the%20Packing%20Box.%0D%0Ahttps%3a%2f%2fgithub%2ecom%2fpacking-box%2fpython-dsff%0D%0A&hashtags=python,dsff,machinelearning"><img src="https://img.shields.io/badge/Tweet--lightgrey?logo=twitter&style=social" alt="Tweet" height="20"/></a></h1>
707
705
  <h3 align="center">Store a dataset in XSLX-like format.</h3>
708
706
 
@@ -731,6 +729,7 @@ pip install --user dsff
731
729
  f.write("/path/to/my-dataset") # folder of a FilelessDataset (containing data.csv, features.json and metadata.json)
732
730
  f.to_arff() # creates ./my-dataset.arff
733
731
  f.to_csv() # creates ./my-dataset.csv
732
+ f.to_db() # creates ./my-dataset.db (SQLite DB)
734
733
  # while leaving the context, ./my-dataset.dsff is created
735
734
  ```
736
735
 
@@ -0,0 +1,15 @@
1
+ dsff/VERSION.txt,sha256=pkcIsBDivPYoFU3cIF7UloimNH75OmakJJJDD2PwIbE,7
2
+ dsff/__info__.py,sha256=K60bLbmoDIwAWcHCSXwl3vWOgYQjPhlF7sKg5fm-wC0,423
3
+ dsff/__init__.py,sha256=vTxmziCSSeaEL5kO5RTN9G1jbFPHNFBzeWL_DEEI29M,173
4
+ dsff/formats/__common__.py,sha256=-_sLqf1xyZ7nq7WiYZJnNNwi_m27bI8lGpZUnigtts0,1110
5
+ dsff/formats/__init__.py,sha256=8dLZt4MB5klIsqVKXheSF4_Qiw-BIjfnZZT5jIxVBjY,13827
6
+ dsff/formats/arff.py,sha256=z4WJMl3keqHz1VWApWflditVLOK5QYSF7qTANfB1w9E,7096
7
+ dsff/formats/csv.py,sha256=9r_Qnle3lGKAgy2YR_HHgMRNHVIayhn215zCfggjBtE,805
8
+ dsff/formats/dataset.py,sha256=tIjWWaEzazIPUhTURAP3PiOc_WGxdEukLyW2-uVOE4k,1390
9
+ dsff/formats/db.py,sha256=6KmPrYimKLlRutv9h6THBsBXG-bUvC-XHMkJyD72UV8,3565
10
+ dsff/formats/pa.py,sha256=8tGXdngkqD-FHr37LDTri-9VGtOfnkk4202N6rbp1GM,1188
11
+ dsff-1.2.0.dist-info/licenses/LICENSE,sha256=IwGE9guuL-ryRPEKi6wFPI_zOhg7zDZbTYuHbSt_SAk,35823
12
+ dsff-1.2.0.dist-info/METADATA,sha256=nIF8MoI4D9bd7edo6m5IB6hXRBEDnweSNUpwg7x9wPI,46109
13
+ dsff-1.2.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
14
+ dsff-1.2.0.dist-info/top_level.txt,sha256=bmP8yHsEIiNYtYRJGnUl7TDsrLG_zb5g0-AVpVjKssI,5
15
+ dsff-1.2.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (72.2.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5