sdata 0.25.4__tar.gz → 0.25.6__tar.gz

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.
Files changed (108) hide show
  1. {sdata-0.25.4/sdata.egg-info → sdata-0.25.6}/PKG-INFO +1 -1
  2. {sdata-0.25.4 → sdata-0.25.6}/sdata/__init__.py +1 -1
  3. {sdata-0.25.4 → sdata-0.25.6}/sdata/blob.py +3 -3
  4. {sdata-0.25.4 → sdata-0.25.6}/sdata/data.py +30 -12
  5. sdata-0.25.6/sdata/file.py +42 -0
  6. {sdata-0.25.4 → sdata-0.25.6}/sdata/suuid.py +1 -1
  7. {sdata-0.25.4 → sdata-0.25.6/sdata.egg-info}/PKG-INFO +1 -1
  8. {sdata-0.25.4 → sdata-0.25.6}/sdata.egg-info/SOURCES.txt +1 -0
  9. {sdata-0.25.4 → sdata-0.25.6}/LICENSE-MIT +0 -0
  10. {sdata-0.25.4 → sdata-0.25.6}/MANIFEST.in +0 -0
  11. {sdata-0.25.4 → sdata-0.25.6}/README.md +0 -0
  12. {sdata-0.25.4 → sdata-0.25.6}/pyproject.toml +0 -0
  13. {sdata-0.25.4 → sdata-0.25.6}/sdata/base.py +0 -0
  14. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/__init__.py +0 -0
  15. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/attrdict/__init__.py +0 -0
  16. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/attrdict/default.py +0 -0
  17. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/attrdict/dictionary.py +0 -0
  18. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/attrdict/mapping.py +0 -0
  19. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/attrdict/merge.py +0 -0
  20. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/attrdict/mixins.py +0 -0
  21. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/__init__.py +0 -0
  22. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_common.py +0 -0
  23. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_dump.py +0 -0
  24. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_exceptions.py +0 -0
  25. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_exif.py +0 -0
  26. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_insert.py +0 -0
  27. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_load.py +0 -0
  28. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_remove.py +0 -0
  29. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_transplant.py +0 -0
  30. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/_webp.py +0 -0
  31. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/piexif/helper.py +0 -0
  32. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/__init__.py +0 -0
  33. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/collections/__init__.py +0 -0
  34. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/collections/rangebucketmap.py +0 -0
  35. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/collections/rangemap.py +0 -0
  36. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/collections/rangeset.py +0 -0
  37. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/range/__init__.py +0 -0
  38. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/range/cut.py +0 -0
  39. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/ranger/range/range.py +0 -0
  40. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/semver.py +0 -0
  41. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/simple_graph_db/LICENSE +0 -0
  42. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/simple_graph_db/__init__.py +0 -0
  43. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/simple_graph_db/database.py +0 -0
  44. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/simple_graph_db/schema.sql +0 -0
  45. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/sobol_seq.py +0 -0
  46. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/sortedcontainers/LICENSE +0 -0
  47. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/sortedcontainers/__init__.py +0 -0
  48. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/sortedcontainers/sorteddict.py +0 -0
  49. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/sortedcontainers/sortedlist.py +0 -0
  50. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/sortedcontainers/sortedset.py +0 -0
  51. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/sqlitedict.py +0 -0
  52. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/timeflake/__init__.py +0 -0
  53. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/timeflake/flake.py +0 -0
  54. {sdata-0.25.4 → sdata-0.25.6}/sdata/contrib/timeflake/utils.py +0 -0
  55. {sdata-0.25.4 → sdata-0.25.6}/sdata/doe.py +0 -0
  56. {sdata-0.25.4 → sdata-0.25.6}/sdata/experiments/__init__.py +0 -0
  57. {sdata-0.25.4 → sdata-0.25.6}/sdata/experiments/ks2.py +0 -0
  58. {sdata-0.25.4 → sdata-0.25.6}/sdata/experiments/lapshear.py +0 -0
  59. {sdata-0.25.4 → sdata-0.25.6}/sdata/experiments/material.py +0 -0
  60. {sdata-0.25.4 → sdata-0.25.6}/sdata/image.py +0 -0
  61. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/__init__.py +0 -0
  62. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/db.py +0 -0
  63. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/hashtree.py +0 -0
  64. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/hdf.py +0 -0
  65. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/isomme.py +0 -0
  66. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/json1sqlitestore.py +0 -0
  67. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/jsonsqlitestore.py +0 -0
  68. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/owncloudfs.py +0 -0
  69. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/pgp.py +0 -0
  70. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/pud.py +0 -0
  71. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/simple_signature.py +0 -0
  72. {sdata-0.25.4 → sdata-0.25.6}/sdata/iolib/vault.py +0 -0
  73. {sdata-0.25.4 → sdata-0.25.6}/sdata/metadata.py +0 -0
  74. {sdata-0.25.4 → sdata-0.25.6}/sdata/node.py +0 -0
  75. {sdata-0.25.4 → sdata-0.25.6}/sdata/parameter.py +0 -0
  76. {sdata-0.25.4 → sdata-0.25.6}/sdata/parameters_deprecated.py +0 -0
  77. {sdata-0.25.4 → sdata-0.25.6}/sdata/timestamp.py +0 -0
  78. {sdata-0.25.4 → sdata-0.25.6}/sdata/tools.py +0 -0
  79. {sdata-0.25.4 → sdata-0.25.6}/sdata/workbook.py +0 -0
  80. {sdata-0.25.4 → sdata-0.25.6}/sdata.egg-info/dependency_links.txt +0 -0
  81. {sdata-0.25.4 → sdata-0.25.6}/sdata.egg-info/requires.txt +0 -0
  82. {sdata-0.25.4 → sdata-0.25.6}/sdata.egg-info/top_level.txt +0 -0
  83. {sdata-0.25.4 → sdata-0.25.6}/setup.cfg +0 -0
  84. {sdata-0.25.4 → sdata-0.25.6}/setup.py +0 -0
  85. {sdata-0.25.4 → sdata-0.25.6}/tests/__init__.py +0 -0
  86. {sdata-0.25.4 → sdata-0.25.6}/tests/iolib/__init__.py +0 -0
  87. {sdata-0.25.4 → sdata-0.25.6}/tests/iolib/pud/__init__.py +0 -0
  88. {sdata-0.25.4 → sdata-0.25.6}/tests/iolib/pud/test_pud.py +0 -0
  89. {sdata-0.25.4 → sdata-0.25.6}/tests/iolib/test_hasttree.py +0 -0
  90. {sdata-0.25.4 → sdata-0.25.6}/tests/iolib/test_hdf.py +0 -0
  91. {sdata-0.25.4 → sdata-0.25.6}/tests/iolib/test_jsonsqlitestore.py +0 -0
  92. {sdata-0.25.4 → sdata-0.25.6}/tests/test_attribute.py +0 -0
  93. {sdata-0.25.4 → sdata-0.25.6}/tests/test_blob.py +0 -0
  94. {sdata-0.25.4 → sdata-0.25.6}/tests/test_data.py +0 -0
  95. {sdata-0.25.4 → sdata-0.25.6}/tests/test_image.py +0 -0
  96. {sdata-0.25.4 → sdata-0.25.6}/tests/test_io.py +0 -0
  97. {sdata-0.25.4 → sdata-0.25.6}/tests/test_ks2.py +0 -0
  98. {sdata-0.25.4 → sdata-0.25.6}/tests/test_metadata.py +0 -0
  99. {sdata-0.25.4 → sdata-0.25.6}/tests/test_parameter.py +0 -0
  100. {sdata-0.25.4 → sdata-0.25.6}/tests/test_sqlite.py +0 -0
  101. {sdata-0.25.4 → sdata-0.25.6}/tests/test_suuid.py +0 -0
  102. {sdata-0.25.4 → sdata-0.25.6}/tests/test_table.py +0 -0
  103. {sdata-0.25.4 → sdata-0.25.6}/tests/test_testprogram.py +0 -0
  104. {sdata-0.25.4 → sdata-0.25.6}/tests/test_timeflake.py +0 -0
  105. {sdata-0.25.4 → sdata-0.25.6}/tests/test_timestamp.py +0 -0
  106. {sdata-0.25.4 → sdata-0.25.6}/tests/test_tools.py +0 -0
  107. {sdata-0.25.4 → sdata-0.25.6}/tests/test_vault.py +0 -0
  108. {sdata-0.25.4 → sdata-0.25.6}/tests/test_workbook.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sdata
