maxframe 0.1.0b5__cp311-cp311-macosx_11_0_arm64.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.
- maxframe/__init__.py +32 -0
- maxframe/_utils.cpython-311-darwin.so +0 -0
- maxframe/_utils.pxd +33 -0
- maxframe/_utils.pyx +547 -0
- maxframe/codegen.py +528 -0
- maxframe/config/__init__.py +15 -0
- maxframe/config/config.py +443 -0
- maxframe/config/tests/__init__.py +13 -0
- maxframe/config/tests/test_config.py +103 -0
- maxframe/config/tests/test_validators.py +34 -0
- maxframe/config/validators.py +57 -0
- maxframe/conftest.py +139 -0
- maxframe/core/__init__.py +65 -0
- maxframe/core/base.py +156 -0
- maxframe/core/entity/__init__.py +44 -0
- maxframe/core/entity/chunks.py +68 -0
- maxframe/core/entity/core.py +152 -0
- maxframe/core/entity/executable.py +337 -0
- maxframe/core/entity/fuse.py +73 -0
- maxframe/core/entity/objects.py +100 -0
- maxframe/core/entity/output_types.py +90 -0
- maxframe/core/entity/tileables.py +438 -0
- maxframe/core/entity/utils.py +24 -0
- maxframe/core/graph/__init__.py +17 -0
- maxframe/core/graph/builder/__init__.py +16 -0
- maxframe/core/graph/builder/base.py +86 -0
- maxframe/core/graph/builder/chunk.py +430 -0
- maxframe/core/graph/builder/tileable.py +34 -0
- maxframe/core/graph/builder/utils.py +41 -0
- maxframe/core/graph/core.cpython-311-darwin.so +0 -0
- maxframe/core/graph/core.pyx +467 -0
- maxframe/core/graph/entity.py +171 -0
- maxframe/core/graph/tests/__init__.py +13 -0
- maxframe/core/graph/tests/test_graph.py +205 -0
- maxframe/core/mode.py +96 -0
- maxframe/core/operator/__init__.py +34 -0
- maxframe/core/operator/base.py +450 -0
- maxframe/core/operator/core.py +276 -0
- maxframe/core/operator/fetch.py +53 -0
- maxframe/core/operator/fuse.py +29 -0
- maxframe/core/operator/objects.py +72 -0
- maxframe/core/operator/shuffle.py +111 -0
- maxframe/core/operator/tests/__init__.py +13 -0
- maxframe/core/operator/tests/test_core.py +64 -0
- maxframe/core/tests/__init__.py +13 -0
- maxframe/core/tests/test_mode.py +75 -0
- maxframe/dataframe/__init__.py +81 -0
- maxframe/dataframe/arithmetic/__init__.py +359 -0
- maxframe/dataframe/arithmetic/abs.py +33 -0
- maxframe/dataframe/arithmetic/add.py +60 -0
- maxframe/dataframe/arithmetic/arccos.py +28 -0
- maxframe/dataframe/arithmetic/arccosh.py +28 -0
- maxframe/dataframe/arithmetic/arcsin.py +28 -0
- maxframe/dataframe/arithmetic/arcsinh.py +28 -0
- maxframe/dataframe/arithmetic/arctan.py +28 -0
- maxframe/dataframe/arithmetic/arctanh.py +28 -0
- maxframe/dataframe/arithmetic/around.py +152 -0
- maxframe/dataframe/arithmetic/bitwise_and.py +46 -0
- maxframe/dataframe/arithmetic/bitwise_or.py +50 -0
- maxframe/dataframe/arithmetic/bitwise_xor.py +46 -0
- maxframe/dataframe/arithmetic/ceil.py +28 -0
- maxframe/dataframe/arithmetic/core.py +342 -0
- maxframe/dataframe/arithmetic/cos.py +28 -0
- maxframe/dataframe/arithmetic/cosh.py +28 -0
- maxframe/dataframe/arithmetic/degrees.py +28 -0
- maxframe/dataframe/arithmetic/docstring.py +442 -0
- maxframe/dataframe/arithmetic/equal.py +56 -0
- maxframe/dataframe/arithmetic/exp.py +28 -0
- maxframe/dataframe/arithmetic/exp2.py +28 -0
- maxframe/dataframe/arithmetic/expm1.py +28 -0
- maxframe/dataframe/arithmetic/floor.py +28 -0
- maxframe/dataframe/arithmetic/floordiv.py +64 -0
- maxframe/dataframe/arithmetic/greater.py +57 -0
- maxframe/dataframe/arithmetic/greater_equal.py +57 -0
- maxframe/dataframe/arithmetic/invert.py +33 -0
- maxframe/dataframe/arithmetic/is_ufuncs.py +62 -0
- maxframe/dataframe/arithmetic/less.py +57 -0
- maxframe/dataframe/arithmetic/less_equal.py +57 -0
- maxframe/dataframe/arithmetic/log.py +28 -0
- maxframe/dataframe/arithmetic/log10.py +28 -0
- maxframe/dataframe/arithmetic/log2.py +28 -0
- maxframe/dataframe/arithmetic/mod.py +60 -0
- maxframe/dataframe/arithmetic/multiply.py +60 -0
- maxframe/dataframe/arithmetic/negative.py +33 -0
- maxframe/dataframe/arithmetic/not_equal.py +56 -0
- maxframe/dataframe/arithmetic/power.py +68 -0
- maxframe/dataframe/arithmetic/radians.py +28 -0
- maxframe/dataframe/arithmetic/sin.py +28 -0
- maxframe/dataframe/arithmetic/sinh.py +28 -0
- maxframe/dataframe/arithmetic/sqrt.py +28 -0
- maxframe/dataframe/arithmetic/subtract.py +64 -0
- maxframe/dataframe/arithmetic/tan.py +28 -0
- maxframe/dataframe/arithmetic/tanh.py +28 -0
- maxframe/dataframe/arithmetic/tests/__init__.py +13 -0
- maxframe/dataframe/arithmetic/tests/test_arithmetic.py +695 -0
- maxframe/dataframe/arithmetic/truediv.py +64 -0
- maxframe/dataframe/arithmetic/trunc.py +28 -0
- maxframe/dataframe/arrays.py +864 -0
- maxframe/dataframe/core.py +2417 -0
- maxframe/dataframe/datasource/__init__.py +15 -0
- maxframe/dataframe/datasource/core.py +81 -0
- maxframe/dataframe/datasource/dataframe.py +59 -0
- maxframe/dataframe/datasource/date_range.py +504 -0
- maxframe/dataframe/datasource/from_index.py +54 -0
- maxframe/dataframe/datasource/from_records.py +107 -0
- maxframe/dataframe/datasource/from_tensor.py +419 -0
- maxframe/dataframe/datasource/index.py +117 -0
- maxframe/dataframe/datasource/read_csv.py +528 -0
- maxframe/dataframe/datasource/read_odps_query.py +299 -0
- maxframe/dataframe/datasource/read_odps_table.py +253 -0
- maxframe/dataframe/datasource/read_parquet.py +421 -0
- maxframe/dataframe/datasource/series.py +55 -0
- maxframe/dataframe/datasource/tests/__init__.py +13 -0
- maxframe/dataframe/datasource/tests/test_datasource.py +401 -0
- maxframe/dataframe/datastore/__init__.py +26 -0
- maxframe/dataframe/datastore/core.py +19 -0
- maxframe/dataframe/datastore/to_csv.py +227 -0
- maxframe/dataframe/datastore/to_odps.py +162 -0
- maxframe/dataframe/extensions/__init__.py +41 -0
- maxframe/dataframe/extensions/accessor.py +50 -0
- maxframe/dataframe/extensions/reshuffle.py +83 -0
- maxframe/dataframe/extensions/tests/__init__.py +13 -0
- maxframe/dataframe/extensions/tests/test_extensions.py +38 -0
- maxframe/dataframe/fetch/__init__.py +15 -0
- maxframe/dataframe/fetch/core.py +86 -0
- maxframe/dataframe/groupby/__init__.py +82 -0
- maxframe/dataframe/groupby/aggregation.py +350 -0
- maxframe/dataframe/groupby/apply.py +251 -0
- maxframe/dataframe/groupby/core.py +179 -0
- maxframe/dataframe/groupby/cum.py +124 -0
- maxframe/dataframe/groupby/fill.py +141 -0
- maxframe/dataframe/groupby/getitem.py +92 -0
- maxframe/dataframe/groupby/head.py +105 -0
- maxframe/dataframe/groupby/sample.py +214 -0
- maxframe/dataframe/groupby/tests/__init__.py +13 -0
- maxframe/dataframe/groupby/tests/test_groupby.py +374 -0
- maxframe/dataframe/groupby/transform.py +255 -0
- maxframe/dataframe/indexing/__init__.py +84 -0
- maxframe/dataframe/indexing/add_prefix_suffix.py +110 -0
- maxframe/dataframe/indexing/align.py +349 -0
- maxframe/dataframe/indexing/at.py +83 -0
- maxframe/dataframe/indexing/getitem.py +204 -0
- maxframe/dataframe/indexing/iat.py +37 -0
- maxframe/dataframe/indexing/iloc.py +566 -0
- maxframe/dataframe/indexing/insert.py +86 -0
- maxframe/dataframe/indexing/loc.py +411 -0
- maxframe/dataframe/indexing/reindex.py +526 -0
- maxframe/dataframe/indexing/rename.py +462 -0
- maxframe/dataframe/indexing/rename_axis.py +209 -0
- maxframe/dataframe/indexing/reset_index.py +402 -0
- maxframe/dataframe/indexing/sample.py +221 -0
- maxframe/dataframe/indexing/set_axis.py +194 -0
- maxframe/dataframe/indexing/set_index.py +61 -0
- maxframe/dataframe/indexing/setitem.py +130 -0
- maxframe/dataframe/indexing/tests/__init__.py +13 -0
- maxframe/dataframe/indexing/tests/test_indexing.py +488 -0
- maxframe/dataframe/indexing/where.py +308 -0
- maxframe/dataframe/initializer.py +288 -0
- maxframe/dataframe/merge/__init__.py +32 -0
- maxframe/dataframe/merge/append.py +121 -0
- maxframe/dataframe/merge/concat.py +325 -0
- maxframe/dataframe/merge/merge.py +593 -0
- maxframe/dataframe/merge/tests/__init__.py +13 -0
- maxframe/dataframe/merge/tests/test_merge.py +215 -0
- maxframe/dataframe/misc/__init__.py +134 -0
- maxframe/dataframe/misc/_duplicate.py +46 -0
- maxframe/dataframe/misc/accessor.py +276 -0
- maxframe/dataframe/misc/apply.py +692 -0
- maxframe/dataframe/misc/astype.py +236 -0
- maxframe/dataframe/misc/case_when.py +141 -0
- maxframe/dataframe/misc/check_monotonic.py +84 -0
- maxframe/dataframe/misc/cut.py +383 -0
- maxframe/dataframe/misc/datetimes.py +79 -0
- maxframe/dataframe/misc/describe.py +108 -0
- maxframe/dataframe/misc/diff.py +210 -0
- maxframe/dataframe/misc/drop.py +440 -0
- maxframe/dataframe/misc/drop_duplicates.py +248 -0
- maxframe/dataframe/misc/duplicated.py +292 -0
- maxframe/dataframe/misc/eval.py +728 -0
- maxframe/dataframe/misc/explode.py +171 -0
- maxframe/dataframe/misc/get_dummies.py +208 -0
- maxframe/dataframe/misc/isin.py +217 -0
- maxframe/dataframe/misc/map.py +236 -0
- maxframe/dataframe/misc/melt.py +162 -0
- maxframe/dataframe/misc/memory_usage.py +248 -0
- maxframe/dataframe/misc/pct_change.py +150 -0
- maxframe/dataframe/misc/pivot_table.py +262 -0
- maxframe/dataframe/misc/qcut.py +104 -0
- maxframe/dataframe/misc/select_dtypes.py +104 -0
- maxframe/dataframe/misc/shift.py +256 -0
- maxframe/dataframe/misc/stack.py +238 -0
- maxframe/dataframe/misc/string_.py +221 -0
- maxframe/dataframe/misc/tests/__init__.py +13 -0
- maxframe/dataframe/misc/tests/test_misc.py +468 -0
- maxframe/dataframe/misc/to_numeric.py +178 -0
- maxframe/dataframe/misc/transform.py +361 -0
- maxframe/dataframe/misc/transpose.py +136 -0
- maxframe/dataframe/misc/value_counts.py +182 -0
- maxframe/dataframe/missing/__init__.py +53 -0
- maxframe/dataframe/missing/checkna.py +223 -0
- maxframe/dataframe/missing/dropna.py +280 -0
- maxframe/dataframe/missing/fillna.py +275 -0
- maxframe/dataframe/missing/replace.py +439 -0
- maxframe/dataframe/missing/tests/__init__.py +13 -0
- maxframe/dataframe/missing/tests/test_missing.py +89 -0
- maxframe/dataframe/operators.py +273 -0
- maxframe/dataframe/plotting/__init__.py +40 -0
- maxframe/dataframe/plotting/core.py +78 -0
- maxframe/dataframe/plotting/tests/__init__.py +13 -0
- maxframe/dataframe/plotting/tests/test_plotting.py +136 -0
- maxframe/dataframe/reduction/__init__.py +107 -0
- maxframe/dataframe/reduction/aggregation.py +344 -0
- maxframe/dataframe/reduction/all.py +78 -0
- maxframe/dataframe/reduction/any.py +78 -0
- maxframe/dataframe/reduction/core.py +837 -0
- maxframe/dataframe/reduction/count.py +59 -0
- maxframe/dataframe/reduction/cummax.py +30 -0
- maxframe/dataframe/reduction/cummin.py +30 -0
- maxframe/dataframe/reduction/cumprod.py +30 -0
- maxframe/dataframe/reduction/cumsum.py +30 -0
- maxframe/dataframe/reduction/custom_reduction.py +42 -0
- maxframe/dataframe/reduction/kurtosis.py +104 -0
- maxframe/dataframe/reduction/max.py +65 -0
- maxframe/dataframe/reduction/mean.py +61 -0
- maxframe/dataframe/reduction/min.py +65 -0
- maxframe/dataframe/reduction/nunique.py +141 -0
- maxframe/dataframe/reduction/prod.py +76 -0
- maxframe/dataframe/reduction/reduction_size.py +36 -0
- maxframe/dataframe/reduction/sem.py +69 -0
- maxframe/dataframe/reduction/skew.py +89 -0
- maxframe/dataframe/reduction/std.py +53 -0
- maxframe/dataframe/reduction/str_concat.py +48 -0
- maxframe/dataframe/reduction/sum.py +77 -0
- maxframe/dataframe/reduction/tests/__init__.py +13 -0
- maxframe/dataframe/reduction/tests/test_reduction.py +486 -0
- maxframe/dataframe/reduction/unique.py +90 -0
- maxframe/dataframe/reduction/var.py +72 -0
- maxframe/dataframe/sort/__init__.py +34 -0
- maxframe/dataframe/sort/core.py +36 -0
- maxframe/dataframe/sort/sort_index.py +153 -0
- maxframe/dataframe/sort/sort_values.py +311 -0
- maxframe/dataframe/sort/tests/__init__.py +13 -0
- maxframe/dataframe/sort/tests/test_sort.py +81 -0
- maxframe/dataframe/statistics/__init__.py +33 -0
- maxframe/dataframe/statistics/corr.py +280 -0
- maxframe/dataframe/statistics/quantile.py +341 -0
- maxframe/dataframe/statistics/tests/__init__.py +13 -0
- maxframe/dataframe/statistics/tests/test_statistics.py +82 -0
- maxframe/dataframe/tests/__init__.py +13 -0
- maxframe/dataframe/tests/test_initializer.py +29 -0
- maxframe/dataframe/tseries/__init__.py +13 -0
- maxframe/dataframe/tseries/tests/__init__.py +13 -0
- maxframe/dataframe/tseries/tests/test_tseries.py +30 -0
- maxframe/dataframe/tseries/to_datetime.py +297 -0
- maxframe/dataframe/ufunc/__init__.py +27 -0
- maxframe/dataframe/ufunc/tensor.py +54 -0
- maxframe/dataframe/ufunc/ufunc.py +52 -0
- maxframe/dataframe/utils.py +1267 -0
- maxframe/dataframe/window/__init__.py +29 -0
- maxframe/dataframe/window/aggregation.py +96 -0
- maxframe/dataframe/window/core.py +69 -0
- maxframe/dataframe/window/ewm.py +249 -0
- maxframe/dataframe/window/expanding.py +147 -0
- maxframe/dataframe/window/rolling.py +376 -0
- maxframe/dataframe/window/tests/__init__.py +13 -0
- maxframe/dataframe/window/tests/test_ewm.py +70 -0
- maxframe/dataframe/window/tests/test_expanding.py +66 -0
- maxframe/dataframe/window/tests/test_rolling.py +57 -0
- maxframe/env.py +33 -0
- maxframe/errors.py +21 -0
- maxframe/extension.py +81 -0
- maxframe/learn/__init__.py +17 -0
- maxframe/learn/contrib/__init__.py +17 -0
- maxframe/learn/contrib/pytorch/__init__.py +16 -0
- maxframe/learn/contrib/pytorch/run_function.py +110 -0
- maxframe/learn/contrib/pytorch/run_script.py +102 -0
- maxframe/learn/contrib/pytorch/tests/__init__.py +13 -0
- maxframe/learn/contrib/pytorch/tests/test_pytorch.py +42 -0
- maxframe/learn/contrib/utils.py +52 -0
- maxframe/learn/contrib/xgboost/__init__.py +26 -0
- maxframe/learn/contrib/xgboost/classifier.py +86 -0
- maxframe/learn/contrib/xgboost/core.py +156 -0
- maxframe/learn/contrib/xgboost/dmatrix.py +150 -0
- maxframe/learn/contrib/xgboost/predict.py +138 -0
- maxframe/learn/contrib/xgboost/regressor.py +78 -0
- maxframe/learn/contrib/xgboost/tests/__init__.py +13 -0
- maxframe/learn/contrib/xgboost/tests/test_core.py +43 -0
- maxframe/learn/contrib/xgboost/train.py +121 -0
- maxframe/learn/utils/__init__.py +15 -0
- maxframe/learn/utils/core.py +29 -0
- maxframe/lib/__init__.py +15 -0
- maxframe/lib/aio/__init__.py +27 -0
- maxframe/lib/aio/_runners.py +162 -0
- maxframe/lib/aio/_threads.py +35 -0
- maxframe/lib/aio/base.py +82 -0
- maxframe/lib/aio/file.py +85 -0
- maxframe/lib/aio/isolation.py +100 -0
- maxframe/lib/aio/lru.py +242 -0
- maxframe/lib/aio/parallelism.py +37 -0
- maxframe/lib/aio/tests/__init__.py +13 -0
- maxframe/lib/aio/tests/test_aio_file.py +55 -0
- maxframe/lib/compression.py +55 -0
- maxframe/lib/cython/__init__.py +13 -0
- maxframe/lib/cython/libcpp.pxd +30 -0
- maxframe/lib/filesystem/__init__.py +21 -0
- maxframe/lib/filesystem/_glob.py +173 -0
- maxframe/lib/filesystem/_oss_lib/__init__.py +13 -0
- maxframe/lib/filesystem/_oss_lib/common.py +198 -0
- maxframe/lib/filesystem/_oss_lib/glob.py +147 -0
- maxframe/lib/filesystem/_oss_lib/handle.py +156 -0
- maxframe/lib/filesystem/arrow.py +236 -0
- maxframe/lib/filesystem/base.py +263 -0
- maxframe/lib/filesystem/core.py +95 -0
- maxframe/lib/filesystem/fsmap.py +164 -0
- maxframe/lib/filesystem/hdfs.py +31 -0
- maxframe/lib/filesystem/local.py +112 -0
- maxframe/lib/filesystem/oss.py +157 -0
- maxframe/lib/filesystem/tests/__init__.py +13 -0
- maxframe/lib/filesystem/tests/test_filesystem.py +223 -0
- maxframe/lib/filesystem/tests/test_oss.py +182 -0
- maxframe/lib/functools_compat.py +81 -0
- maxframe/lib/mmh3.cpython-311-darwin.so +0 -0
- maxframe/lib/mmh3_src/MurmurHash3.cpp +339 -0
- maxframe/lib/mmh3_src/MurmurHash3.h +43 -0
- maxframe/lib/mmh3_src/mmh3module.cpp +387 -0
- maxframe/lib/sparse/__init__.py +861 -0
- maxframe/lib/sparse/array.py +1604 -0
- maxframe/lib/sparse/core.py +92 -0
- maxframe/lib/sparse/matrix.py +241 -0
- maxframe/lib/sparse/tests/__init__.py +15 -0
- maxframe/lib/sparse/tests/test_sparse.py +476 -0
- maxframe/lib/sparse/vector.py +150 -0
- maxframe/lib/tblib/LICENSE +20 -0
- maxframe/lib/tblib/__init__.py +327 -0
- maxframe/lib/tblib/cpython.py +83 -0
- maxframe/lib/tblib/decorators.py +44 -0
- maxframe/lib/tblib/pickling_support.py +90 -0
- maxframe/lib/tests/__init__.py +13 -0
- maxframe/lib/tests/test_wrapped_pickle.py +51 -0
- maxframe/lib/version.py +620 -0
- maxframe/lib/wrapped_pickle.py +139 -0
- maxframe/mixin.py +100 -0
- maxframe/odpsio/__init__.py +21 -0
- maxframe/odpsio/arrow.py +91 -0
- maxframe/odpsio/schema.py +364 -0
- maxframe/odpsio/tableio.py +322 -0
- maxframe/odpsio/tests/__init__.py +13 -0
- maxframe/odpsio/tests/test_arrow.py +88 -0
- maxframe/odpsio/tests/test_schema.py +297 -0
- maxframe/odpsio/tests/test_tableio.py +136 -0
- maxframe/odpsio/tests/test_volumeio.py +90 -0
- maxframe/odpsio/volumeio.py +95 -0
- maxframe/opcodes.py +590 -0
- maxframe/protocol.py +415 -0
- maxframe/remote/__init__.py +18 -0
- maxframe/remote/core.py +210 -0
- maxframe/remote/run_script.py +121 -0
- maxframe/serialization/__init__.py +26 -0
- maxframe/serialization/arrow.py +95 -0
- maxframe/serialization/core.cpython-311-darwin.so +0 -0
- maxframe/serialization/core.pxd +44 -0
- maxframe/serialization/core.pyi +61 -0
- maxframe/serialization/core.pyx +1094 -0
- maxframe/serialization/exception.py +86 -0
- maxframe/serialization/maxframe_objects.py +39 -0
- maxframe/serialization/numpy.py +91 -0
- maxframe/serialization/pandas.py +202 -0
- maxframe/serialization/scipy.py +71 -0
- maxframe/serialization/serializables/__init__.py +55 -0
- maxframe/serialization/serializables/core.py +262 -0
- maxframe/serialization/serializables/field.py +624 -0
- maxframe/serialization/serializables/field_type.py +589 -0
- maxframe/serialization/serializables/tests/__init__.py +13 -0
- maxframe/serialization/serializables/tests/test_field_type.py +121 -0
- maxframe/serialization/serializables/tests/test_serializable.py +250 -0
- maxframe/serialization/tests/__init__.py +13 -0
- maxframe/serialization/tests/test_serial.py +412 -0
- maxframe/session.py +1310 -0
- maxframe/tensor/__init__.py +183 -0
- maxframe/tensor/arithmetic/__init__.py +315 -0
- maxframe/tensor/arithmetic/abs.py +68 -0
- maxframe/tensor/arithmetic/absolute.py +68 -0
- maxframe/tensor/arithmetic/add.py +82 -0
- maxframe/tensor/arithmetic/angle.py +72 -0
- maxframe/tensor/arithmetic/arccos.py +104 -0
- maxframe/tensor/arithmetic/arccosh.py +91 -0
- maxframe/tensor/arithmetic/arcsin.py +94 -0
- maxframe/tensor/arithmetic/arcsinh.py +86 -0
- maxframe/tensor/arithmetic/arctan.py +106 -0
- maxframe/tensor/arithmetic/arctan2.py +128 -0
- maxframe/tensor/arithmetic/arctanh.py +86 -0
- maxframe/tensor/arithmetic/around.py +114 -0
- maxframe/tensor/arithmetic/bitand.py +95 -0
- maxframe/tensor/arithmetic/bitor.py +102 -0
- maxframe/tensor/arithmetic/bitxor.py +95 -0
- maxframe/tensor/arithmetic/cbrt.py +66 -0
- maxframe/tensor/arithmetic/ceil.py +71 -0
- maxframe/tensor/arithmetic/clip.py +165 -0
- maxframe/tensor/arithmetic/conj.py +74 -0
- maxframe/tensor/arithmetic/copysign.py +78 -0
- maxframe/tensor/arithmetic/core.py +544 -0
- maxframe/tensor/arithmetic/cos.py +85 -0
- maxframe/tensor/arithmetic/cosh.py +72 -0
- maxframe/tensor/arithmetic/deg2rad.py +72 -0
- maxframe/tensor/arithmetic/degrees.py +77 -0
- maxframe/tensor/arithmetic/divide.py +114 -0
- maxframe/tensor/arithmetic/equal.py +76 -0
- maxframe/tensor/arithmetic/exp.py +106 -0
- maxframe/tensor/arithmetic/exp2.py +67 -0
- maxframe/tensor/arithmetic/expm1.py +79 -0
- maxframe/tensor/arithmetic/fabs.py +74 -0
- maxframe/tensor/arithmetic/fix.py +69 -0
- maxframe/tensor/arithmetic/float_power.py +103 -0
- maxframe/tensor/arithmetic/floor.py +77 -0
- maxframe/tensor/arithmetic/floordiv.py +94 -0
- maxframe/tensor/arithmetic/fmax.py +105 -0
- maxframe/tensor/arithmetic/fmin.py +106 -0
- maxframe/tensor/arithmetic/fmod.py +99 -0
- maxframe/tensor/arithmetic/frexp.py +92 -0
- maxframe/tensor/arithmetic/greater.py +77 -0
- maxframe/tensor/arithmetic/greater_equal.py +69 -0
- maxframe/tensor/arithmetic/hypot.py +77 -0
- maxframe/tensor/arithmetic/i0.py +89 -0
- maxframe/tensor/arithmetic/imag.py +67 -0
- maxframe/tensor/arithmetic/invert.py +110 -0
- maxframe/tensor/arithmetic/isclose.py +115 -0
- maxframe/tensor/arithmetic/iscomplex.py +64 -0
- maxframe/tensor/arithmetic/isfinite.py +106 -0
- maxframe/tensor/arithmetic/isinf.py +103 -0
- maxframe/tensor/arithmetic/isnan.py +82 -0
- maxframe/tensor/arithmetic/isreal.py +63 -0
- maxframe/tensor/arithmetic/ldexp.py +99 -0
- maxframe/tensor/arithmetic/less.py +69 -0
- maxframe/tensor/arithmetic/less_equal.py +69 -0
- maxframe/tensor/arithmetic/log.py +92 -0
- maxframe/tensor/arithmetic/log10.py +85 -0
- maxframe/tensor/arithmetic/log1p.py +95 -0
- maxframe/tensor/arithmetic/log2.py +85 -0
- maxframe/tensor/arithmetic/logaddexp.py +80 -0
- maxframe/tensor/arithmetic/logaddexp2.py +78 -0
- maxframe/tensor/arithmetic/logical_and.py +81 -0
- maxframe/tensor/arithmetic/logical_not.py +74 -0
- maxframe/tensor/arithmetic/logical_or.py +82 -0
- maxframe/tensor/arithmetic/logical_xor.py +88 -0
- maxframe/tensor/arithmetic/lshift.py +82 -0
- maxframe/tensor/arithmetic/maximum.py +108 -0
- maxframe/tensor/arithmetic/minimum.py +108 -0
- maxframe/tensor/arithmetic/mod.py +104 -0
- maxframe/tensor/arithmetic/modf.py +83 -0
- maxframe/tensor/arithmetic/multiply.py +81 -0
- maxframe/tensor/arithmetic/nan_to_num.py +99 -0
- maxframe/tensor/arithmetic/negative.py +65 -0
- maxframe/tensor/arithmetic/nextafter.py +68 -0
- maxframe/tensor/arithmetic/not_equal.py +72 -0
- maxframe/tensor/arithmetic/positive.py +47 -0
- maxframe/tensor/arithmetic/power.py +106 -0
- maxframe/tensor/arithmetic/rad2deg.py +71 -0
- maxframe/tensor/arithmetic/radians.py +77 -0
- maxframe/tensor/arithmetic/real.py +70 -0
- maxframe/tensor/arithmetic/reciprocal.py +76 -0
- maxframe/tensor/arithmetic/rint.py +68 -0
- maxframe/tensor/arithmetic/rshift.py +81 -0
- maxframe/tensor/arithmetic/setimag.py +29 -0
- maxframe/tensor/arithmetic/setreal.py +29 -0
- maxframe/tensor/arithmetic/sign.py +81 -0
- maxframe/tensor/arithmetic/signbit.py +65 -0
- maxframe/tensor/arithmetic/sin.py +98 -0
- maxframe/tensor/arithmetic/sinc.py +102 -0
- maxframe/tensor/arithmetic/sinh.py +93 -0
- maxframe/tensor/arithmetic/spacing.py +72 -0
- maxframe/tensor/arithmetic/sqrt.py +81 -0
- maxframe/tensor/arithmetic/square.py +69 -0
- maxframe/tensor/arithmetic/subtract.py +81 -0
- maxframe/tensor/arithmetic/tan.py +88 -0
- maxframe/tensor/arithmetic/tanh.py +92 -0
- maxframe/tensor/arithmetic/tests/__init__.py +15 -0
- maxframe/tensor/arithmetic/tests/test_arithmetic.py +414 -0
- maxframe/tensor/arithmetic/truediv.py +104 -0
- maxframe/tensor/arithmetic/trunc.py +72 -0
- maxframe/tensor/arithmetic/utils.py +65 -0
- maxframe/tensor/array_utils.py +186 -0
- maxframe/tensor/base/__init__.py +34 -0
- maxframe/tensor/base/astype.py +119 -0
- maxframe/tensor/base/atleast_1d.py +74 -0
- maxframe/tensor/base/broadcast_to.py +89 -0
- maxframe/tensor/base/ravel.py +92 -0
- maxframe/tensor/base/tests/__init__.py +13 -0
- maxframe/tensor/base/tests/test_base.py +114 -0
- maxframe/tensor/base/transpose.py +125 -0
- maxframe/tensor/base/unique.py +205 -0
- maxframe/tensor/base/where.py +127 -0
- maxframe/tensor/core.py +724 -0
- maxframe/tensor/datasource/__init__.py +32 -0
- maxframe/tensor/datasource/arange.py +156 -0
- maxframe/tensor/datasource/array.py +415 -0
- maxframe/tensor/datasource/core.py +109 -0
- maxframe/tensor/datasource/empty.py +169 -0
- maxframe/tensor/datasource/from_dataframe.py +70 -0
- maxframe/tensor/datasource/from_dense.py +54 -0
- maxframe/tensor/datasource/from_sparse.py +47 -0
- maxframe/tensor/datasource/full.py +186 -0
- maxframe/tensor/datasource/ones.py +173 -0
- maxframe/tensor/datasource/scalar.py +40 -0
- maxframe/tensor/datasource/tests/__init__.py +13 -0
- maxframe/tensor/datasource/tests/test_datasource.py +278 -0
- maxframe/tensor/datasource/zeros.py +188 -0
- maxframe/tensor/fetch/__init__.py +15 -0
- maxframe/tensor/fetch/core.py +54 -0
- maxframe/tensor/indexing/__init__.py +47 -0
- maxframe/tensor/indexing/choose.py +196 -0
- maxframe/tensor/indexing/compress.py +124 -0
- maxframe/tensor/indexing/core.py +190 -0
- maxframe/tensor/indexing/extract.py +71 -0
- maxframe/tensor/indexing/fill_diagonal.py +183 -0
- maxframe/tensor/indexing/flatnonzero.py +60 -0
- maxframe/tensor/indexing/getitem.py +175 -0
- maxframe/tensor/indexing/nonzero.py +120 -0
- maxframe/tensor/indexing/setitem.py +132 -0
- maxframe/tensor/indexing/slice.py +29 -0
- maxframe/tensor/indexing/take.py +130 -0
- maxframe/tensor/indexing/tests/__init__.py +15 -0
- maxframe/tensor/indexing/tests/test_indexing.py +234 -0
- maxframe/tensor/indexing/unravel_index.py +103 -0
- maxframe/tensor/merge/__init__.py +15 -0
- maxframe/tensor/merge/stack.py +132 -0
- maxframe/tensor/merge/tests/__init__.py +13 -0
- maxframe/tensor/merge/tests/test_merge.py +52 -0
- maxframe/tensor/operators.py +123 -0
- maxframe/tensor/random/__init__.py +168 -0
- maxframe/tensor/random/beta.py +87 -0
- maxframe/tensor/random/binomial.py +137 -0
- maxframe/tensor/random/bytes.py +39 -0
- maxframe/tensor/random/chisquare.py +110 -0
- maxframe/tensor/random/choice.py +186 -0
- maxframe/tensor/random/core.py +234 -0
- maxframe/tensor/random/dirichlet.py +123 -0
- maxframe/tensor/random/exponential.py +94 -0
- maxframe/tensor/random/f.py +135 -0
- maxframe/tensor/random/gamma.py +128 -0
- maxframe/tensor/random/geometric.py +93 -0
- maxframe/tensor/random/gumbel.py +167 -0
- maxframe/tensor/random/hypergeometric.py +148 -0
- maxframe/tensor/random/laplace.py +133 -0
- maxframe/tensor/random/logistic.py +129 -0
- maxframe/tensor/random/lognormal.py +159 -0
- maxframe/tensor/random/logseries.py +122 -0
- maxframe/tensor/random/multinomial.py +133 -0
- maxframe/tensor/random/multivariate_normal.py +192 -0
- maxframe/tensor/random/negative_binomial.py +125 -0
- maxframe/tensor/random/noncentral_chisquare.py +132 -0
- maxframe/tensor/random/noncentral_f.py +126 -0
- maxframe/tensor/random/normal.py +143 -0
- maxframe/tensor/random/pareto.py +140 -0
- maxframe/tensor/random/permutation.py +104 -0
- maxframe/tensor/random/poisson.py +111 -0
- maxframe/tensor/random/power.py +142 -0
- maxframe/tensor/random/rand.py +82 -0
- maxframe/tensor/random/randint.py +121 -0
- maxframe/tensor/random/randn.py +96 -0
- maxframe/tensor/random/random_integers.py +123 -0
- maxframe/tensor/random/random_sample.py +86 -0
- maxframe/tensor/random/rayleigh.py +110 -0
- maxframe/tensor/random/shuffle.py +61 -0
- maxframe/tensor/random/standard_cauchy.py +105 -0
- maxframe/tensor/random/standard_exponential.py +72 -0
- maxframe/tensor/random/standard_gamma.py +120 -0
- maxframe/tensor/random/standard_normal.py +74 -0
- maxframe/tensor/random/standard_t.py +135 -0
- maxframe/tensor/random/tests/__init__.py +15 -0
- maxframe/tensor/random/tests/test_random.py +167 -0
- maxframe/tensor/random/triangular.py +119 -0
- maxframe/tensor/random/uniform.py +131 -0
- maxframe/tensor/random/vonmises.py +131 -0
- maxframe/tensor/random/wald.py +114 -0
- maxframe/tensor/random/weibull.py +140 -0
- maxframe/tensor/random/zipf.py +122 -0
- maxframe/tensor/rechunk/__init__.py +26 -0
- maxframe/tensor/rechunk/rechunk.py +43 -0
- maxframe/tensor/reduction/__init__.py +66 -0
- maxframe/tensor/reduction/all.py +103 -0
- maxframe/tensor/reduction/allclose.py +88 -0
- maxframe/tensor/reduction/any.py +105 -0
- maxframe/tensor/reduction/argmax.py +103 -0
- maxframe/tensor/reduction/argmin.py +103 -0
- maxframe/tensor/reduction/array_equal.py +64 -0
- maxframe/tensor/reduction/core.py +168 -0
- maxframe/tensor/reduction/count_nonzero.py +81 -0
- maxframe/tensor/reduction/cumprod.py +97 -0
- maxframe/tensor/reduction/cumsum.py +101 -0
- maxframe/tensor/reduction/max.py +120 -0
- maxframe/tensor/reduction/mean.py +123 -0
- maxframe/tensor/reduction/min.py +120 -0
- maxframe/tensor/reduction/nanargmax.py +82 -0
- maxframe/tensor/reduction/nanargmin.py +76 -0
- maxframe/tensor/reduction/nancumprod.py +91 -0
- maxframe/tensor/reduction/nancumsum.py +94 -0
- maxframe/tensor/reduction/nanmax.py +111 -0
- maxframe/tensor/reduction/nanmean.py +106 -0
- maxframe/tensor/reduction/nanmin.py +111 -0
- maxframe/tensor/reduction/nanprod.py +94 -0
- maxframe/tensor/reduction/nanstd.py +126 -0
- maxframe/tensor/reduction/nansum.py +115 -0
- maxframe/tensor/reduction/nanvar.py +149 -0
- maxframe/tensor/reduction/prod.py +130 -0
- maxframe/tensor/reduction/std.py +134 -0
- maxframe/tensor/reduction/sum.py +125 -0
- maxframe/tensor/reduction/tests/__init__.py +13 -0
- maxframe/tensor/reduction/tests/test_reduction.py +181 -0
- maxframe/tensor/reduction/var.py +176 -0
- maxframe/tensor/reshape/__init__.py +17 -0
- maxframe/tensor/reshape/reshape.py +188 -0
- maxframe/tensor/reshape/tests/__init__.py +15 -0
- maxframe/tensor/reshape/tests/test_reshape.py +37 -0
- maxframe/tensor/statistics/__init__.py +13 -0
- maxframe/tensor/statistics/percentile.py +175 -0
- maxframe/tensor/statistics/quantile.py +288 -0
- maxframe/tensor/ufunc/__init__.py +26 -0
- maxframe/tensor/ufunc/ufunc.py +200 -0
- maxframe/tensor/utils.py +718 -0
- maxframe/tests/__init__.py +13 -0
- maxframe/tests/test_codegen.py +69 -0
- maxframe/tests/test_protocol.py +144 -0
- maxframe/tests/test_utils.py +376 -0
- maxframe/tests/utils.py +164 -0
- maxframe/typing_.py +37 -0
- maxframe/udf.py +134 -0
- maxframe/utils.py +1114 -0
- maxframe-0.1.0b5.dist-info/METADATA +104 -0
- maxframe-0.1.0b5.dist-info/RECORD +647 -0
- maxframe-0.1.0b5.dist-info/WHEEL +5 -0
- maxframe-0.1.0b5.dist-info/top_level.txt +3 -0
- maxframe_client/__init__.py +17 -0
- maxframe_client/clients/__init__.py +13 -0
- maxframe_client/clients/framedriver.py +118 -0
- maxframe_client/clients/spe.py +104 -0
- maxframe_client/conftest.py +15 -0
- maxframe_client/fetcher.py +264 -0
- maxframe_client/session/__init__.py +22 -0
- maxframe_client/session/consts.py +36 -0
- maxframe_client/session/graph.py +119 -0
- maxframe_client/session/odps.py +482 -0
- maxframe_client/session/task.py +280 -0
- maxframe_client/session/tests/__init__.py +13 -0
- maxframe_client/session/tests/test_task.py +85 -0
- maxframe_client/tests/__init__.py +13 -0
- maxframe_client/tests/test_fetcher.py +89 -0
- maxframe_client/tests/test_session.py +255 -0
|
@@ -0,0 +1,183 @@
|
|
|
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
|
+
from . import fetch, random
|
|
16
|
+
from .arithmetic import absolute
|
|
17
|
+
from .arithmetic import absolute as abs
|
|
18
|
+
from .arithmetic import (
|
|
19
|
+
add,
|
|
20
|
+
angle,
|
|
21
|
+
arccos,
|
|
22
|
+
arccosh,
|
|
23
|
+
arcsin,
|
|
24
|
+
arcsinh,
|
|
25
|
+
arctan,
|
|
26
|
+
arctan2,
|
|
27
|
+
arctanh,
|
|
28
|
+
around,
|
|
29
|
+
)
|
|
30
|
+
from .arithmetic import bitand as bitwise_and
|
|
31
|
+
from .arithmetic import bitor as bitwise_or
|
|
32
|
+
from .arithmetic import bitxor as bitwise_xor
|
|
33
|
+
from .arithmetic import (
|
|
34
|
+
cbrt,
|
|
35
|
+
ceil,
|
|
36
|
+
clip,
|
|
37
|
+
conj,
|
|
38
|
+
conjugate,
|
|
39
|
+
copysign,
|
|
40
|
+
cos,
|
|
41
|
+
cosh,
|
|
42
|
+
deg2rad,
|
|
43
|
+
degrees,
|
|
44
|
+
divide,
|
|
45
|
+
equal,
|
|
46
|
+
exp,
|
|
47
|
+
exp2,
|
|
48
|
+
expm1,
|
|
49
|
+
fabs,
|
|
50
|
+
fix,
|
|
51
|
+
float_power,
|
|
52
|
+
floor,
|
|
53
|
+
)
|
|
54
|
+
from .arithmetic import floordiv as floor_divide
|
|
55
|
+
from .arithmetic import fmax, fmin, fmod, frexp, greater, greater_equal, hypot, i0, imag
|
|
56
|
+
from .arithmetic import invert
|
|
57
|
+
from .arithmetic import invert as bitwise_not
|
|
58
|
+
from .arithmetic import (
|
|
59
|
+
isclose,
|
|
60
|
+
iscomplex,
|
|
61
|
+
isfinite,
|
|
62
|
+
isinf,
|
|
63
|
+
isnan,
|
|
64
|
+
isreal,
|
|
65
|
+
ldexp,
|
|
66
|
+
less,
|
|
67
|
+
less_equal,
|
|
68
|
+
log,
|
|
69
|
+
log1p,
|
|
70
|
+
log2,
|
|
71
|
+
log10,
|
|
72
|
+
logaddexp,
|
|
73
|
+
logaddexp2,
|
|
74
|
+
logical_and,
|
|
75
|
+
logical_not,
|
|
76
|
+
logical_or,
|
|
77
|
+
logical_xor,
|
|
78
|
+
)
|
|
79
|
+
from .arithmetic import lshift as left_shift
|
|
80
|
+
from .arithmetic import (
|
|
81
|
+
maximum,
|
|
82
|
+
minimum,
|
|
83
|
+
mod,
|
|
84
|
+
modf,
|
|
85
|
+
multiply,
|
|
86
|
+
nan_to_num,
|
|
87
|
+
negative,
|
|
88
|
+
nextafter,
|
|
89
|
+
not_equal,
|
|
90
|
+
positive,
|
|
91
|
+
power,
|
|
92
|
+
rad2deg,
|
|
93
|
+
radians,
|
|
94
|
+
real,
|
|
95
|
+
reciprocal,
|
|
96
|
+
remainder,
|
|
97
|
+
rint,
|
|
98
|
+
)
|
|
99
|
+
from .arithmetic import round_
|
|
100
|
+
from .arithmetic import round_ as round
|
|
101
|
+
from .arithmetic import rshift as right_shift
|
|
102
|
+
from .arithmetic import (
|
|
103
|
+
sign,
|
|
104
|
+
signbit,
|
|
105
|
+
sin,
|
|
106
|
+
sinc,
|
|
107
|
+
sinh,
|
|
108
|
+
spacing,
|
|
109
|
+
sqrt,
|
|
110
|
+
square,
|
|
111
|
+
subtract,
|
|
112
|
+
tan,
|
|
113
|
+
tanh,
|
|
114
|
+
)
|
|
115
|
+
from .arithmetic import truediv as true_divide
|
|
116
|
+
from .arithmetic import trunc
|
|
117
|
+
from .base import broadcast_to, transpose, unique, where
|
|
118
|
+
from .core import Tensor
|
|
119
|
+
from .datasource import (
|
|
120
|
+
arange,
|
|
121
|
+
array,
|
|
122
|
+
asarray,
|
|
123
|
+
ascontiguousarray,
|
|
124
|
+
asfortranarray,
|
|
125
|
+
empty,
|
|
126
|
+
empty_like,
|
|
127
|
+
from_dataframe,
|
|
128
|
+
full,
|
|
129
|
+
full_like,
|
|
130
|
+
ones,
|
|
131
|
+
ones_like,
|
|
132
|
+
scalar,
|
|
133
|
+
tensor,
|
|
134
|
+
zeros,
|
|
135
|
+
)
|
|
136
|
+
from .indexing import (
|
|
137
|
+
choose,
|
|
138
|
+
compress,
|
|
139
|
+
extract,
|
|
140
|
+
fill_diagonal,
|
|
141
|
+
flatnonzero,
|
|
142
|
+
nonzero,
|
|
143
|
+
take,
|
|
144
|
+
unravel_index,
|
|
145
|
+
)
|
|
146
|
+
from .merge import stack
|
|
147
|
+
from .rechunk import rechunk
|
|
148
|
+
from .reduction import (
|
|
149
|
+
all,
|
|
150
|
+
allclose,
|
|
151
|
+
any,
|
|
152
|
+
argmax,
|
|
153
|
+
argmin,
|
|
154
|
+
array_equal,
|
|
155
|
+
count_nonzero,
|
|
156
|
+
cumprod,
|
|
157
|
+
cumsum,
|
|
158
|
+
)
|
|
159
|
+
from .reduction import max
|
|
160
|
+
from .reduction import max as amax
|
|
161
|
+
from .reduction import mean
|
|
162
|
+
from .reduction import min
|
|
163
|
+
from .reduction import min as amin
|
|
164
|
+
from .reduction import (
|
|
165
|
+
nanargmax,
|
|
166
|
+
nanargmin,
|
|
167
|
+
nancumprod,
|
|
168
|
+
nancumsum,
|
|
169
|
+
nanmax,
|
|
170
|
+
nanmean,
|
|
171
|
+
nanmin,
|
|
172
|
+
nanprod,
|
|
173
|
+
nanstd,
|
|
174
|
+
nansum,
|
|
175
|
+
nanvar,
|
|
176
|
+
)
|
|
177
|
+
from .reduction import prod
|
|
178
|
+
from .reduction import prod as product
|
|
179
|
+
from .reduction import std, sum, var
|
|
180
|
+
from .reshape import reshape
|
|
181
|
+
from .ufunc import ufunc
|
|
182
|
+
|
|
183
|
+
del fetch, ufunc
|
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Copyright 1999-2024 Alibaba Group Holding Ltd.
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
from ...core import is_build_mode
|
|
18
|
+
from .abs import TensorAbs, abs
|
|
19
|
+
from .absolute import TensorAbsolute, absolute
|
|
20
|
+
from .add import TensorAdd, add
|
|
21
|
+
from .angle import TensorAngle, angle
|
|
22
|
+
from .arccos import TensorArccos, arccos
|
|
23
|
+
from .arccosh import TensorArccosh, arccosh
|
|
24
|
+
from .arcsin import TensorArcsin, arcsin
|
|
25
|
+
from .arcsinh import TensorArcsinh, arcsinh
|
|
26
|
+
from .arctan import TensorArctan, arctan
|
|
27
|
+
from .arctan2 import TensorArctan2, arctan2
|
|
28
|
+
from .arctanh import TensorArctanh, arctanh
|
|
29
|
+
from .around import TensorAround
|
|
30
|
+
from .around import around
|
|
31
|
+
from .around import around as round_
|
|
32
|
+
from .bitand import TensorBitand, bitand
|
|
33
|
+
from .bitor import TensorBitor, bitor
|
|
34
|
+
from .bitxor import TensorBitxor, bitxor
|
|
35
|
+
from .cbrt import TensorCbrt, cbrt
|
|
36
|
+
from .ceil import TensorCeil, ceil
|
|
37
|
+
from .clip import TensorClip, clip
|
|
38
|
+
from .conj import TensorConj
|
|
39
|
+
from .conj import conj
|
|
40
|
+
from .conj import conj as conjugate
|
|
41
|
+
from .copysign import TensorCopysign, copysign
|
|
42
|
+
from .cos import TensorCos, cos
|
|
43
|
+
from .cosh import TensorCosh, cosh
|
|
44
|
+
from .deg2rad import TensorDeg2rad, deg2rad
|
|
45
|
+
from .degrees import TensorDegrees, degrees
|
|
46
|
+
from .divide import TensorDivide, divide
|
|
47
|
+
from .equal import TensorEqual, equal
|
|
48
|
+
from .exp import TensorExp, exp
|
|
49
|
+
from .exp2 import TensorExp2, exp2
|
|
50
|
+
from .expm1 import TensorExpm1, expm1
|
|
51
|
+
from .fabs import TensorFabs, fabs
|
|
52
|
+
from .fix import TensorFix, fix
|
|
53
|
+
from .float_power import TensorFloatPower, float_power
|
|
54
|
+
from .floor import TensorFloor, floor
|
|
55
|
+
from .floordiv import TensorFloorDiv, floordiv
|
|
56
|
+
from .fmax import TensorFMax, fmax
|
|
57
|
+
from .fmin import TensorFMin, fmin
|
|
58
|
+
from .fmod import TensorFMod, fmod
|
|
59
|
+
from .frexp import TensorFrexp, frexp
|
|
60
|
+
from .greater import TensorGreaterThan, greater
|
|
61
|
+
from .greater_equal import TensorGreaterEqual, greater_equal
|
|
62
|
+
from .hypot import TensorHypot, hypot
|
|
63
|
+
from .i0 import TensorI0, i0
|
|
64
|
+
from .imag import TensorImag, imag
|
|
65
|
+
from .invert import TensorInvert, invert
|
|
66
|
+
from .isclose import TensorIsclose, isclose
|
|
67
|
+
from .iscomplex import TensorIsComplex, iscomplex
|
|
68
|
+
from .isfinite import TensorIsFinite, isfinite
|
|
69
|
+
from .isinf import TensorIsInf, isinf
|
|
70
|
+
from .isnan import TensorIsNan, isnan
|
|
71
|
+
from .isreal import TensorIsReal, isreal
|
|
72
|
+
from .ldexp import TensorLdexp, ldexp
|
|
73
|
+
from .less import TensorLessThan, less
|
|
74
|
+
from .less_equal import TensorLessEqual, less_equal
|
|
75
|
+
from .log import TensorLog, log
|
|
76
|
+
from .log1p import TensorLog1p, log1p
|
|
77
|
+
from .log2 import TensorLog2, log2
|
|
78
|
+
from .log10 import TensorLog10, log10
|
|
79
|
+
from .logaddexp import TensorLogAddExp, logaddexp
|
|
80
|
+
from .logaddexp2 import TensorLogAddExp2, logaddexp2
|
|
81
|
+
from .logical_and import TensorAnd, logical_and
|
|
82
|
+
from .logical_not import TensorNot, logical_not
|
|
83
|
+
from .logical_or import TensorOr, logical_or
|
|
84
|
+
from .logical_xor import TensorXor, logical_xor
|
|
85
|
+
from .lshift import TensorLshift, lshift
|
|
86
|
+
from .maximum import TensorMaximum, maximum
|
|
87
|
+
from .minimum import TensorMinimum, minimum
|
|
88
|
+
from .mod import TensorMod
|
|
89
|
+
from .mod import mod
|
|
90
|
+
from .mod import mod as remainder
|
|
91
|
+
from .modf import TensorModf, modf
|
|
92
|
+
from .multiply import TensorMultiply, multiply
|
|
93
|
+
from .nan_to_num import TensorNanToNum, nan_to_num
|
|
94
|
+
from .negative import TensorNegative, negative
|
|
95
|
+
from .nextafter import TensorNextafter, nextafter
|
|
96
|
+
from .not_equal import TensorNotEqual, not_equal
|
|
97
|
+
from .positive import TensorPositive, positive
|
|
98
|
+
from .power import TensorPower, power
|
|
99
|
+
from .rad2deg import TensorRad2deg, rad2deg
|
|
100
|
+
from .radians import TensorRadians, radians
|
|
101
|
+
from .real import TensorReal, real
|
|
102
|
+
from .reciprocal import TensorReciprocal, reciprocal
|
|
103
|
+
from .rint import TensorRint, rint
|
|
104
|
+
from .rshift import TensorRshift, rshift
|
|
105
|
+
from .setimag import TensorSetImag
|
|
106
|
+
from .setreal import TensorSetReal
|
|
107
|
+
from .sign import TensorSign, sign
|
|
108
|
+
from .signbit import TensorSignbit, signbit
|
|
109
|
+
from .sin import TensorSin, sin
|
|
110
|
+
from .sinc import TensorSinc, sinc
|
|
111
|
+
from .sinh import TensorSinh, sinh
|
|
112
|
+
from .spacing import TensorSpacing, spacing
|
|
113
|
+
from .sqrt import TensorSqrt, sqrt
|
|
114
|
+
from .square import TensorSquare, square
|
|
115
|
+
from .subtract import TensorSubtract, subtract
|
|
116
|
+
from .tan import TensorTan, tan
|
|
117
|
+
from .tanh import TensorTanh, tanh
|
|
118
|
+
from .truediv import TensorTrueDiv, truediv
|
|
119
|
+
from .trunc import TensorTrunc, trunc
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
def _wrap_iop(func):
|
|
123
|
+
def inner(self, *args, **kwargs):
|
|
124
|
+
kwargs["out"] = self
|
|
125
|
+
return func(self, *args, **kwargs)
|
|
126
|
+
|
|
127
|
+
return inner
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
def _install():
|
|
131
|
+
from ..core import TENSOR_TYPE, Tensor, TensorData
|
|
132
|
+
from ..datasource import tensor as astensor
|
|
133
|
+
from .add import add, radd
|
|
134
|
+
from .bitand import bitand, rbitand
|
|
135
|
+
from .bitor import bitor, rbitor
|
|
136
|
+
from .bitxor import bitxor, rbitxor
|
|
137
|
+
from .divide import divide, rdivide
|
|
138
|
+
from .floordiv import floordiv, rfloordiv
|
|
139
|
+
from .lshift import lshift, rlshift
|
|
140
|
+
from .mod import mod, rmod
|
|
141
|
+
from .multiply import multiply, rmultiply
|
|
142
|
+
from .power import power, rpower
|
|
143
|
+
from .rshift import rrshift, rshift
|
|
144
|
+
from .subtract import rsubtract, subtract
|
|
145
|
+
from .truediv import rtruediv, truediv
|
|
146
|
+
|
|
147
|
+
def _wrap_equal(func):
|
|
148
|
+
def eq(x1, x2, **kwargs):
|
|
149
|
+
if is_build_mode():
|
|
150
|
+
return astensor(x1)._equals(x2)
|
|
151
|
+
return func(x1, x2, **kwargs)
|
|
152
|
+
|
|
153
|
+
return eq
|
|
154
|
+
|
|
155
|
+
for cls in TENSOR_TYPE:
|
|
156
|
+
setattr(cls, "__add__", add)
|
|
157
|
+
setattr(cls, "__iadd__", _wrap_iop(add))
|
|
158
|
+
setattr(cls, "__radd__", radd)
|
|
159
|
+
setattr(cls, "__sub__", subtract)
|
|
160
|
+
setattr(cls, "__isub__", _wrap_iop(subtract))
|
|
161
|
+
setattr(cls, "__rsub__", rsubtract)
|
|
162
|
+
setattr(cls, "__mul__", multiply)
|
|
163
|
+
setattr(cls, "__imul__", _wrap_iop(multiply))
|
|
164
|
+
setattr(cls, "__rmul__", rmultiply)
|
|
165
|
+
setattr(cls, "__div__", divide)
|
|
166
|
+
setattr(cls, "__idiv__", _wrap_iop(divide))
|
|
167
|
+
setattr(cls, "__rdiv__", rdivide)
|
|
168
|
+
setattr(cls, "__truediv__", truediv)
|
|
169
|
+
setattr(cls, "__itruediv__", _wrap_iop(truediv))
|
|
170
|
+
setattr(cls, "__rtruediv__", rtruediv)
|
|
171
|
+
setattr(cls, "__floordiv__", floordiv)
|
|
172
|
+
setattr(cls, "__ifloordiv__", _wrap_iop(floordiv))
|
|
173
|
+
setattr(cls, "__rfloordiv__", rfloordiv)
|
|
174
|
+
setattr(cls, "__pow__", power)
|
|
175
|
+
setattr(cls, "__ipow__", _wrap_iop(power))
|
|
176
|
+
setattr(cls, "__rpow__", rpower)
|
|
177
|
+
setattr(cls, "__mod__", mod)
|
|
178
|
+
setattr(cls, "__imod__", _wrap_iop(mod))
|
|
179
|
+
setattr(cls, "__rmod__", rmod)
|
|
180
|
+
setattr(cls, "__lshift__", lshift)
|
|
181
|
+
setattr(cls, "__ilshift__", _wrap_iop(lshift))
|
|
182
|
+
setattr(cls, "__rlshift__", rlshift)
|
|
183
|
+
setattr(cls, "__rshift__", rshift)
|
|
184
|
+
setattr(cls, "__irshift__", _wrap_iop(rshift))
|
|
185
|
+
setattr(cls, "__rrshift__", rrshift)
|
|
186
|
+
|
|
187
|
+
setattr(cls, "__eq__", _wrap_equal(equal))
|
|
188
|
+
setattr(cls, "__ne__", not_equal)
|
|
189
|
+
setattr(cls, "__lt__", less)
|
|
190
|
+
setattr(cls, "__le__", less_equal)
|
|
191
|
+
setattr(cls, "__gt__", greater)
|
|
192
|
+
setattr(cls, "__ge__", greater_equal)
|
|
193
|
+
setattr(cls, "__and__", bitand)
|
|
194
|
+
setattr(cls, "__iand__", _wrap_iop(bitand))
|
|
195
|
+
setattr(cls, "__rand__", rbitand)
|
|
196
|
+
setattr(cls, "__or__", bitor)
|
|
197
|
+
setattr(cls, "__ior__", _wrap_iop(bitor))
|
|
198
|
+
setattr(cls, "__ror__", rbitor)
|
|
199
|
+
setattr(cls, "__xor__", bitxor)
|
|
200
|
+
setattr(cls, "__ixor__", _wrap_iop(bitxor))
|
|
201
|
+
setattr(cls, "__rxor__", rbitxor)
|
|
202
|
+
|
|
203
|
+
setattr(cls, "__neg__", negative)
|
|
204
|
+
setattr(cls, "__pos__", positive)
|
|
205
|
+
setattr(cls, "__abs__", abs)
|
|
206
|
+
setattr(cls, "__invert__", invert)
|
|
207
|
+
|
|
208
|
+
setattr(Tensor, "round", round_)
|
|
209
|
+
setattr(Tensor, "conj", conj)
|
|
210
|
+
setattr(Tensor, "conjugate", conjugate)
|
|
211
|
+
setattr(TensorData, "round", round_)
|
|
212
|
+
setattr(TensorData, "conj", conj)
|
|
213
|
+
setattr(TensorData, "conjugate", conjugate)
|
|
214
|
+
|
|
215
|
+
|
|
216
|
+
_install()
|
|
217
|
+
del _install
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
BIN_UFUNC = {
|
|
221
|
+
add,
|
|
222
|
+
subtract,
|
|
223
|
+
multiply,
|
|
224
|
+
divide,
|
|
225
|
+
truediv,
|
|
226
|
+
floordiv,
|
|
227
|
+
power,
|
|
228
|
+
mod,
|
|
229
|
+
fmod,
|
|
230
|
+
logaddexp,
|
|
231
|
+
logaddexp2,
|
|
232
|
+
equal,
|
|
233
|
+
not_equal,
|
|
234
|
+
less,
|
|
235
|
+
less_equal,
|
|
236
|
+
greater,
|
|
237
|
+
greater_equal,
|
|
238
|
+
arctan2,
|
|
239
|
+
hypot,
|
|
240
|
+
bitand,
|
|
241
|
+
bitor,
|
|
242
|
+
bitxor,
|
|
243
|
+
lshift,
|
|
244
|
+
rshift,
|
|
245
|
+
logical_and,
|
|
246
|
+
logical_or,
|
|
247
|
+
logical_xor,
|
|
248
|
+
maximum,
|
|
249
|
+
minimum,
|
|
250
|
+
float_power,
|
|
251
|
+
remainder,
|
|
252
|
+
fmax,
|
|
253
|
+
fmin,
|
|
254
|
+
copysign,
|
|
255
|
+
nextafter,
|
|
256
|
+
ldexp,
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
UNARY_UFUNC = {
|
|
260
|
+
square,
|
|
261
|
+
arcsinh,
|
|
262
|
+
rint,
|
|
263
|
+
sign,
|
|
264
|
+
conj,
|
|
265
|
+
tan,
|
|
266
|
+
absolute,
|
|
267
|
+
deg2rad,
|
|
268
|
+
log,
|
|
269
|
+
fabs,
|
|
270
|
+
exp2,
|
|
271
|
+
invert,
|
|
272
|
+
negative,
|
|
273
|
+
sqrt,
|
|
274
|
+
arctan,
|
|
275
|
+
positive,
|
|
276
|
+
cbrt,
|
|
277
|
+
log10,
|
|
278
|
+
sin,
|
|
279
|
+
rad2deg,
|
|
280
|
+
log2,
|
|
281
|
+
arcsin,
|
|
282
|
+
expm1,
|
|
283
|
+
arctanh,
|
|
284
|
+
cosh,
|
|
285
|
+
sinh,
|
|
286
|
+
cos,
|
|
287
|
+
reciprocal,
|
|
288
|
+
tanh,
|
|
289
|
+
log1p,
|
|
290
|
+
exp,
|
|
291
|
+
arccos,
|
|
292
|
+
arccosh,
|
|
293
|
+
around,
|
|
294
|
+
logical_not,
|
|
295
|
+
conjugate,
|
|
296
|
+
isfinite,
|
|
297
|
+
isinf,
|
|
298
|
+
isnan,
|
|
299
|
+
signbit,
|
|
300
|
+
spacing,
|
|
301
|
+
floor,
|
|
302
|
+
ceil,
|
|
303
|
+
trunc,
|
|
304
|
+
degrees,
|
|
305
|
+
radians,
|
|
306
|
+
angle,
|
|
307
|
+
isreal,
|
|
308
|
+
iscomplex,
|
|
309
|
+
real,
|
|
310
|
+
imag,
|
|
311
|
+
fix,
|
|
312
|
+
i0,
|
|
313
|
+
sinc,
|
|
314
|
+
nan_to_num,
|
|
315
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Copyright 1999-2024 Alibaba Group Holding Ltd.
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
import numpy as np
|
|
18
|
+
|
|
19
|
+
from ... import opcodes
|
|
20
|
+
from ..utils import infer_dtype
|
|
21
|
+
from .core import TensorUnaryOp
|
|
22
|
+
from .utils import arithmetic_operator
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
@arithmetic_operator(sparse_mode="unary")
|
|
26
|
+
class TensorAbs(TensorUnaryOp):
|
|
27
|
+
_op_type_ = opcodes.ABS
|
|
28
|
+
_func_name = "abs"
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
@infer_dtype(np.abs)
|
|
32
|
+
def abs(x, out=None, where=None, **kwargs):
|
|
33
|
+
r"""
|
|
34
|
+
Calculate the absolute value element-wise.
|
|
35
|
+
|
|
36
|
+
Parameters
|
|
37
|
+
----------
|
|
38
|
+
x : array_like
|
|
39
|
+
Input tensor.
|
|
40
|
+
out : Tensor, None, or tuple of Tensor and None, optional
|
|
41
|
+
A location into which the result is stored. If provided, it must have
|
|
42
|
+
a shape that the inputs broadcast to. If not provided or `None`,
|
|
43
|
+
a freshly-allocated tensor is returned. A tuple (possible only as a
|
|
44
|
+
keyword argument) must have length equal to the number of outputs.
|
|
45
|
+
where : array_like, optional
|
|
46
|
+
Values of True indicate to calculate the ufunc at that position, values
|
|
47
|
+
of False indicate to leave the value in the output alone.
|
|
48
|
+
**kwargs
|
|
49
|
+
|
|
50
|
+
Returns
|
|
51
|
+
-------
|
|
52
|
+
absolute : Tensor
|
|
53
|
+
An tensor containing the absolute value of
|
|
54
|
+
each element in `x`. For complex input, ``a + ib``, the
|
|
55
|
+
absolute value is :math:`\sqrt{ a^2 + b^2 }`.
|
|
56
|
+
|
|
57
|
+
Examples
|
|
58
|
+
--------
|
|
59
|
+
>>> import maxframe.tensor as mt
|
|
60
|
+
|
|
61
|
+
>>> x = mt.array([-1.2, 1.2])
|
|
62
|
+
>>> mt.absolute(x).execute()
|
|
63
|
+
array([ 1.2, 1.2])
|
|
64
|
+
>>> mt.absolute(1.2 + 1j).execute()
|
|
65
|
+
1.5620499351813308
|
|
66
|
+
"""
|
|
67
|
+
op = TensorAbs(**kwargs)
|
|
68
|
+
return op(x, out=out, where=where)
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Copyright 1999-2024 Alibaba Group Holding Ltd.
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
import numpy as np
|
|
18
|
+
|
|
19
|
+
from ... import opcodes
|
|
20
|
+
from ..utils import infer_dtype
|
|
21
|
+
from .core import TensorUnaryOp
|
|
22
|
+
from .utils import arithmetic_operator
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
@arithmetic_operator(sparse_mode="unary")
|
|
26
|
+
class TensorAbsolute(TensorUnaryOp):
|
|
27
|
+
_op_type_ = opcodes.ABSOLUTE
|
|
28
|
+
_func_name = "absolute"
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
@infer_dtype(np.absolute)
|
|
32
|
+
def absolute(x, out=None, where=None, **kwargs):
|
|
33
|
+
r"""
|
|
34
|
+
Calculate the absolute value element-wise.
|
|
35
|
+
|
|
36
|
+
Parameters
|
|
37
|
+
----------
|
|
38
|
+
x : array_like
|
|
39
|
+
Input tensor.
|
|
40
|
+
out : Tensor, None, or tuple of Tensor and None, optional
|
|
41
|
+
A location into which the result is stored. If provided, it must have
|
|
42
|
+
a shape that the inputs broadcast to. If not provided or `None`,
|
|
43
|
+
a freshly-allocated tensor is returned. A tuple (possible only as a
|
|
44
|
+
keyword argument) must have length equal to the number of outputs.
|
|
45
|
+
where : array_like, optional
|
|
46
|
+
Values of True indicate to calculate the ufunc at that position, values
|
|
47
|
+
of False indicate to leave the value in the output alone.
|
|
48
|
+
**kwargs
|
|
49
|
+
|
|
50
|
+
Returns
|
|
51
|
+
-------
|
|
52
|
+
absolute : Tensor
|
|
53
|
+
An tensor containing the absolute value of
|
|
54
|
+
each element in `x`. For complex input, ``a + ib``, the
|
|
55
|
+
absolute value is :math:`\sqrt{ a^2 + b^2 }`.
|
|
56
|
+
|
|
57
|
+
Examples
|
|
58
|
+
--------
|
|
59
|
+
>>> import maxframe.tensor as mt
|
|
60
|
+
|
|
61
|
+
>>> x = mt.array([-1.2, 1.2])
|
|
62
|
+
>>> mt.absolute(x).execute()
|
|
63
|
+
array([ 1.2, 1.2])
|
|
64
|
+
>>> mt.absolute(1.2 + 1j).execute()
|
|
65
|
+
1.5620499351813308
|
|
66
|
+
"""
|
|
67
|
+
op = TensorAbsolute(**kwargs)
|
|
68
|
+
return op(x, out=out, where=where)
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
# Copyright 1999-2024 Alibaba Group Holding Ltd.
|
|
4
|
+
#
|
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
# you may not use this file except in compliance with the License.
|
|
7
|
+
# You may obtain a copy of the License at
|
|
8
|
+
#
|
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
#
|
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
# See the License for the specific language governing permissions and
|
|
15
|
+
# limitations under the License.
|
|
16
|
+
|
|
17
|
+
import numpy as np
|
|
18
|
+
|
|
19
|
+
from ... import opcodes
|
|
20
|
+
from ..utils import infer_dtype
|
|
21
|
+
from .core import TensorBinOp
|
|
22
|
+
from .utils import arithmetic_operator
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
@arithmetic_operator(sparse_mode="binary_and")
|
|
26
|
+
class TensorAdd(TensorBinOp):
|
|
27
|
+
_op_type_ = opcodes.ADD
|
|
28
|
+
_func_name = "add"
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
@infer_dtype(np.add)
|
|
32
|
+
def add(x1, x2, out=None, where=None, **kwargs):
|
|
33
|
+
"""
|
|
34
|
+
Add arguments element-wise.
|
|
35
|
+
|
|
36
|
+
Parameters
|
|
37
|
+
----------
|
|
38
|
+
x1, x2 : array_like
|
|
39
|
+
The tensors to be added. If ``x1.shape != x2.shape``, they must be
|
|
40
|
+
broadcastable to a common shape (which may be the shape of one or
|
|
41
|
+
the other).
|
|
42
|
+
out : Tensor, None, or tuple of Tensor and None, optional
|
|
43
|
+
A location into which the result is stored. If provided, it must have
|
|
44
|
+
a shape that the inputs broadcast to. If not provided or `None`,
|
|
45
|
+
a freshly-allocated tensor is returned. A tuple (possible only as a
|
|
46
|
+
keyword argument) must have length equal to the number of outputs.
|
|
47
|
+
where : array_like, optional
|
|
48
|
+
Values of True indicate to calculate the ufunc at that position, values
|
|
49
|
+
of False indicate to leave the value in the output alone.
|
|
50
|
+
**kwargs
|
|
51
|
+
|
|
52
|
+
Returns
|
|
53
|
+
-------
|
|
54
|
+
add : Tensor or scalar
|
|
55
|
+
The sum of `x1` and `x2`, element-wise. Returns a scalar if
|
|
56
|
+
both `x1` and `x2` are scalars.
|
|
57
|
+
|
|
58
|
+
Notes
|
|
59
|
+
-----
|
|
60
|
+
Equivalent to `x1` + `x2` in terms of tensor broadcasting.
|
|
61
|
+
|
|
62
|
+
Examples
|
|
63
|
+
--------
|
|
64
|
+
>>> import maxframe.tensor as mt
|
|
65
|
+
|
|
66
|
+
>>> mt.add(1.0, 4.0).execute()
|
|
67
|
+
5.0
|
|
68
|
+
>>> x1 = mt.arange(9.0).reshape((3, 3))
|
|
69
|
+
>>> x2 = mt.arange(3.0)
|
|
70
|
+
>>> mt.add(x1, x2).execute()
|
|
71
|
+
array([[ 0., 2., 4.],
|
|
72
|
+
[ 3., 5., 7.],
|
|
73
|
+
[ 6., 8., 10.]])
|
|
74
|
+
"""
|
|
75
|
+
op = TensorAdd(**kwargs)
|
|
76
|
+
return op(x1, x2, out=out, where=where)
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
@infer_dtype(np.add, reverse=True)
|
|
80
|
+
def radd(x1, x2, **kwargs):
|
|
81
|
+
op = TensorAdd(**kwargs)
|
|
82
|
+
return op.rcall(x1, x2)
|