maxframe 0.1.0b3__cp311-cp311-win32.whl → 0.1.0b5__cp311-cp311-win32.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.

Potentially problematic release.


This version of maxframe might be problematic. Click here for more details.

Files changed (58) hide show
  1. maxframe/__init__.py +1 -0
  2. maxframe/_utils.cp311-win32.pyd +0 -0
  3. maxframe/codegen.py +46 -1
  4. maxframe/config/config.py +14 -1
  5. maxframe/core/graph/core.cp311-win32.pyd +0 -0
  6. maxframe/dataframe/__init__.py +6 -0
  7. maxframe/dataframe/core.py +34 -10
  8. maxframe/dataframe/datasource/read_odps_query.py +6 -2
  9. maxframe/dataframe/datasource/read_odps_table.py +5 -1
  10. maxframe/dataframe/datastore/core.py +19 -0
  11. maxframe/dataframe/datastore/to_csv.py +2 -2
  12. maxframe/dataframe/datastore/to_odps.py +2 -2
  13. maxframe/dataframe/indexing/reset_index.py +1 -17
  14. maxframe/dataframe/misc/__init__.py +4 -0
  15. maxframe/dataframe/misc/apply.py +1 -1
  16. maxframe/dataframe/misc/case_when.py +141 -0
  17. maxframe/dataframe/misc/pivot_table.py +262 -0
  18. maxframe/dataframe/misc/tests/test_misc.py +61 -0
  19. maxframe/dataframe/plotting/core.py +2 -2
  20. maxframe/dataframe/reduction/core.py +2 -1
  21. maxframe/dataframe/utils.py +7 -0
  22. maxframe/learn/contrib/utils.py +52 -0
  23. maxframe/learn/contrib/xgboost/__init__.py +26 -0
  24. maxframe/learn/contrib/xgboost/classifier.py +86 -0
  25. maxframe/learn/contrib/xgboost/core.py +156 -0
  26. maxframe/learn/contrib/xgboost/dmatrix.py +150 -0
  27. maxframe/learn/contrib/xgboost/predict.py +138 -0
  28. maxframe/learn/contrib/xgboost/regressor.py +78 -0
  29. maxframe/learn/contrib/xgboost/tests/__init__.py +13 -0
  30. maxframe/learn/contrib/xgboost/tests/test_core.py +43 -0
  31. maxframe/learn/contrib/xgboost/train.py +121 -0
  32. maxframe/learn/utils/__init__.py +15 -0
  33. maxframe/learn/utils/core.py +29 -0
  34. maxframe/lib/mmh3.cp311-win32.pyd +0 -0
  35. maxframe/odpsio/arrow.py +10 -6
  36. maxframe/odpsio/schema.py +18 -5
  37. maxframe/odpsio/tableio.py +22 -0
  38. maxframe/odpsio/tests/test_schema.py +41 -11
  39. maxframe/opcodes.py +8 -0
  40. maxframe/serialization/core.cp311-win32.pyd +0 -0
  41. maxframe/serialization/core.pyi +61 -0
  42. maxframe/session.py +32 -2
  43. maxframe/tensor/__init__.py +1 -1
  44. maxframe/tensor/base/__init__.py +2 -0
  45. maxframe/tensor/base/atleast_1d.py +74 -0
  46. maxframe/tensor/base/unique.py +205 -0
  47. maxframe/tensor/datasource/array.py +4 -2
  48. maxframe/tensor/datasource/scalar.py +1 -1
  49. maxframe/udf.py +63 -3
  50. maxframe/utils.py +11 -0
  51. {maxframe-0.1.0b3.dist-info → maxframe-0.1.0b5.dist-info}/METADATA +2 -2
  52. {maxframe-0.1.0b3.dist-info → maxframe-0.1.0b5.dist-info}/RECORD +58 -40
  53. maxframe_client/fetcher.py +65 -3
  54. maxframe_client/session/odps.py +41 -11
  55. maxframe_client/session/task.py +26 -53
  56. maxframe_client/tests/test_session.py +49 -1
  57. {maxframe-0.1.0b3.dist-info → maxframe-0.1.0b5.dist-info}/WHEEL +0 -0
  58. {maxframe-0.1.0b3.dist-info → maxframe-0.1.0b5.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,205 @@
1
+ # Copyright 1999-2024 Alibaba Group Holding Ltd.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ import numpy as np
17
+
18
+ from ... import opcodes as OperandDef
19
+ from ...serialization.serializables import BoolField, Int32Field
20
+ from ..core import TensorOrder
21
+ from ..operators import TensorHasInput, TensorOperatorMixin
22
+ from ..utils import validate_axis
23
+
24
+
25
+ class TensorUnique(TensorHasInput, TensorOperatorMixin):
26
+ _op_type_ = OperandDef.UNIQUE
27
+
28
+ return_index = BoolField("return_index", default=False)
29
+ return_inverse = BoolField("return_inverse", default=False)
30
+ return_counts = BoolField("return_counts", default=False)
31
+ axis = Int32Field("axis", default=None)
32
+
33
+ @property
34
+ def output_limit(self):
35
+ return 1
36
+
37
+ def _gen_kws(self, input_obj, chunk=False, chunk_index=None):
38
+ kws = []
39
+
40
+ # unique tensor
41
+ shape = list(input_obj.shape)
42
+ shape[self.axis] = np.nan
43
+ kw = {"shape": tuple(shape), "dtype": input_obj.dtype, "gpu": input_obj.op.gpu}
44
+ if chunk:
45
+ idx = [0] * len(shape)
46
+ idx[self.axis] = chunk_index or 0
47
+ kw["index"] = tuple(idx)
48
+ kws.append(kw)
49
+
50
+ # unique indices tensor
51
+ if self.return_index:
52
+ kw = {
53
+ "shape": (np.nan,),
54
+ "dtype": np.dtype(np.intp),
55
+ "gpu": input_obj.op.gpu,
56
+ "type": "indices",
57
+ }
58
+ if chunk:
59
+ kw["index"] = (chunk_index or 0,)
60
+ kws.append(kw)
61
+
62
+ # unique inverse tensor
63
+ if self.return_inverse:
64
+ kw = {
65
+ "shape": (input_obj.shape[self.axis],),
66
+ "dtype": np.dtype(np.intp),
67
+ "gpu": input_obj.op.gpu,
68
+ "type": "inverse",
69
+ }
70
+ if chunk:
71
+ kw["index"] = (chunk_index or 0,)
72
+ kws.append(kw)
73
+
74
+ # unique counts tensor
75
+ if self.return_counts:
76
+ kw = {
77
+ "shape": (np.nan,),
78
+ "dtype": np.dtype(np.int_),
79
+ "gpu": input_obj.op.gpu,
80
+ "type": "counts",
81
+ }
82
+ if chunk:
83
+ kw["index"] = (chunk_index or 0,)
84
+ kws.append(kw)
85
+
86
+ return kws
87
+
88
+ def __call__(self, ar):
89
+ from .atleast_1d import atleast_1d
90
+
91
+ ar = atleast_1d(ar)
92
+ if self.axis is None:
93
+ if ar.ndim > 1:
94
+ ar = ar.flatten()
95
+ self._axis = 0
96
+ else:
97
+ self._axis = validate_axis(ar.ndim, self._axis)
98
+
99
+ kws = self._gen_kws(self, ar)
100
+ tensors = self.new_tensors([ar], kws=kws, order=TensorOrder.C_ORDER)
101
+ if len(tensors) == 1:
102
+ return tensors[0]
103
+ return tensors
104
+
105
+
106
+ def unique(
107
+ ar,
108
+ return_index=False,
109
+ return_inverse=False,
110
+ return_counts=False,
111
+ axis=None,
112
+ ):
113
+ """
114
+ Find the unique elements of a tensor.
115
+
116
+ Returns the sorted unique elements of a tensor. There are three optional
117
+ outputs in addition to the unique elements:
118
+
119
+ * the indices of the input tensor that give the unique values
120
+ * the indices of the unique tensor that reconstruct the input tensor
121
+ * the number of times each unique value comes up in the input tensor
122
+
123
+ Parameters
124
+ ----------
125
+ ar : array_like
126
+ Input tensor. Unless `axis` is specified, this will be flattened if it
127
+ is not already 1-D.
128
+ return_index : bool, optional
129
+ If True, also return the indices of `ar` (along the specified axis,
130
+ if provided, or in the flattened tensor) that result in the unique tensor.
131
+ return_inverse : bool, optional
132
+ If True, also return the indices of the unique tensor (for the specified
133
+ axis, if provided) that can be used to reconstruct `ar`.
134
+ return_counts : bool, optional
135
+ If True, also return the number of times each unique item appears
136
+ in `ar`.
137
+ axis : int or None, optional
138
+ The axis to operate on. If None, `ar` will be flattened. If an integer,
139
+ the subarrays indexed by the given axis will be flattened and treated
140
+ as the elements of a 1-D tensor with the dimension of the given axis,
141
+ see the notes for more details. Object tensors or structured tensors
142
+ that contain objects are not supported if the `axis` kwarg is used. The
143
+ default is None.
144
+
145
+ Returns
146
+ -------
147
+ unique : Tensor
148
+ The sorted unique values.
149
+ unique_indices : Tensor, optional
150
+ The indices of the first occurrences of the unique values in the
151
+ original tensor. Only provided if `return_index` is True.
152
+ unique_inverse : Tensor, optional
153
+ The indices to reconstruct the original tensor from the
154
+ unique tensor. Only provided if `return_inverse` is True.
155
+ unique_counts : Tensor, optional
156
+ The number of times each of the unique values comes up in the
157
+ original tensor. Only provided if `return_counts` is True.
158
+
159
+ Examples
160
+ --------
161
+ >>> import maxframe.tensor as mt
162
+
163
+ >>> mt.unique([1, 1, 2, 2, 3, 3]).execute()
164
+ array([1, 2, 3])
165
+ >>> a = mt.array([[1, 1], [2, 3]])
166
+ >>> mt.unique(a).execute()
167
+ array([1, 2, 3])
168
+
169
+ Return the unique rows of a 2D tensor
170
+
171
+ >>> a = mt.array([[1, 0, 0], [1, 0, 0], [2, 3, 4]])
172
+ >>> mt.unique(a, axis=0).execute()
173
+ array([[1, 0, 0], [2, 3, 4]])
174
+
175
+ Return the indices of the original tensor that give the unique values:
176
+
177
+ >>> a = mt.array(['a', 'b', 'b', 'c', 'a'])
178
+ >>> u, indices = mt.unique(a, return_index=True)
179
+ >>> u.execute()
180
+ array(['a', 'b', 'c'],
181
+ dtype='|S1')
182
+ >>> indices.execute()
183
+ array([0, 1, 3])
184
+ >>> a[indices].execute()
185
+ array(['a', 'b', 'c'],
186
+ dtype='|S1')
187
+
188
+ Reconstruct the input array from the unique values:
189
+
190
+ >>> a = mt.array([1, 2, 6, 4, 2, 3, 2])
191
+ >>> u, indices = mt.unique(a, return_inverse=True)
192
+ >>> u.execute()
193
+ array([1, 2, 3, 4, 6])
194
+ >>> indices.execute()
195
+ array([0, 1, 4, 3, 1, 2, 1])
196
+ >>> u[indices].execute()
197
+ array([1, 2, 6, 4, 2, 3, 2])
198
+ """
199
+ op = TensorUnique(
200
+ return_index=return_index,
201
+ return_inverse=return_inverse,
202
+ return_counts=return_counts,
203
+ axis=axis,
204
+ )
205
+ return op(ar)
@@ -20,6 +20,7 @@ from ...serialization.serializables import (
20
20
  AnyField,
21
21
  FieldTypes,
22
22
  NDArrayField,
23
+ StringField,
23
24
  TupleField,
24
25
  )
25
26
  from ...utils import on_deserialize_shape, on_serialize_shape
@@ -37,8 +38,9 @@ class ArrayDataSource(TensorNoInput):
37
38
 
38
39
  _op_type_ = opcodes.TENSOR_DATA_SOURCE
39
40
 
40
- data = NDArrayField("data")
41
- chunk_size = AnyField("chunk_size")
41
+ data = NDArrayField("data", default=None)
42
+ chunk_size = AnyField("chunk_size", default=None)
43
+ order = StringField("order", default=None)
42
44
 
43
45
  def __init__(self, data=None, dtype=None, gpu=None, **kw):
44
46
  if dtype is not None:
@@ -33,7 +33,7 @@ class Scalar(TensorNoInput):
33
33
  def scalar(data, dtype=None, gpu=None):
34
34
  try:
35
35
  arr = np.array(data, dtype=dtype)
36
- op = Scalar(arr, dtype=arr.dtype, gpu=gpu)
36
+ op = Scalar(data=arr, dtype=arr.dtype, gpu=gpu)
37
37
  shape = ()
38
38
  return op(shape)
39
39
  except ValueError:
maxframe/udf.py CHANGED
@@ -12,21 +12,51 @@
12
12
  # See the License for the specific language governing permissions and
13
13
  # limitations under the License.
14
14
 
15
+ import shlex
15
16
  from typing import Callable, List, Optional, Union
16
17
 
17
18
  from odps.models import Resource
18
19
 
19
20
  from .serialization.serializables import (
21
+ BoolField,
20
22
  FieldTypes,
21
23
  FunctionField,
22
24
  ListField,
23
25
  Serializable,
26
+ StringField,
24
27
  )
28
+ from .utils import tokenize
29
+
30
+
31
+ class PythonPackOptions(Serializable):
32
+ key = StringField("key")
33
+ requirements = ListField("requirements", FieldTypes.string, default_factory=list)
34
+ force_rebuild = BoolField("force_rebuild", default=False)
35
+ prefer_binary = BoolField("prefer_binary", default=False)
36
+ pre_release = BoolField("pre_release", default=False)
37
+ pack_instance_id = StringField("pack_instance_id", default=None)
38
+
39
+ def __init__(self, key: str = None, **kw):
40
+ super().__init__(key=key, **kw)
41
+ if self.key is None:
42
+ args = {
43
+ "force_rebuild": self.force_rebuild,
44
+ "prefer_binary": self.prefer_binary,
45
+ "pre_release": self.pre_release,
46
+ }
47
+ self.key = tokenize(set(self.requirements), args)
48
+
49
+ def __repr__(self):
50
+ return (
51
+ f"<PythonPackOptions {self.requirements} force_rebuild={self.force_rebuild} "
52
+ f"prefer_binary={self.prefer_binary} pre_release={self.pre_release}>"
53
+ )
25
54
 
26
55
 
27
56
  class MarkedFunction(Serializable):
28
57
  func = FunctionField("func")
29
58
  resources = ListField("resources", FieldTypes.string, default_factory=list)
59
+ pythonpacks = ListField("pythonpacks", FieldTypes.reference, default_factory=list)
30
60
 
31
61
  def __init__(self, func: Optional[Callable] = None, **kw):
32
62
  super().__init__(func=func, **kw)
@@ -54,13 +84,39 @@ def with_resources(*resources: Union[str, Resource], use_wrapper_class: bool = T
54
84
  def func_wrapper(func):
55
85
  str_resources = [res_to_str(r) for r in resources]
56
86
  if not use_wrapper_class:
57
- func.resources = str_resources
87
+ existing = getattr(func, "resources") or []
88
+ func.resources = existing + str_resources
89
+ return func
90
+
91
+ if isinstance(func, MarkedFunction):
92
+ func.resources = func.resources + str_resources
58
93
  return func
94
+ return MarkedFunction(func, resources=str_resources)
95
+
96
+ return func_wrapper
97
+
98
+
99
+ def with_python_requirements(
100
+ *requirements: str,
101
+ force_rebuild: bool = False,
102
+ prefer_binary: bool = False,
103
+ pre_release: bool = False,
104
+ ):
105
+ result_req = []
106
+ for req in requirements:
107
+ result_req.extend(shlex.split(req))
59
108
 
109
+ def func_wrapper(func):
110
+ pack_item = PythonPackOptions(
111
+ requirements=requirements,
112
+ force_rebuild=force_rebuild,
113
+ prefer_binary=prefer_binary,
114
+ pre_release=pre_release,
115
+ )
60
116
  if isinstance(func, MarkedFunction):
61
- func.resources = str_resources
117
+ func.pythonpacks.append(pack_item)
62
118
  return func
63
- return MarkedFunction(func, resources=list(str_resources))
119
+ return MarkedFunction(func, pythonpacks=[pack_item])
64
120
 
65
121
  return func_wrapper
66
122
 
@@ -72,3 +128,7 @@ def get_udf_resources(
72
128
  func: Callable,
73
129
  ) -> List[Union[Resource, str]]:
74
130
  return getattr(func, "resources", None) or []
131
+
132
+
133
+ def get_udf_pythonpacks(func: Callable) -> List[PythonPackOptions]:
134
+ return getattr(func, "pythonpacks", None) or []
maxframe/utils.py CHANGED
@@ -381,6 +381,11 @@ def build_temp_table_name(session_id: str, tileable_key: str) -> str:
381
381
  return f"tmp_mf_{session_id}_{tileable_key}"
382
382
 
383
383
 
384
+ def build_temp_intermediate_table_name(session_id: str, tileable_key: str) -> str:
385
+ temp_table = build_temp_table_name(session_id, tileable_key)
386
+ return f"{temp_table}_intermediate"
387
+
388
+
384
389
  def build_session_volume_name(session_id: str) -> str:
385
390
  return f"mf_vol_{session_id}"
386
391
 
@@ -1101,3 +1106,9 @@ def get_python_tag():
1101
1106
  # todo add implementation suffix for non-GIL tags when PEP703 is ready
1102
1107
  version_info = sys.version_info
1103
1108
  return f"cp{version_info[0]}{version_info[1]}"
1109
+
1110
+
1111
+ def get_item_if_scalar(val: Any) -> Any:
1112
+ if isinstance(val, np.ndarray) and val.shape == ():
1113
+ return val.item()
1114
+ return val
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: maxframe
3
- Version: 0.1.0b3
3
+ Version: 0.1.0b5
4
4
  Summary: MaxFrame operator-based data analyze framework
5
5
  Requires-Dist: numpy >=1.19.0
6
6
  Requires-Dist: pandas >=1.0.0
7
- Requires-Dist: pyodps >=0.11.5
7
+ Requires-Dist: pyodps >=0.11.6.1
8
8
  Requires-Dist: scipy >=1.0
9
9
  Requires-Dist: pyarrow >=1.0.0
10
10
  Requires-Dist: msgpack >=1.0.0
@@ -1,21 +1,21 @@
1
- maxframe/__init__.py,sha256=MgltwhBvnUQDKKmHDg9Y69TJkRGmQQ9m8-D9FC2pcLU,1007
2
- maxframe/_utils.cp311-win32.pyd,sha256=qW6UqDlnDqdv3dXMO7Fi0HpKRF08FQEHH5mWx4XjUe0,268800
1
+ maxframe/__init__.py,sha256=RujkARDvD6mhFpR330UQ0UfogvIdae5EjR1euFpTiYA,1036
2
+ maxframe/_utils.cp311-win32.pyd,sha256=q0xNszR_ABV4muNQBF4eVjQUyWnnfz9itc-qYtgqKY4,269312
3
3
  maxframe/_utils.pxd,sha256=_qHN-lCY1FQgDFIrrqA79Ys0SBdonp9kXRMS93xKSYk,1187
4
4
  maxframe/_utils.pyx,sha256=_3p6aJEJ6WZYLcNZ6o4DxoxsxqadTlJXFlgDeFPxqUQ,17564
5
- maxframe/codegen.py,sha256=S23hTTu2fIJTv5PMIItE_NPUnadUyoiMmb-1YAqbaWw,16329
5
+ maxframe/codegen.py,sha256=bkOqyLYo_8sJ_zPZK-T9JMvBeKkntqb1Oona9l2aNio,18044
6
6
  maxframe/conftest.py,sha256=JE9I-5mP4u-vgUqYL22mNY3tqpGofM8VMe8c8VUYkzk,4403
7
7
  maxframe/env.py,sha256=xY4wjMWIJ4qLsFAQ5F-X5CrVR7dDSWiryPXni0YSK5c,1435
8
8
  maxframe/errors.py,sha256=xBnvoJjjNcHVLhwj77Dux9ut8isGVmmJXFqefmmx8Ak,711
9
9
  maxframe/extension.py,sha256=o7yiS99LWTtLF7ZX6F78UUJAqUyd-LllOXA2l69np50,2455
10
10
  maxframe/mixin.py,sha256=QfX0KqVIWDlVDSFs0lwdzLexw7lS7W_IUuK7aY1Ib8c,3624
11
- maxframe/opcodes.py,sha256=L-BvSFEUOMrtGJFXIH6zk2Xv_-te5VZxv5eDDCNNt0U,10566
11
+ maxframe/opcodes.py,sha256=4Gj2svgrNNxylfUbQYs8WbDqTpoCoLtlNCtAYdHr-BU,10781
12
12
  maxframe/protocol.py,sha256=N4i0ggLY131gwnxOrCgKeZwzhLKSRB171cx1lWRvUcw,14605
13
- maxframe/session.py,sha256=Mme-jB2hioJC6ttrXfX4XSeHLCMYoFR0ikmmhx82-vc,36624
13
+ maxframe/session.py,sha256=CfDT2iwjl5NAisPrZ6LF0xG_hr75Wr0cfHd6rvtHajw,37515
14
14
  maxframe/typing_.py,sha256=pAgOhHHSM376N7PJLtNXvS5LHNYywz5dIjnA_hHRWSM,1133
15
- maxframe/udf.py,sha256=EFAAV2c8SpWKcF9_8Pocpjc4bXsEASf57Qy_Q30YH4Q,2315
16
- maxframe/utils.py,sha256=CpA4Cqf5Lg7LMKJeJFsmybqVutcSh3sSqMhdHnIi0h4,35017
15
+ maxframe/udf.py,sha256=GJre7snHQxkoyUWX0rpDkrGGU8-qA-SmSe2H9nSMEfo,4422
16
+ maxframe/utils.py,sha256=T_2JIUKG4sWNbrZ_2hf4RWBSRlTQMxW1XnbdudEQPrI,35358
17
17
  maxframe/config/__init__.py,sha256=AHo3deaCm1JnbbRX_udboJEDYrYytdvivp9RFxJcumI,671
18
- maxframe/config/config.py,sha256=Top-9hUEkPvaTlAGrP9GzGjwvZk6YPuHtwy4TEryKqg,13475
18
+ maxframe/config/config.py,sha256=ChDD61-POFvc_wTmfrQaK-8leKV2huiGgnQvi9IsUAk,14019
19
19
  maxframe/config/validators.py,sha256=pKnloh2kEOBRSsT8ks-zL8XVSaMMVIEvHvwNJlideeo,1672
20
20
  maxframe/config/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
21
21
  maxframe/config/tests/test_config.py,sha256=FWQZ6KBUG_jY1-KaR-GKXl7khhlTbuLlk3uaEV8koM8,2839
@@ -33,7 +33,7 @@ maxframe/core/entity/output_types.py,sha256=NnNeDBVAEhD8dtPBWzpM7n6s8neVFrahjd0z
33
33
  maxframe/core/entity/tileables.py,sha256=6jJyFscvb8sH5K_k2VaNGeUm8YrpevCtou3WSUl4Dw8,13973
34
34
  maxframe/core/entity/utils.py,sha256=454RYVbTMVW_8KnfDqUPec4kz1p98izVTC2OrzhOkao,966
35
35
  maxframe/core/graph/__init__.py,sha256=n1WiszgVu0VdXsk12oiAyggduNwu-1-9YKnfZqvmmXk,838
36
- maxframe/core/graph/core.cp311-win32.pyd,sha256=kRuONR4hD0034lelc9RucVLAJByL3GnxIzox8zuz9rs,211968
36
+ maxframe/core/graph/core.cp311-win32.pyd,sha256=0WjCFaihmewTFIUCr9u4XIwfFZ2K5dVA44ixy5fmKbw,211968
37
37
  maxframe/core/graph/core.pyx,sha256=WYlYtXXSs72vfhf2ttJO-4u85exYzy2J9mlALHOMqoA,16354
38
38
  maxframe/core/graph/entity.py,sha256=RT_xbP5niUN5D6gqZ5Pg1vUegHn8bqPk8G8A30quOVA,5730
39
39
  maxframe/core/graph/builder/__init__.py,sha256=vTRY5xRPOMHUsK0jAtNIb1BjSPGqi_6lv86AroiiiL4,718
@@ -54,12 +54,12 @@ maxframe/core/operator/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH
54
54
  maxframe/core/operator/tests/test_core.py,sha256=iqZk4AWubFLO24V_VeV6SEy5xrzBFLP9qKK6tKO0SGs,1755
55
55
  maxframe/core/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
56
56
  maxframe/core/tests/test_mode.py,sha256=fyRH-ksa6MogEs6kNhtXhCZyvhYqflgaXJYI3nSo-ps,2507
57
- maxframe/dataframe/__init__.py,sha256=t_Fnu2MNCgOr_N7mMqGU3LeZXvBF1yOHtLb5u1PoHt0,2187
57
+ maxframe/dataframe/__init__.py,sha256=6wzq6JcohLtvR9kkE2Pc476ExNGslCFRijKFE_R6PB8,2318
58
58
  maxframe/dataframe/arrays.py,sha256=rOvhxMQars9E3SOYSu0ygBuuRVY0QV6xzengnMqKs4s,29616
59
- maxframe/dataframe/core.py,sha256=63TqgmOCTr5wtwbILJ6bLtHZQ6xnZd7LvVrMqR27GDQ,76034
59
+ maxframe/dataframe/core.py,sha256=fOrn9ehPmZnymO-r586jpWW9DTMGt7HWvFMwv-JOrjM,76830
60
60
  maxframe/dataframe/initializer.py,sha256=WW96yQjquofNFt6RPZvgWW4SBmH0OEDj8-BxpuyKThY,10552
61
61
  maxframe/dataframe/operators.py,sha256=jl611oPN5TGpf6UDuIwcLUsjmTcbVBNLLd6cvq8TvKo,8144
62
- maxframe/dataframe/utils.py,sha256=5bk441fXa9dpeT98g8OY8TtMypuoB3XSc3rLA0gjPL4,45371
62
+ maxframe/dataframe/utils.py,sha256=nYpTY5TmpJGs2_1VQBNxR_6miPTcdpIbqgw0aqh1Axo,45539
63
63
  maxframe/dataframe/arithmetic/__init__.py,sha256=MPnITPuO7DDjAMTBawpennv6D0V9AnT6oF0nz2KUIqc,12837
64
64
  maxframe/dataframe/arithmetic/abs.py,sha256=EgyzciSwjE_I3ZBuzeVJFVzBHsxn9MWzCtvHgyEl6ek,1016
65
65
  maxframe/dataframe/arithmetic/add.py,sha256=wbmfAZgxjuP02ZUV4-VEsNhJlyo9tytXwkEx65ahuxI,1766
@@ -119,15 +119,16 @@ maxframe/dataframe/datasource/from_records.py,sha256=ygpKOMXZnDdWzGxMxQ4KdGv-tJF
119
119
  maxframe/dataframe/datasource/from_tensor.py,sha256=mShHYi0fZcG7ZShFVgIezaphh8tSFqR9-nQMm5YKIhw,15146
120
120
  maxframe/dataframe/datasource/index.py,sha256=X_NShW67nYJGxaWp3qOrvyInNkz9L-XHjbApU4fHoes,4518
121
121
  maxframe/dataframe/datasource/read_csv.py,sha256=IvQihmpcZIdzSD7ziX92aTAHNyP5WnTgd2cZz_h43sQ,24668
122
- maxframe/dataframe/datasource/read_odps_query.py,sha256=QKU_7R6dd6GXzNX4IN9uwu3jB17MfhTr2nUtx0LFSNk,10116
123
- maxframe/dataframe/datasource/read_odps_table.py,sha256=ocSKQQ7SwIkzliFCFWNzy3e8J3CBZsf4971oRdlgdks,9294
122
+ maxframe/dataframe/datasource/read_odps_query.py,sha256=6Z8yCSIG96PJFq8B3wk2D29xGedj7y3vV24vGbpoSUA,10269
123
+ maxframe/dataframe/datasource/read_odps_table.py,sha256=d_8jeOMuxyo69l2BYR_kSMI6Ixv25BtqF95YtY9r1Pk,9425
124
124
  maxframe/dataframe/datasource/read_parquet.py,sha256=SZPrWoax2mwMBNvRk_3lkS72pZLe-_X_GwQ1JROBMs4,14952
125
125
  maxframe/dataframe/datasource/series.py,sha256=elQVupKETh-hUHI2fTu8TRxBE729Vyrmpjx17XlRV-8,1964
126
126
  maxframe/dataframe/datasource/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
127
127
  maxframe/dataframe/datasource/tests/test_datasource.py,sha256=UumRBjE-bIuCi7Z4_3t8qb58ZcF8ePRZf3xF7DTvqIA,15041
128
128
  maxframe/dataframe/datastore/__init__.py,sha256=MmlHYvFacMReOHDQMXF-z2bCsLyrSHYBVwIlCsZGOK4,810
129
- maxframe/dataframe/datastore/to_csv.py,sha256=lheaF3ZmBPrcwcWyhK5gEVAGIaLJbvTyVAzqZFGG7eM,8026
130
- maxframe/dataframe/datastore/to_odps.py,sha256=Ml_iF9AspqIgGbeOAjTF3ukAwv-7SizribuqXZdxuXo,5776
129
+ maxframe/dataframe/datastore/core.py,sha256=HCqrZN47RP-IC6zDqLX_RErDUAWkcTB58FHNU70V2b4,762
130
+ maxframe/dataframe/datastore/to_csv.py,sha256=sns4bBgNpq7Ihb-goNqaBRdiEtrG-V6jqhNkWGZ1YaE,7974
131
+ maxframe/dataframe/datastore/to_odps.py,sha256=NVHLccpNYbF6YPk3PKziStonkKlR0JaOFF0AxWlMhBw,5724
131
132
  maxframe/dataframe/extensions/__init__.py,sha256=x6QCVQIfpa8JP2Vu-nZwHJ1CzATnyPoKCBMqxjXwpO0,1439
132
133
  maxframe/dataframe/extensions/accessor.py,sha256=0OA8YPL3rofSvdU0z_1kMLImahrvow_vhxdQDYODki0,1497
133
134
  maxframe/dataframe/extensions/reshuffle.py,sha256=yOlJ-3R4v9CoiEKFA1zgCOvbocy00MxpFBbQuTn-uDw,2720
@@ -159,7 +160,7 @@ maxframe/dataframe/indexing/loc.py,sha256=senwgO_ijLJtbzaeqS_CMefV8nlf3guEQXKdSQ
159
160
  maxframe/dataframe/indexing/reindex.py,sha256=v4Rd85aNfh3onzcFqOhdUjiLrDv9QuNtGh-OaWpnG-4,19699
160
161
  maxframe/dataframe/indexing/rename.py,sha256=E7gI6lHGoBbMnldtErxv5StmS7jrGDdXGtpDusavihA,14009
161
162
  maxframe/dataframe/indexing/rename_axis.py,sha256=ugKcve4Kp8EuSmokQFUL-mVhGQ1cd6IDZ3UauHPiFeQ,6511
162
- maxframe/dataframe/indexing/reset_index.py,sha256=h77bfAHkh1mknUwOBsnTmickejKikW6IUMXmhn6rjcg,14410
163
+ maxframe/dataframe/indexing/reset_index.py,sha256=_NFQZTjHzc_IgiqC-aqFJUfjneyJUN42-ujxGPfBVnQ,13524
163
164
  maxframe/dataframe/indexing/sample.py,sha256=cVpmTV4q0Lo5dK3RdIpP3G5Yo6A6rwCRcqQ-rBEKnPs,8393
164
165
  maxframe/dataframe/indexing/set_axis.py,sha256=ECRV5rRfbsKAQ90nEZVWCtGyu_0hN8ZPTmWNRGIJ0zo,5724
165
166
  maxframe/dataframe/indexing/set_index.py,sha256=XHX9CA0nvPd0War2GTKgr_FKuir_Tiu1bfQ5qz3vBKo,2180
@@ -173,11 +174,12 @@ maxframe/dataframe/merge/concat.py,sha256=cIlwVguZTWFx6GX5fTZ3YctKNkn9wP72TpbxKR
173
174
  maxframe/dataframe/merge/merge.py,sha256=2bqjWlpW_EAbeyYhzQo1nKJ3l7DZJoSuxFmTfHej1X4,22231
174
175
  maxframe/dataframe/merge/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
175
176
  maxframe/dataframe/merge/tests/test_merge.py,sha256=Mkk2f_NnxPqtG_2AyeG_Bt-CdY-JOcNuJ9ADCDA30H4,7480
176
- maxframe/dataframe/misc/__init__.py,sha256=h5O4v3tHqiXZVWaWUMSk1WhfrZWTlXhrslIWV5zpYQc,5237
177
+ maxframe/dataframe/misc/__init__.py,sha256=Lq82VMR4qWhYD1lYTbj8Wr7ndOh0CNATdOtlOikuZRQ,5401
177
178
  maxframe/dataframe/misc/_duplicate.py,sha256=EYNv1_sKm14d91Gm4_Buxo7b5Tuy93MOvaq1TTAUkis,1516
178
179
  maxframe/dataframe/misc/accessor.py,sha256=XtbMV6QrYb2m9oAd8swkFoKAq5mxj_QO0LVLVw5uJB4,10303
179
- maxframe/dataframe/misc/apply.py,sha256=8ZMj1HRCwqV12ixwegESbRlsQGUrha-N4mBR-bT1cdM,24052
180
+ maxframe/dataframe/misc/apply.py,sha256=HnKJP8EtN8LxALiMaLUp7qrI9dcdj6b7TwXmGe_jV8Y,24058
180
181
  maxframe/dataframe/misc/astype.py,sha256=9CO4BEW98Flqk7HHWScjxRK8EdeTRgQDYcyRwEnyIB0,8033
182
+ maxframe/dataframe/misc/case_when.py,sha256=txasRkyfwn2QCEVZ7W0lrI3_ia0PKwBRFBy6TLrQh1I,4992
181
183
  maxframe/dataframe/misc/check_monotonic.py,sha256=LDltdmPq90fZn8A0ucqpNy0uswKo2hJx59Y4EHSN9l4,2506
182
184
  maxframe/dataframe/misc/cut.py,sha256=dOKWwd1D2CYU9LVQvfonMrD8E2eGeBONZvWN1ArCfMM,14288
183
185
  maxframe/dataframe/misc/datetimes.py,sha256=zR99O-8EKKWt4UtNdPI22K8N9mP9XSs9lDQLBPEmFlo,2582
@@ -194,6 +196,7 @@ maxframe/dataframe/misc/map.py,sha256=NSsQvOFrRvULVHPOfJk3B_tIh2IRU4IE0oOF2qkL4m
194
196
  maxframe/dataframe/misc/melt.py,sha256=LoqZ45-J8WvXixtFEbEF1UCtZy4-E6loFtVdFghgt0A,5282
195
197
  maxframe/dataframe/misc/memory_usage.py,sha256=B_UnQKJW62KQMv2VHlZSjlREFdD6t6qT24x4XTcTTMU,8145
196
198
  maxframe/dataframe/misc/pct_change.py,sha256=V4D2MH7b2EmtCHVKwYxX4wcGsuj1EBruwIXlJ5mAZ_c,4736
199
+ maxframe/dataframe/misc/pivot_table.py,sha256=5HmAdczDMJbznFq2omuBKjjib0WvTrohXGwCtHAMwOY,9782
197
200
  maxframe/dataframe/misc/qcut.py,sha256=kcYhSf6m47u5zIEPgG98nE3hv57e6uuCuJs_dxpcszE,3841
198
201
  maxframe/dataframe/misc/select_dtypes.py,sha256=qsrWW8BNBd-hAT1yIlrnbvBjfbzZyttzch7bxKgRkCg,3248
199
202
  maxframe/dataframe/misc/shift.py,sha256=HCGKBuToksgu5LZR_k5eaQrdyrXCeqRZYbZs0J5-N6s,9191
@@ -204,7 +207,7 @@ maxframe/dataframe/misc/transform.py,sha256=JotPUQzKGhCLRi53sk7USU9HscNjUKCzzus9
204
207
  maxframe/dataframe/misc/transpose.py,sha256=SsKRuN9Pj36D6kntnsLfzBsFHjSCiV1cZuPJuKHgbGU,3772
205
208
  maxframe/dataframe/misc/value_counts.py,sha256=7Yd3ZSrCRDMRX093IlzdsrTJ5UUx0n_lbD5AmXLUr_U,5674
206
209
  maxframe/dataframe/misc/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
207
- maxframe/dataframe/misc/tests/test_misc.py,sha256=PCPbsKahbggM62_b-nKctbDXFNI-gxiuep6Z46Rpe2c,13372
210
+ maxframe/dataframe/misc/tests/test_misc.py,sha256=ur4XDSGnwDcS4Kjf8KIiml5MMpBa12jvgjA0f8-bpdY,15610
208
211
  maxframe/dataframe/missing/__init__.py,sha256=DQDpYqjvXN6o6TF76wJIpf1fZICOEJskljzwDNjN80k,1866
209
212
  maxframe/dataframe/missing/checkna.py,sha256=_Rd-HRX7lTzMV3myu745tzoTB8WIqDIJu2TcT1SfdB0,7113
210
213
  maxframe/dataframe/missing/dropna.py,sha256=fJ7xUmhWnViyPnW6nKTF3u2dktqsuwGimSyO71mh0kk,8518
@@ -213,14 +216,14 @@ maxframe/dataframe/missing/replace.py,sha256=g9KqENIuuaFW33KIFXTClngWcVu2ttrGa28
213
216
  maxframe/dataframe/missing/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
214
217
  maxframe/dataframe/missing/tests/test_missing.py,sha256=zhsgn-yonyXYhlFZtH2OpXtvN0NLxFOZpU_vCumTCqA,3223
215
218
  maxframe/dataframe/plotting/__init__.py,sha256=FlSQds0Rdv7CXo_PJFWErMO5KccKrxdLJO58h1IL6uk,1433
216
- maxframe/dataframe/plotting/core.py,sha256=qrGSA_T2RchjqUiVcxawW1WNQBfOXaCzyHiAd5_GgKo,2271
219
+ maxframe/dataframe/plotting/core.py,sha256=fgMSAJldKXGjRzj_qfN9QK1kaThqnv8wybJHSu8Y4qg,2311
217
220
  maxframe/dataframe/plotting/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
218
221
  maxframe/dataframe/plotting/tests/test_plotting.py,sha256=AZ4-C_ASyt3mD29ytsYa0Ut6gA2028ugCKfP9aLK448,4254
219
222
  maxframe/dataframe/reduction/__init__.py,sha256=ejIK5G6ylU0q37XVs_2DkmsnHTtYbE44ffhExNl5Usk,4297
220
223
  maxframe/dataframe/reduction/aggregation.py,sha256=-v_jzKAiLGHOmv3MTDgqovfEYLgeJobU3CqaMWKqkRo,12948
221
224
  maxframe/dataframe/reduction/all.py,sha256=enpOWffBNXAEgFSaiZm0KPwU3izMvWd7M8smLwZjaeE,2044
222
225
  maxframe/dataframe/reduction/any.py,sha256=PensVOfgCcxu7u7-1OuMcD6gov2c2kN01B57O3eoHw8,2048
223
- maxframe/dataframe/reduction/core.py,sha256=1s_qb1XAsX2vRp7kgqoa4hyFP_OVbSR24UXoODYvNqg,31165
226
+ maxframe/dataframe/reduction/core.py,sha256=QrZ4R9Q96wk7oaIzRZ2-KrFZcFbsbamZ8uUuQKAWdio,31232
224
227
  maxframe/dataframe/reduction/count.py,sha256=YLx9bFb2IdnBIkTyApRad0x1yub6TmqncP6TzGcOL_Q,1800
225
228
  maxframe/dataframe/reduction/cummax.py,sha256=S2iUhfBL2lKwFKhFIYMQxlE26pYroEYKG3cqmG0gIAs,1043
226
229
  maxframe/dataframe/reduction/cummin.py,sha256=EWz1CUCQoTwxluvvQPtcNxWdIISr3bBaZPttB104Pdc,1043
@@ -275,15 +278,27 @@ maxframe/dataframe/window/tests/test_expanding.py,sha256=PsFYI6YXxNHYlsyaesy9yIA
275
278
  maxframe/dataframe/window/tests/test_rolling.py,sha256=eJYHh4MhKm_e9h4bCnK_d_aAYlKGQtFAbZTTEILe6gU,1771
276
279
  maxframe/learn/__init__.py,sha256=1QzrFCJmdZFy0Nh1Ng3V6yY_NVvoSUdTIqcU-HIa1wk,649
277
280
  maxframe/learn/contrib/__init__.py,sha256=2_AumQELt_0MMsSDS7nwk4Fy0TE807lasVuFvGEv1Lc,649
281
+ maxframe/learn/contrib/utils.py,sha256=e4E-QLr7SAhCBTUX246SBpi9DtRNQAE-xOUxvNnFzZY,1714
278
282
  maxframe/learn/contrib/pytorch/__init__.py,sha256=a60NZy-COXEFgyC0uXJRBZGi-Vd9HZcqX62bKAMPKaM,703
279
283
  maxframe/learn/contrib/pytorch/run_function.py,sha256=aQQhy2Bc6EEe-NVZb17hK4I9_TqIM1uI3fIMihY3TSQ,3354
280
284
  maxframe/learn/contrib/pytorch/run_script.py,sha256=FOBXdJ9Q5QOirGGXq8_XwpwrTpDEmWt45-9n4VR_ixI,3213
281
285
  maxframe/learn/contrib/pytorch/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
282
286
  maxframe/learn/contrib/pytorch/tests/test_pytorch.py,sha256=GHP-oD5uMU8LD90Jt2cHbYRDdM5efjzsjpeBkc3t_qE,1444
287
+ maxframe/learn/contrib/xgboost/__init__.py,sha256=vk9xZO_FUwyVCrcLP1dbEz6JCZQBEHsmhGr1uQ45FAI,925
288
+ maxframe/learn/contrib/xgboost/classifier.py,sha256=DWvQ9_GLg-ZeSFQp6NN5-7_BA9NxkpxEv5WtuodU31o,3022
289
+ maxframe/learn/contrib/xgboost/core.py,sha256=RzGTONv1WgDb0ZXUxzDDkbqepvznAPRyjSgD2N4MdPc,5350
290
+ maxframe/learn/contrib/xgboost/dmatrix.py,sha256=8bCcfJGG84s7sKBNcw4urvwPWqX6mMvEN_KyaL52JxM,5006
291
+ maxframe/learn/contrib/xgboost/predict.py,sha256=FOrLkzjoYjxJZdrisy_bXoRBA8itdGuaP3QDV1hzDl0,4802
292
+ maxframe/learn/contrib/xgboost/regressor.py,sha256=osuNG4N1SILgjL-CodYnM9ODwewaVi4-8tHdfWZWJpg,2610
293
+ maxframe/learn/contrib/xgboost/train.py,sha256=yn2_45hDvuAi4VKkFPR11i38o0mrFaNJ668qBnj2wDI,4079
294
+ maxframe/learn/contrib/xgboost/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
295
+ maxframe/learn/contrib/xgboost/tests/test_core.py,sha256=qNSXaB1t1vpoCD6RfpnFjJZHS8ShW9O_uz0ucXXlfpE,1449
296
+ maxframe/learn/utils/__init__.py,sha256=w2_QpDZ9J5BcSgbqu8P2RlkVRWC2gLowfgsaDPtz_Pg,661
297
+ maxframe/learn/utils/core.py,sha256=WNDISxPFsWmjkwHwEvjVGCkAOkIftqzEQFPA_KWr7FY,1058
283
298
  maxframe/lib/__init__.py,sha256=_PB28W40qku6YiT8fJYqdmEdRMQfelOwGeksCOZJfCc,657
284
299
  maxframe/lib/compression.py,sha256=QQpNK79iUC9zck74I0HKMhapSRnLBXtTRyS91taEVIc,1497
285
300
  maxframe/lib/functools_compat.py,sha256=2LTrkSw5i-z5E9XCtZzfg9-0vPrYxicKvDjnnNrAL1Q,2697
286
- maxframe/lib/mmh3.cp311-win32.pyd,sha256=fXhjFIwpkOOznNvSyB_X4ksAZsw926sGCIcOJf9l_Zs,14848
301
+ maxframe/lib/mmh3.cp311-win32.pyd,sha256=zrfxneJKRLJdeWyEIfKCdDdKDHYQGv8dmWtc6yk5Hn4,14848
287
302
  maxframe/lib/version.py,sha256=VOVZu3KHS53YUsb_vQsT7AyHwcCWAgc-3bBqV5ANcbQ,18941
288
303
  maxframe/lib/wrapped_pickle.py,sha256=bzEaokhAZlkjXqw1xfeKO1KX2awhKIz_1RT81yPPoag,3949
289
304
  maxframe/lib/aio/__init__.py,sha256=xzIYnV42_7CYuDTTv8svscIXQeJMF0nn8AXMbpv173M,963
@@ -332,13 +347,13 @@ maxframe/lib/tblib/pickling_support.py,sha256=D9A0eX7gJeyqhXWxJJZ1GRwwcc5lj86wBR
332
347
  maxframe/lib/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
333
348
  maxframe/lib/tests/test_wrapped_pickle.py,sha256=WV0EJQ1hTSp8xjuosWWtEO7PeiBqdDUYgStxp72_c94,1575
334
349
  maxframe/odpsio/__init__.py,sha256=0SesD04XxFli4Gp23ipMkefFQ2ZTB0PItwZoSHpDC-k,820
335
- maxframe/odpsio/arrow.py,sha256=fYNQa_n-Dy-y3l9oAu50-fOsV3C1GaNZpBsOhlYO8i4,3732
336
- maxframe/odpsio/schema.py,sha256=clW2pgjGY6lsHSfyKx-M6xqvPJerCsqlrGm6ommFHmY,12068
337
- maxframe/odpsio/tableio.py,sha256=r_Y47V5NhvLHsK7kypdswSDmOWag1Zoh9-FEjKe5MG0,9660
350
+ maxframe/odpsio/arrow.py,sha256=pFw7aP7u8maEnXXF63VpMbI2qrOvWl78dYWGqHkXuJA,3884
351
+ maxframe/odpsio/schema.py,sha256=Hba-eCXnBUS6NxHRsshaohzO1eThm4HeVzzvAF7E3Vg,12479
352
+ maxframe/odpsio/tableio.py,sha256=ugLy15g2JoCD3GHhCRrH9PT9g9hyKfwrC71qXEVqvB0,10470
338
353
  maxframe/odpsio/volumeio.py,sha256=IT_OO-RG2rJZOEx8C8xRr0oNR358RSAJQAp6WGxeXzI,3838
339
354
  maxframe/odpsio/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
340
355
  maxframe/odpsio/tests/test_arrow.py,sha256=yeDWFzsm2IMS-k6jimlQ7uim5T6WW1Anuy8didaf4cs,3194
341
- maxframe/odpsio/tests/test_schema.py,sha256=cXQYEhETUSoJmQ7MW33bFyR2ho6WciU4ot9LnxFsARM,10839
356
+ maxframe/odpsio/tests/test_schema.py,sha256=QekMLBWu98IUN6mCloOxEQU0-7RL5OKzV8EE3A17wfU,12255
342
357
  maxframe/odpsio/tests/test_tableio.py,sha256=ZyQxBAVA5GG3j_NOPTTFs5vCQqQywhRKC9OAJx9LJxM,4789
343
358
  maxframe/odpsio/tests/test_volumeio.py,sha256=xvnrPZueZ76OAWK2zW_tHHI_cDxo7gJXTHiEe0lkmjk,3112
344
359
  maxframe/remote/__init__.py,sha256=Yu1ZDLICbehNfd1ur7_2bnIn2VFIsTxH_cILCbHAeZY,747
@@ -346,8 +361,9 @@ maxframe/remote/core.py,sha256=w_eTDEs0O7iIzLn1YrMGh2gcNAzzbqV0mx2bRT7su_U,7001
346
361
  maxframe/remote/run_script.py,sha256=k93-vaFLUanWoBRai4-78DX_SLeZ8_rbbxcCtOIXZO8,3677
347
362
  maxframe/serialization/__init__.py,sha256=nxxU7CI6MRcL3sjA1KmLkpTGKA3KG30FKl-MJJ0MCdI,947
348
363
  maxframe/serialization/arrow.py,sha256=OMeDjLcPgagqzokG7g3Vhwm6Xw1j-Kph1V2QsIwi6dw,3513
349
- maxframe/serialization/core.cp311-win32.pyd,sha256=roFKx5xmJPxIpzdqZ-1Wubu8khLvjti4gMAQ8GXk_r8,348672
364
+ maxframe/serialization/core.cp311-win32.pyd,sha256=M27xubK2BJ26otEOvnTjX65FIqDRukR9s5bKSxqE2Yw,348672
350
365
  maxframe/serialization/core.pxd,sha256=Fymih3Wo-CrOY27_o_DRINdbRGR7mgiT-XCaXCXafxM,1347
366
+ maxframe/serialization/core.pyi,sha256=uaz1R6oGDZhwqmuUotsySL3T8NlUnnNcGQ6hweAtC20,1983
351
367
  maxframe/serialization/core.pyx,sha256=Qmipu3LiJGIBVy_7d4tSJqcYWnG5xj2I7IaPv2PSq5E,35078
352
368
  maxframe/serialization/exception.py,sha256=e7bZyPlZ8XhSCdeOwlYreq0HazPXKOgOA6r9Q4Ecn2Y,3113
353
369
  maxframe/serialization/maxframe_objects.py,sha256=ZHyvxIALoPuB_y3CRc70hZXyfdj4IhaKMXUEYLXHQag,1404
@@ -363,7 +379,7 @@ maxframe/serialization/serializables/tests/test_field_type.py,sha256=uG87-bdG8xG
363
379
  maxframe/serialization/serializables/tests/test_serializable.py,sha256=jnXDfBSNomsEKUKPGd9rCQe8dbOJo7bcFZWvSbEpVsk,8493
364
380
  maxframe/serialization/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
365
381
  maxframe/serialization/tests/test_serial.py,sha256=9G2CbPBHINwcZ038pRwZON_OtH-JVXZ8w66BLYWP578,12923
366
- maxframe/tensor/__init__.py,sha256=aomZCK-bt5OYyRLGcbACxtFLrWIp14F4R3P79zwbN5E,3694
382
+ maxframe/tensor/__init__.py,sha256=lY_GZBClz2MIGwaMerP2DvbsUbC5crCel_kwkeuiyX4,3702
367
383
  maxframe/tensor/array_utils.py,sha256=xr_Ng-4dETJFjsMfWi5gbTPM9mRmPvRWj8QY2WKjmCg,5129
368
384
  maxframe/tensor/core.py,sha256=-G-UzY81GTKj2SD9FQLqBg-UDod5LjjrEA-uF16ofms,22638
369
385
  maxframe/tensor/operators.py,sha256=8VsSZ8OcImGkSRQvrYlV05KMHGsroAYmW1o9RM2yV1U,3584
@@ -469,17 +485,19 @@ maxframe/tensor/arithmetic/trunc.py,sha256=3z8jme9ZpPU8TqNo2ioViqJa7ThNK9KOVX1wl
469
485
  maxframe/tensor/arithmetic/utils.py,sha256=Kc3xqbIK9uRhHhDKFwAj-mW7SRljajfK9UOMyXyCHCY,2304
470
486
  maxframe/tensor/arithmetic/tests/__init__.py,sha256=_PB28W40qku6YiT8fJYqdmEdRMQfelOwGeksCOZJfCc,657
471
487
  maxframe/tensor/arithmetic/tests/test_arithmetic.py,sha256=e8sc6uYI09to_vzci5Vl8BuTM_oDBi4rQ5sQnQkjer4,11403
472
- maxframe/tensor/base/__init__.py,sha256=XaM7fzYdPu1CLzGuWlXhp39EpNTD0PQXR1xotcFLZgA,1049
488
+ maxframe/tensor/base/__init__.py,sha256=qVf97u2J74RSjCmkF-7N-ylxWUc6mbiPPWpDe45vRmQ,1113
473
489
  maxframe/tensor/base/astype.py,sha256=fzj0o3pJMVaSEEKMR-JBsd2FktlSa9ABtpt-fcWKio0,4513
490
+ maxframe/tensor/base/atleast_1d.py,sha256=AgFdj7P3nBy6WibI54IPIwfowLHsk2BHfH3bXKVn5rg,1992
474
491
  maxframe/tensor/base/broadcast_to.py,sha256=V-OB8YSbMfkMP2JpbiIQ0A9PrC-OHfaWzrntf5AOEwo,2775
475
492
  maxframe/tensor/base/ravel.py,sha256=P9SCDU-UUHzd1HqZbodBSgKjtjiOFkyfLV_G9LFnz_U,3265
476
493
  maxframe/tensor/base/transpose.py,sha256=yMK1KzxguKZOWxT3oMo5GchjB-1Yakilp2rEX3QlxFM,3539
494
+ maxframe/tensor/base/unique.py,sha256=zzE3w6VAZslTgYx4FDUPQ3bMsBsj-61z0BPY5hPaM6Q,6947
477
495
  maxframe/tensor/base/where.py,sha256=cSg1mDhiOBB4F0Soh_uVw3yeSve9pfEhPSIDadc-wto,4127
478
496
  maxframe/tensor/base/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
479
497
  maxframe/tensor/base/tests/test_base.py,sha256=i9TneozyHCHDhO438U285KS6tdh0Zks8mgkRm3fsHxk,2957
480
498
  maxframe/tensor/datasource/__init__.py,sha256=xtrdcuP6yTc_T19ITPsJTknoqTT-XudlhSlffrScjsY,1178
481
499
  maxframe/tensor/datasource/arange.py,sha256=tjNF_huiWTtqtN6YBBtn0tvP9Pnebf6LNXRmAsYqRQk,5632
482
- maxframe/tensor/datasource/array.py,sha256=UdTF-mEDzHQWiiRh8c5GFVYujA06OlKvKmCVMYFOHdE,13325
500
+ maxframe/tensor/datasource/array.py,sha256=pC1eeo4C1EkdHklStr6aOCBfRx1SqyeHHwRglKI2W1A,13419
483
501
  maxframe/tensor/datasource/core.py,sha256=LzuHtRWCNny1y-IzGylelWZ6rejS31LdT4E7qs_uIQs,3520
484
502
  maxframe/tensor/datasource/empty.py,sha256=GpK-DHUfJp9M46wUrGt5lf-YbDDveubwntDjTVYnmMw,6019
485
503
  maxframe/tensor/datasource/from_dataframe.py,sha256=iJY2cw2yA6YKnqRLyB0XdvpdemHHzpU7q2SA1sYo6mo,2573
@@ -487,7 +505,7 @@ maxframe/tensor/datasource/from_dense.py,sha256=txyxNBD0oXr3Ama9me2ay1_ASuDu1QK3
487
505
  maxframe/tensor/datasource/from_sparse.py,sha256=le-Wfno7Z8XY71TLwEOhO80fkvKXwKXbDgsrOfmDM8s,1593
488
506
  maxframe/tensor/datasource/full.py,sha256=-54C2YwqIEP3rPGsY0rnbgMBp15_NqgDJ7lxOJJuXGU,6462
489
507
  maxframe/tensor/datasource/ones.py,sha256=0UuYAwMLGfjF-O_90vkwsMqQlAAfJ98TdxbfgC1y6Fk,5182
490
- maxframe/tensor/datasource/scalar.py,sha256=vxEo-QQCkKj0mP2qvs8LE1LXGsTe3BYtITitASTgGAI,1191
508
+ maxframe/tensor/datasource/scalar.py,sha256=g2dsnmOEzV30I0UK3ytMtkiosdfH3NJ6wacZuxBpmbk,1196
491
509
  maxframe/tensor/datasource/zeros.py,sha256=DJZK_kraSn820O17GSHLFHV43x1JL3Gt_HdlN0p5o7k,5860
492
510
  maxframe/tensor/datasource/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
493
511
  maxframe/tensor/datasource/tests/test_datasource.py,sha256=C9sOu8rpDNpu3yMhgln4UzkqW5SklL63IJXRwrwOCYc,7931
@@ -609,21 +627,21 @@ maxframe/tests/test_utils.py,sha256=0Iey3O6zrGI1yQU2OSpWavJNvhUjrmdkct4-27tkGUM,
609
627
  maxframe/tests/utils.py,sha256=gCre-8BApU4-AEun9WShm4Ff5a9a_oKxvLNneESXBjU,4732
610
628
  maxframe_client/__init__.py,sha256=xqlN69LjvAp2bNCaT9d82U9AF5WKi_c4UOheEW1wV9E,741
611
629
  maxframe_client/conftest.py,sha256=UWWMYjmohHL13hLl4adb0gZPLRdBVOYVvsFo6VZruI0,658
612
- maxframe_client/fetcher.py,sha256=ajt14PYVEXKShXSx-qTL_8adMCXBEsZoOhHr3yx95-M,7015
630
+ maxframe_client/fetcher.py,sha256=yFP6Hgz01-qPqBwmTX5-5ECU-G6q-TX5SUktplcJgcU,9213
613
631
  maxframe_client/clients/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
614
632
  maxframe_client/clients/framedriver.py,sha256=upN6C1eZrCpLTsS6fihWOMy392psWfo0bw2XgSLI_Yg,4581
615
633
  maxframe_client/clients/spe.py,sha256=uizNBejhU_FrMhsgsFgDnq7gL7Cxk803LeLYmr3nmxs,3697
616
634
  maxframe_client/session/__init__.py,sha256=9zFCd3zkSADESAFc4SPoQ2nkvRwsIhhpNNO2TtSaWbU,854
617
635
  maxframe_client/session/consts.py,sha256=nD-D0zHXumbQI8w3aUyltJS59K5ftipf3xCtHNLmtc8,1380
618
636
  maxframe_client/session/graph.py,sha256=GSZaJ-PV4DK8bTcNtoSoY5kDTyyIRAKleh4tOCSUbsI,4470
619
- maxframe_client/session/odps.py,sha256=RG7_28UaS_8tgJUOa4ohw2QtwX2fF4yqsGGy2MksQWI,16700
620
- maxframe_client/session/task.py,sha256=R8x8OERIb673vTq-o0ig6Zy2NT4_jvi8AbLhyMaljo8,11409
637
+ maxframe_client/session/odps.py,sha256=6OySk4Fo5N5OG_HiuuTxSU5n-UUVYZ0AjTrMzcE-jGY,18008
638
+ maxframe_client/session/task.py,sha256=rY7pXNd_5ixaE3-wSwKTUr2bMPIYwuVAEeia3qY24fk,10445
621
639
  maxframe_client/session/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
622
640
  maxframe_client/session/tests/test_task.py,sha256=861usEURVXeTUzfJYZmBfwsHfZFexG23mMtT5IJOOm4,3364
623
641
  maxframe_client/tests/__init__.py,sha256=29eM5D4knhYwe3TF42naTuC5b4Ym3VeH4rK8KpdLWNY,609
624
642
  maxframe_client/tests/test_fetcher.py,sha256=7iYXLMIoCJLfgUkjB2HBkV-sqQ-xGlhtzfp9hRJz_kM,3605
625
- maxframe_client/tests/test_session.py,sha256=s8pxf0I6PjOd6ZZQ4IYjfOM_3F3wf6SGPRMz0tAZFmo,6514
626
- maxframe-0.1.0b3.dist-info/METADATA,sha256=aZIVKoKmfRSjIExk2K16jB0fJj5iApw9FhoHqv6hs_k,3147
627
- maxframe-0.1.0b3.dist-info/WHEEL,sha256=deu9bZJH225Lz7TZI9C8JKotIcjmi5Ibg2UG8qmj-qM,98
628
- maxframe-0.1.0b3.dist-info/top_level.txt,sha256=64x-fc2q59c_vXwNUkehyjF1vb8JWqFSdYmUqIFqoTM,31
629
- maxframe-0.1.0b3.dist-info/RECORD,,
643
+ maxframe_client/tests/test_session.py,sha256=M41_lHLjgCSCWTxnDci4UnLeGty-Mi8Vi2SfB32EPcI,8139
644
+ maxframe-0.1.0b5.dist-info/METADATA,sha256=SaNZ5DLD6aoMtuSJ_f-mN1Lfj9zFsB6U9RfZ_1b03uY,3149
645
+ maxframe-0.1.0b5.dist-info/WHEEL,sha256=deu9bZJH225Lz7TZI9C8JKotIcjmi5Ibg2UG8qmj-qM,98
646
+ maxframe-0.1.0b5.dist-info/top_level.txt,sha256=64x-fc2q59c_vXwNUkehyjF1vb8JWqFSdYmUqIFqoTM,31
647
+ maxframe-0.1.0b5.dist-info/RECORD,,