3
- Version: 0.25.4
3
+ Version: 0.25.6
4
4
  Summary: a structured data format
5
5
  Home-page: https://github.com/lepy/sdata
6
6
  Author: Lepy
@@ -1,7 +1,7 @@
1
1
  # -*-coding: utf-8-*-
2
2
  from __future__ import division
3
3
 
4
- __version__ = '0.25.4'
4
+ __version__ = '0.25.6'
5
5
  __revision__ = None
6
6
  __version_info__ = tuple([int(num) for num in __version__.split('.')])
7
7
 
@@ -5,14 +5,14 @@ import collections
5
5
  import pandas as pd
6
6
  import numpy as np
7
7
  from sdata.timestamp import TimeStamp
8
- from sdata.data import Data
8
+ from sdata.base import Base
9
9
  from sdata.metadata import Metadata, Attribute
10
10
  import json
11
11
  import os
12
12
  import hashlib
13
13
 
14
14
 
15
- class Blob(Data):
15
+ class Blob(Base):
16
16
  """Binary Large Object as reference
17
17
 
18
18
  .. warning::
@@ -31,7 +31,7 @@ class Blob(Data):
31
31
  :param kwargs:
32
32
 
33
33
  """
34
- Data.__init__(self, **kwargs)
34
+ super().__init__(**kwargs)
35
35
  self.metadata.add("blob_name", kwargs.get("name", ""))
36
36
  self.metadata.add("blob_type", "unknown")
37
37
  self.url = kwargs.get("url", "")
@@ -1139,7 +1139,33 @@ class Data(object):
1139
1139
  fh.write(exportstr)
1140
1140
 
1141
1141
  @classmethod
1142
- def from_csv(cls, s=None, filepath=None, sep=";"):
1142
+ def from_csv(cls, filepath, sep=";"):
1143
+ """import sdata.Data from csv
1144
+
1145
+ :param filepath:
1146
+ :param sep: separator (default=";")
1147
+ :return: sdata.Data
1148
+ """
1149
+ data = cls()
1150
+ df = pd.read_csv(filepath, sep=";", comment="#", index_col=0)
1151
+
1152
+
1153
+ #attr
1154
+ sio = open(filepath, "r")
1155
+ sio.seek(0)
1156
+ attritute_list = []
1157
+ for line in sio:
1158
+ if line.startswith("#;"):
1159
+ line = line.rstrip("\n")
1160
+ line = line.split(sep)
1161
+ attritute_list.append(line[1:8])
1162
+ data.metadata = Metadata.from_list(attritute_list)
1163
+ data.table = df
1164
+ return data
1165
+
1166
+
1167
+ @classmethod
1168
+ def from_csv_string(cls, s=None, sep=";"):
1143
1169
  """import sdata.Data from csv
1144
1170
 
1145
1171
  :param s: csv str
@@ -1153,20 +1179,12 @@ class Data(object):
1153
1179
  data = cls()
1154
1180
  df = None
1155
1181
  try:
1156
- if filepath:
1157
- df = pd.read_csv(filepath, sep=";", comment="#", index_col=0)
1158
- sio = open(filepath, "r")
1159
- sio.seek(0)
1160
- elif s is not None:
1161
- sio = StringIO(s)
1162
- df = pd.read_csv(sio, sep=";", comment="#")
1163
- sio.seek(0)
1164
- else:
1165
- logger.error("data.from_csv: no csv data available")
1182
+ sio = StringIO(s)
1183
+ df = pd.read_csv(sio, sep=";", comment="#")
1184
+ sio.seek(0)
1166
1185
  except Exception as exp:
1167
1186
  logging.error(f"{exp}")
1168
1187
  raise
1169
- return
1170
1188
 
1171
1189
  attritute_list = []
1172
1190
  for line in sio:
@@ -0,0 +1,42 @@
1
+ from sdata import SUUID, Base
2
+ import os
3
+
4
+ class File(Base):
5
+ def __init__(self, **kwargs):
6
+ super().__init__(**kwargs)
7
+
8
+ def exists(self, path):
9
+ filepath = os.path.join(path, self.name)
10
+ return os.path.exists(path)
11
+
12
+ class Directory(Base):
13
+ def __init__(self, **kwargs):
14
+ super().__init__(**kwargs)
15
+ self.path = kwargs.get("path", os.getcwd())
16
+ self.files = {}
17
+
18
+ def register_files(self, path):
19
+ self.path = path
20
+ for f in os.listdir(self.path):
21
+ self.add(File(name=f))
22
+
23
+ def add(self, f):
24
+ """
25
+
26
+ """
27
+ self.files[f.name] = f
28
+
29
+ def ls(self):
30
+ """
31
+
32
+ """
33
+ return list(self.files.keys())
34
+
35
+ if __name__ == '__main__':
36
+ f = File(name="a.txt")
37
+ print(f)
38
+
39
+ d = Directory(name="/folder")
40
+ d.add(f)
41
+ print(d.ls())
42
+ print(d)
@@ -163,7 +163,7 @@ class SUUID:
163
163
  :return: suuid
164
164
  """
165
165
  name = cls._clean_name(name)
166
- uid = cls.get_uuid_from_name(name=name, ns_name=ns_name)
166
+ uid = cls.get_uuid_from_name(name=class_name+name, ns_name=ns_name)
167
167
  suuid = cls(class_name=class_name, name=name, huuid=uid.hex)
168
168
  return suuid
169
169
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sdata
3
- Version: 0.25.4
3
+ Version: 0.25.6
4
4
  Summary: a structured data format
5
5
  Home-page: https://github.com/lepy/sdata
6
6
  Author: Lepy
@@ -9,6 +9,7 @@ sdata/base.py
9
9
  sdata/blob.py
10
10
  sdata/data.py
11
11
  sdata/doe.py
12
+ sdata/file.py
12
13
  sdata/image.py
13
14
  sdata/metadata.py
14
15
  sdata/node.py
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes