teradataml 17.20.0.7__py3-none-any.whl → 20.0.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of teradataml might be problematic. Click here for more details.
- teradataml/LICENSE-3RD-PARTY.pdf +0 -0
- teradataml/LICENSE.pdf +0 -0
- teradataml/README.md +1864 -1640
- teradataml/__init__.py +70 -60
- teradataml/_version.py +11 -11
- teradataml/analytics/Transformations.py +2995 -2995
- teradataml/analytics/__init__.py +81 -83
- teradataml/analytics/analytic_function_executor.py +2013 -2010
- teradataml/analytics/analytic_query_generator.py +958 -958
- teradataml/analytics/byom/H2OPredict.py +514 -514
- teradataml/analytics/byom/PMMLPredict.py +437 -437
- teradataml/analytics/byom/__init__.py +14 -14
- teradataml/analytics/json_parser/__init__.py +130 -130
- teradataml/analytics/json_parser/analytic_functions_argument.py +1707 -1707
- teradataml/analytics/json_parser/json_store.py +191 -191
- teradataml/analytics/json_parser/metadata.py +1637 -1637
- teradataml/analytics/json_parser/utils.py +804 -803
- teradataml/analytics/meta_class.py +196 -196
- teradataml/analytics/sqle/DecisionTreePredict.py +455 -470
- teradataml/analytics/sqle/NaiveBayesPredict.py +419 -428
- teradataml/analytics/sqle/__init__.py +97 -110
- teradataml/analytics/sqle/json/decisiontreepredict_sqle.json +78 -78
- teradataml/analytics/sqle/json/naivebayespredict_sqle.json +62 -62
- teradataml/analytics/table_operator/__init__.py +10 -10
- teradataml/analytics/uaf/__init__.py +63 -63
- teradataml/analytics/utils.py +693 -692
- teradataml/analytics/valib.py +1603 -1600
- teradataml/automl/__init__.py +1628 -0
- teradataml/automl/custom_json_utils.py +1270 -0
- teradataml/automl/data_preparation.py +993 -0
- teradataml/automl/data_transformation.py +727 -0
- teradataml/automl/feature_engineering.py +1648 -0
- teradataml/automl/feature_exploration.py +547 -0
- teradataml/automl/model_evaluation.py +163 -0
- teradataml/automl/model_training.py +887 -0
- teradataml/catalog/__init__.py +1 -3
- teradataml/catalog/byom.py +1759 -1716
- teradataml/catalog/function_argument_mapper.py +859 -861
- teradataml/catalog/model_cataloging_utils.py +491 -1510
- teradataml/clients/pkce_client.py +481 -481
- teradataml/common/aed_utils.py +6 -2
- teradataml/common/bulk_exposed_utils.py +111 -111
- teradataml/common/constants.py +1433 -1441
- teradataml/common/deprecations.py +160 -0
- teradataml/common/exceptions.py +73 -73
- teradataml/common/formula.py +742 -742
- teradataml/common/garbagecollector.py +592 -635
- teradataml/common/messagecodes.py +422 -431
- teradataml/common/messages.py +227 -231
- teradataml/common/sqlbundle.py +693 -693
- teradataml/common/td_coltype_code_to_tdtype.py +48 -48
- teradataml/common/utils.py +2418 -2500
- teradataml/common/warnings.py +25 -25
- teradataml/common/wrapper_utils.py +1 -110
- teradataml/config/dummy_file1.cfg +4 -4
- teradataml/config/dummy_file2.cfg +2 -2
- teradataml/config/sqlengine_alias_definitions_v1.0 +13 -13
- teradataml/config/sqlengine_alias_definitions_v1.1 +19 -19
- teradataml/config/sqlengine_alias_definitions_v1.3 +18 -18
- teradataml/context/aed_context.py +217 -217
- teradataml/context/context.py +1071 -999
- teradataml/data/A_loan.csv +19 -19
- teradataml/data/BINARY_REALS_LEFT.csv +11 -11
- teradataml/data/BINARY_REALS_RIGHT.csv +11 -11
- teradataml/data/B_loan.csv +49 -49
- teradataml/data/BuoyData2.csv +17 -17
- teradataml/data/CONVOLVE2_COMPLEX_LEFT.csv +5 -5
- teradataml/data/CONVOLVE2_COMPLEX_RIGHT.csv +5 -5
- teradataml/data/Convolve2RealsLeft.csv +5 -5
- teradataml/data/Convolve2RealsRight.csv +5 -5
- teradataml/data/Convolve2ValidLeft.csv +11 -11
- teradataml/data/Convolve2ValidRight.csv +11 -11
- teradataml/data/DFFTConv_Real_8_8.csv +65 -65
- teradataml/data/Orders1_12mf.csv +24 -24
- teradataml/data/Pi_loan.csv +7 -7
- teradataml/data/SMOOTHED_DATA.csv +7 -7
- teradataml/data/TestDFFT8.csv +9 -9
- teradataml/data/TestRiver.csv +109 -109
- teradataml/data/Traindata.csv +28 -28
- teradataml/data/acf.csv +17 -17
- teradataml/data/adaboost_example.json +34 -34
- teradataml/data/adaboostpredict_example.json +24 -24
- teradataml/data/additional_table.csv +10 -10
- teradataml/data/admissions_test.csv +21 -21
- teradataml/data/admissions_train.csv +41 -41
- teradataml/data/admissions_train_nulls.csv +41 -41
- teradataml/data/ageandheight.csv +13 -13
- teradataml/data/ageandpressure.csv +31 -31
- teradataml/data/antiselect_example.json +36 -36
- teradataml/data/antiselect_input.csv +8 -8
- teradataml/data/antiselect_input_mixed_case.csv +8 -8
- teradataml/data/applicant_external.csv +6 -6
- teradataml/data/applicant_reference.csv +6 -6
- teradataml/data/arima_example.json +9 -9
- teradataml/data/assortedtext_input.csv +8 -8
- teradataml/data/attribution_example.json +33 -33
- teradataml/data/attribution_sample_table.csv +27 -27
- teradataml/data/attribution_sample_table1.csv +6 -6
- teradataml/data/attribution_sample_table2.csv +11 -11
- teradataml/data/bank_churn.csv +10001 -0
- teradataml/data/bank_web_clicks1.csv +42 -42
- teradataml/data/bank_web_clicks2.csv +91 -91
- teradataml/data/bank_web_url.csv +85 -85
- teradataml/data/barrier.csv +2 -2
- teradataml/data/barrier_new.csv +3 -3
- teradataml/data/betweenness_example.json +13 -13
- teradataml/data/bin_breaks.csv +8 -8
- teradataml/data/bin_fit_ip.csv +3 -3
- teradataml/data/binary_complex_left.csv +11 -11
- teradataml/data/binary_complex_right.csv +11 -11
- teradataml/data/binary_matrix_complex_left.csv +21 -21
- teradataml/data/binary_matrix_complex_right.csv +21 -21
- teradataml/data/binary_matrix_real_left.csv +21 -21
- teradataml/data/binary_matrix_real_right.csv +21 -21
- teradataml/data/blood2ageandweight.csv +26 -26
- teradataml/data/bmi.csv +501 -0
- teradataml/data/boston.csv +507 -507
- teradataml/data/buoydata_mix.csv +11 -11
- teradataml/data/burst_data.csv +5 -5
- teradataml/data/burst_example.json +20 -20
- teradataml/data/byom_example.json +17 -17
- teradataml/data/bytes_table.csv +3 -3
- teradataml/data/cal_housing_ex_raw.csv +70 -70
- teradataml/data/callers.csv +7 -7
- teradataml/data/calls.csv +10 -10
- teradataml/data/cars_hist.csv +33 -33
- teradataml/data/cat_table.csv +24 -24
- teradataml/data/ccm_example.json +31 -31
- teradataml/data/ccm_input.csv +91 -91
- teradataml/data/ccm_input2.csv +13 -13
- teradataml/data/ccmexample.csv +101 -101
- teradataml/data/ccmprepare_example.json +8 -8
- teradataml/data/ccmprepare_input.csv +91 -91
- teradataml/data/cfilter_example.json +12 -12
- teradataml/data/changepointdetection_example.json +18 -18
- teradataml/data/changepointdetectionrt_example.json +8 -8
- teradataml/data/chi_sq.csv +2 -2
- teradataml/data/churn_data.csv +14 -14
- teradataml/data/churn_emission.csv +35 -35
- teradataml/data/churn_initial.csv +3 -3
- teradataml/data/churn_state_transition.csv +5 -5
- teradataml/data/citedges_2.csv +745 -745
- teradataml/data/citvertices_2.csv +1210 -1210
- teradataml/data/clicks2.csv +16 -16
- teradataml/data/clickstream.csv +12 -12
- teradataml/data/clickstream1.csv +11 -11
- teradataml/data/closeness_example.json +15 -15
- teradataml/data/complaints.csv +21 -21
- teradataml/data/complaints_mini.csv +3 -3
- teradataml/data/complaints_testtoken.csv +224 -224
- teradataml/data/complaints_tokens_test.csv +353 -353
- teradataml/data/complaints_traintoken.csv +472 -472
- teradataml/data/computers_category.csv +1001 -1001
- teradataml/data/computers_test1.csv +1252 -1252
- teradataml/data/computers_train1.csv +5009 -5009
- teradataml/data/computers_train1_clustered.csv +5009 -5009
- teradataml/data/confusionmatrix_example.json +9 -9
- teradataml/data/conversion_event_table.csv +3 -3
- teradataml/data/corr_input.csv +17 -17
- teradataml/data/correlation_example.json +11 -11
- teradataml/data/coxhazardratio_example.json +39 -39
- teradataml/data/coxph_example.json +15 -15
- teradataml/data/coxsurvival_example.json +28 -28
- teradataml/data/cpt.csv +41 -41
- teradataml/data/credit_ex_merged.csv +45 -45
- teradataml/data/customer_loyalty.csv +301 -301
- teradataml/data/customer_loyalty_newseq.csv +31 -31
- teradataml/data/dataframe_example.json +146 -146
- teradataml/data/decisionforest_example.json +37 -37
- teradataml/data/decisionforestpredict_example.json +38 -38
- teradataml/data/decisiontree_example.json +21 -21
- teradataml/data/decisiontreepredict_example.json +45 -45
- teradataml/data/dfft2_size4_real.csv +17 -17
- teradataml/data/dfft2_test_matrix16.csv +17 -17
- teradataml/data/dfft2conv_real_4_4.csv +65 -65
- teradataml/data/diabetes.csv +443 -443
- teradataml/data/diabetes_test.csv +89 -89
- teradataml/data/dict_table.csv +5 -5
- teradataml/data/docperterm_table.csv +4 -4
- teradataml/data/docs/__init__.py +1 -1
- teradataml/data/docs/byom/docs/DataRobotPredict.py +180 -180
- teradataml/data/docs/byom/docs/DataikuPredict.py +177 -177
- teradataml/data/docs/byom/docs/H2OPredict.py +324 -324
- teradataml/data/docs/byom/docs/ONNXPredict.py +283 -283
- teradataml/data/docs/byom/docs/PMMLPredict.py +277 -277
- teradataml/data/docs/sqle/docs_17_10/Antiselect.py +82 -82
- teradataml/data/docs/sqle/docs_17_10/Attribution.py +199 -199
- teradataml/data/docs/sqle/docs_17_10/BincodeFit.py +171 -171
- teradataml/data/docs/sqle/docs_17_10/BincodeTransform.py +131 -130
- teradataml/data/docs/sqle/docs_17_10/CategoricalSummary.py +86 -86
- teradataml/data/docs/sqle/docs_17_10/ChiSq.py +90 -90
- teradataml/data/docs/sqle/docs_17_10/ColumnSummary.py +85 -85
- teradataml/data/docs/sqle/docs_17_10/ConvertTo.py +95 -95
- teradataml/data/docs/sqle/docs_17_10/DecisionForestPredict.py +139 -139
- teradataml/data/docs/sqle/docs_17_10/DecisionTreePredict.py +151 -151
- teradataml/data/docs/sqle/docs_17_10/FTest.py +160 -160
- teradataml/data/docs/sqle/docs_17_10/FillRowId.py +82 -82
- teradataml/data/docs/sqle/docs_17_10/Fit.py +87 -87
- teradataml/data/docs/sqle/docs_17_10/GLMPredict.py +144 -144
- teradataml/data/docs/sqle/docs_17_10/GetRowsWithMissingValues.py +84 -84
- teradataml/data/docs/sqle/docs_17_10/GetRowsWithoutMissingValues.py +81 -81
- teradataml/data/docs/sqle/docs_17_10/Histogram.py +164 -164
- teradataml/data/docs/sqle/docs_17_10/MovingAverage.py +134 -134
- teradataml/data/docs/sqle/docs_17_10/NGramSplitter.py +208 -208
- teradataml/data/docs/sqle/docs_17_10/NPath.py +265 -265
- teradataml/data/docs/sqle/docs_17_10/NaiveBayesPredict.py +116 -116
- teradataml/data/docs/sqle/docs_17_10/NaiveBayesTextClassifierPredict.py +176 -176
- teradataml/data/docs/sqle/docs_17_10/NumApply.py +147 -147
- teradataml/data/docs/sqle/docs_17_10/OneHotEncodingFit.py +132 -132
- teradataml/data/docs/sqle/docs_17_10/OneHotEncodingTransform.py +103 -103
- teradataml/data/docs/sqle/docs_17_10/OutlierFilterFit.py +165 -165
- teradataml/data/docs/sqle/docs_17_10/OutlierFilterTransform.py +101 -101
- teradataml/data/docs/sqle/docs_17_10/Pack.py +128 -128
- teradataml/data/docs/sqle/docs_17_10/PolynomialFeaturesFit.py +111 -111
- teradataml/data/docs/sqle/docs_17_10/PolynomialFeaturesTransform.py +102 -102
- teradataml/data/docs/sqle/docs_17_10/QQNorm.py +104 -104
- teradataml/data/docs/sqle/docs_17_10/RoundColumns.py +109 -109
- teradataml/data/docs/sqle/docs_17_10/RowNormalizeFit.py +117 -117
- teradataml/data/docs/sqle/docs_17_10/RowNormalizeTransform.py +99 -98
- teradataml/data/docs/sqle/docs_17_10/SVMSparsePredict.py +152 -152
- teradataml/data/docs/sqle/docs_17_10/ScaleFit.py +197 -197
- teradataml/data/docs/sqle/docs_17_10/ScaleTransform.py +99 -98
- teradataml/data/docs/sqle/docs_17_10/Sessionize.py +113 -113
- teradataml/data/docs/sqle/docs_17_10/SimpleImputeFit.py +116 -116
- teradataml/data/docs/sqle/docs_17_10/SimpleImputeTransform.py +98 -98
- teradataml/data/docs/sqle/docs_17_10/StrApply.py +187 -187
- teradataml/data/docs/sqle/docs_17_10/StringSimilarity.py +145 -145
- teradataml/data/docs/sqle/docs_17_10/Transform.py +105 -104
- teradataml/data/docs/sqle/docs_17_10/UnivariateStatistics.py +141 -141
- teradataml/data/docs/sqle/docs_17_10/Unpack.py +214 -214
- teradataml/data/docs/sqle/docs_17_10/WhichMax.py +83 -83
- teradataml/data/docs/sqle/docs_17_10/WhichMin.py +83 -83
- teradataml/data/docs/sqle/docs_17_10/ZTest.py +155 -155
- teradataml/data/docs/sqle/docs_17_20/ANOVA.py +126 -126
- teradataml/data/docs/sqle/docs_17_20/Antiselect.py +82 -82
- teradataml/data/docs/sqle/docs_17_20/Attribution.py +200 -200
- teradataml/data/docs/sqle/docs_17_20/BincodeFit.py +171 -171
- teradataml/data/docs/sqle/docs_17_20/BincodeTransform.py +139 -138
- teradataml/data/docs/sqle/docs_17_20/CategoricalSummary.py +86 -86
- teradataml/data/docs/sqle/docs_17_20/ChiSq.py +90 -90
- teradataml/data/docs/sqle/docs_17_20/ClassificationEvaluator.py +166 -166
- teradataml/data/docs/sqle/docs_17_20/ColumnSummary.py +85 -85
- teradataml/data/docs/sqle/docs_17_20/ColumnTransformer.py +243 -243
- teradataml/data/docs/sqle/docs_17_20/ConvertTo.py +113 -113
- teradataml/data/docs/sqle/docs_17_20/DecisionForest.py +279 -279
- teradataml/data/docs/sqle/docs_17_20/DecisionForestPredict.py +144 -144
- teradataml/data/docs/sqle/docs_17_20/DecisionTreePredict.py +135 -135
- teradataml/data/docs/sqle/docs_17_20/FTest.py +160 -160
- teradataml/data/docs/sqle/docs_17_20/FillRowId.py +82 -82
- teradataml/data/docs/sqle/docs_17_20/Fit.py +87 -87
- teradataml/data/docs/sqle/docs_17_20/GLM.py +380 -380
- teradataml/data/docs/sqle/docs_17_20/GLMPerSegment.py +414 -414
- teradataml/data/docs/sqle/docs_17_20/GLMPredict.py +144 -144
- teradataml/data/docs/sqle/docs_17_20/GLMPredictPerSegment.py +233 -234
- teradataml/data/docs/sqle/docs_17_20/GetFutileColumns.py +123 -123
- teradataml/data/docs/sqle/docs_17_20/GetRowsWithMissingValues.py +108 -108
- teradataml/data/docs/sqle/docs_17_20/GetRowsWithoutMissingValues.py +105 -105
- teradataml/data/docs/sqle/docs_17_20/Histogram.py +223 -223
- teradataml/data/docs/sqle/docs_17_20/KMeans.py +204 -204
- teradataml/data/docs/sqle/docs_17_20/KMeansPredict.py +144 -143
- teradataml/data/docs/sqle/docs_17_20/KNN.py +214 -214
- teradataml/data/docs/sqle/docs_17_20/MovingAverage.py +134 -134
- teradataml/data/docs/sqle/docs_17_20/NGramSplitter.py +208 -208
- teradataml/data/docs/sqle/docs_17_20/NPath.py +265 -265
- teradataml/data/docs/sqle/docs_17_20/NaiveBayesPredict.py +116 -116
- teradataml/data/docs/sqle/docs_17_20/NaiveBayesTextClassifierPredict.py +177 -176
- teradataml/data/docs/sqle/docs_17_20/NaiveBayesTextClassifierTrainer.py +126 -126
- teradataml/data/docs/sqle/docs_17_20/NonLinearCombineFit.py +117 -117
- teradataml/data/docs/sqle/docs_17_20/NonLinearCombineTransform.py +112 -112
- teradataml/data/docs/sqle/docs_17_20/NumApply.py +147 -147
- teradataml/data/docs/sqle/docs_17_20/OneClassSVM.py +307 -307
- teradataml/data/docs/sqle/docs_17_20/OneClassSVMPredict.py +185 -184
- teradataml/data/docs/sqle/docs_17_20/OneHotEncodingFit.py +225 -225
- teradataml/data/docs/sqle/docs_17_20/OneHotEncodingTransform.py +115 -115
- teradataml/data/docs/sqle/docs_17_20/OrdinalEncodingFit.py +219 -219
- teradataml/data/docs/sqle/docs_17_20/OrdinalEncodingTransform.py +127 -127
- teradataml/data/docs/sqle/docs_17_20/OutlierFilterFit.py +189 -189
- teradataml/data/docs/sqle/docs_17_20/OutlierFilterTransform.py +117 -112
- teradataml/data/docs/sqle/docs_17_20/Pack.py +128 -128
- teradataml/data/docs/sqle/docs_17_20/PolynomialFeaturesFit.py +111 -111
- teradataml/data/docs/sqle/docs_17_20/PolynomialFeaturesTransform.py +112 -111
- teradataml/data/docs/sqle/docs_17_20/QQNorm.py +104 -104
- teradataml/data/docs/sqle/docs_17_20/ROC.py +163 -163
- teradataml/data/docs/sqle/docs_17_20/RandomProjectionFit.py +154 -154
- teradataml/data/docs/sqle/docs_17_20/RandomProjectionMinComponents.py +106 -106
- teradataml/data/docs/sqle/docs_17_20/RandomProjectionTransform.py +120 -120
- teradataml/data/docs/sqle/docs_17_20/RegressionEvaluator.py +211 -211
- teradataml/data/docs/sqle/docs_17_20/RoundColumns.py +108 -108
- teradataml/data/docs/sqle/docs_17_20/RowNormalizeFit.py +117 -117
- teradataml/data/docs/sqle/docs_17_20/RowNormalizeTransform.py +111 -110
- teradataml/data/docs/sqle/docs_17_20/SVM.py +413 -413
- teradataml/data/docs/sqle/docs_17_20/SVMPredict.py +202 -202
- teradataml/data/docs/sqle/docs_17_20/SVMSparsePredict.py +152 -152
- teradataml/data/docs/sqle/docs_17_20/ScaleFit.py +197 -197
- teradataml/data/docs/sqle/docs_17_20/ScaleTransform.py +110 -109
- teradataml/data/docs/sqle/docs_17_20/SentimentExtractor.py +206 -206
- teradataml/data/docs/sqle/docs_17_20/Sessionize.py +113 -113
- teradataml/data/docs/sqle/docs_17_20/Silhouette.py +152 -152
- teradataml/data/docs/sqle/docs_17_20/SimpleImputeFit.py +116 -116
- teradataml/data/docs/sqle/docs_17_20/SimpleImputeTransform.py +109 -108
- teradataml/data/docs/sqle/docs_17_20/StrApply.py +187 -187
- teradataml/data/docs/sqle/docs_17_20/StringSimilarity.py +145 -145
- teradataml/data/docs/sqle/docs_17_20/TDDecisionForestPredict.py +207 -207
- teradataml/data/docs/sqle/docs_17_20/TDGLMPredict.py +171 -171
- teradataml/data/docs/sqle/docs_17_20/TargetEncodingFit.py +266 -266
- teradataml/data/docs/sqle/docs_17_20/TargetEncodingTransform.py +141 -140
- teradataml/data/docs/sqle/docs_17_20/TextParser.py +172 -172
- teradataml/data/docs/sqle/docs_17_20/TrainTestSplit.py +159 -159
- teradataml/data/docs/sqle/docs_17_20/Transform.py +123 -123
- teradataml/data/docs/sqle/docs_17_20/UnivariateStatistics.py +141 -141
- teradataml/data/docs/sqle/docs_17_20/Unpack.py +214 -214
- teradataml/data/docs/sqle/docs_17_20/VectorDistance.py +168 -168
- teradataml/data/docs/sqle/docs_17_20/WhichMax.py +83 -83
- teradataml/data/docs/sqle/docs_17_20/WhichMin.py +83 -83
- teradataml/data/docs/sqle/docs_17_20/WordEmbeddings.py +236 -236
- teradataml/data/docs/sqle/docs_17_20/XGBoost.py +353 -353
- teradataml/data/docs/sqle/docs_17_20/XGBoostPredict.py +275 -275
- teradataml/data/docs/sqle/docs_17_20/ZTest.py +155 -155
- teradataml/data/docs/tableoperator/docs_17_00/ReadNOS.py +429 -429
- teradataml/data/docs/tableoperator/docs_17_05/ReadNOS.py +429 -429
- teradataml/data/docs/tableoperator/docs_17_05/WriteNOS.py +347 -347
- teradataml/data/docs/tableoperator/docs_17_10/ReadNOS.py +428 -428
- teradataml/data/docs/tableoperator/docs_17_10/WriteNOS.py +347 -347
- teradataml/data/docs/tableoperator/docs_17_20/ReadNOS.py +439 -439
- teradataml/data/docs/tableoperator/docs_17_20/WriteNOS.py +386 -386
- teradataml/data/docs/uaf/docs_17_20/ACF.py +195 -195
- teradataml/data/docs/uaf/docs_17_20/ArimaEstimate.py +369 -369
- teradataml/data/docs/uaf/docs_17_20/ArimaForecast.py +142 -142
- teradataml/data/docs/uaf/docs_17_20/ArimaValidate.py +159 -159
- teradataml/data/docs/uaf/docs_17_20/BinaryMatrixOp.py +247 -247
- teradataml/data/docs/uaf/docs_17_20/BinarySeriesOp.py +252 -252
- teradataml/data/docs/uaf/docs_17_20/BreuschGodfrey.py +177 -177
- teradataml/data/docs/uaf/docs_17_20/BreuschPaganGodfrey.py +174 -174
- teradataml/data/docs/uaf/docs_17_20/Convolve.py +226 -226
- teradataml/data/docs/uaf/docs_17_20/Convolve2.py +214 -214
- teradataml/data/docs/uaf/docs_17_20/CumulPeriodogram.py +183 -183
- teradataml/data/docs/uaf/docs_17_20/DFFT.py +203 -203
- teradataml/data/docs/uaf/docs_17_20/DFFT2.py +216 -216
- teradataml/data/docs/uaf/docs_17_20/DFFT2Conv.py +215 -215
- teradataml/data/docs/uaf/docs_17_20/DFFTConv.py +191 -191
- teradataml/data/docs/uaf/docs_17_20/DTW.py +179 -179
- teradataml/data/docs/uaf/docs_17_20/DickeyFuller.py +144 -144
- teradataml/data/docs/uaf/docs_17_20/DurbinWatson.py +183 -183
- teradataml/data/docs/uaf/docs_17_20/ExtractResults.py +184 -184
- teradataml/data/docs/uaf/docs_17_20/FitMetrics.py +172 -172
- teradataml/data/docs/uaf/docs_17_20/GenseriesFormula.py +205 -205
- teradataml/data/docs/uaf/docs_17_20/GenseriesSinusoids.py +142 -142
- teradataml/data/docs/uaf/docs_17_20/HoltWintersForecaster.py +258 -258
- teradataml/data/docs/uaf/docs_17_20/IDFFT.py +164 -164
- teradataml/data/docs/uaf/docs_17_20/IDFFT2.py +198 -198
- teradataml/data/docs/uaf/docs_17_20/InputValidator.py +120 -120
- teradataml/data/docs/uaf/docs_17_20/LineSpec.py +155 -155
- teradataml/data/docs/uaf/docs_17_20/LinearRegr.py +214 -214
- teradataml/data/docs/uaf/docs_17_20/MAMean.py +173 -173
- teradataml/data/docs/uaf/docs_17_20/MInfo.py +133 -133
- teradataml/data/docs/uaf/docs_17_20/MatrixMultiply.py +135 -135
- teradataml/data/docs/uaf/docs_17_20/MultivarRegr.py +190 -190
- teradataml/data/docs/uaf/docs_17_20/PACF.py +158 -158
- teradataml/data/docs/uaf/docs_17_20/Portman.py +216 -216
- teradataml/data/docs/uaf/docs_17_20/PowerTransform.py +154 -154
- teradataml/data/docs/uaf/docs_17_20/Resample.py +228 -228
- teradataml/data/docs/uaf/docs_17_20/SInfo.py +122 -122
- teradataml/data/docs/uaf/docs_17_20/SeasonalNormalize.py +165 -165
- teradataml/data/docs/uaf/docs_17_20/SelectionCriteria.py +173 -173
- teradataml/data/docs/uaf/docs_17_20/SignifPeriodicities.py +170 -170
- teradataml/data/docs/uaf/docs_17_20/SignifResidmean.py +163 -163
- teradataml/data/docs/uaf/docs_17_20/SimpleExp.py +179 -179
- teradataml/data/docs/uaf/docs_17_20/Smoothma.py +207 -207
- teradataml/data/docs/uaf/docs_17_20/TrackingOp.py +150 -150
- teradataml/data/docs/uaf/docs_17_20/UNDIFF.py +171 -171
- teradataml/data/docs/uaf/docs_17_20/Unnormalize.py +201 -201
- teradataml/data/docs/uaf/docs_17_20/WhitesGeneral.py +169 -169
- teradataml/data/dtw_example.json +17 -17
- teradataml/data/dtw_t1.csv +11 -11
- teradataml/data/dtw_t2.csv +4 -4
- teradataml/data/dwt2d_example.json +15 -15
- teradataml/data/dwt_example.json +14 -14
- teradataml/data/dwt_filter_dim.csv +5 -5
- teradataml/data/emission.csv +9 -9
- teradataml/data/emp_table_by_dept.csv +19 -19
- teradataml/data/employee_info.csv +4 -4
- teradataml/data/employee_table.csv +6 -6
- teradataml/data/excluding_event_table.csv +2 -2
- teradataml/data/finance_data.csv +6 -6
- teradataml/data/finance_data2.csv +61 -61
- teradataml/data/finance_data3.csv +93 -93
- teradataml/data/fish.csv +160 -0
- teradataml/data/fm_blood2ageandweight.csv +26 -26
- teradataml/data/fmeasure_example.json +11 -11
- teradataml/data/followers_leaders.csv +10 -10
- teradataml/data/fpgrowth_example.json +12 -12
- teradataml/data/frequentpaths_example.json +29 -29
- teradataml/data/friends.csv +9 -9
- teradataml/data/fs_input.csv +33 -33
- teradataml/data/fs_input1.csv +33 -33
- teradataml/data/genData.csv +513 -513
- teradataml/data/geodataframe_example.json +39 -39
- teradataml/data/glass_types.csv +215 -0
- teradataml/data/glm_admissions_model.csv +12 -12
- teradataml/data/glm_example.json +29 -29
- teradataml/data/glml1l2_example.json +28 -28
- teradataml/data/glml1l2predict_example.json +54 -54
- teradataml/data/glmpredict_example.json +54 -54
- teradataml/data/gq_t1.csv +21 -21
- teradataml/data/hconvolve_complex_right.csv +5 -5
- teradataml/data/hconvolve_complex_rightmulti.csv +5 -5
- teradataml/data/histogram_example.json +11 -11
- teradataml/data/hmmdecoder_example.json +78 -78
- teradataml/data/hmmevaluator_example.json +24 -24
- teradataml/data/hmmsupervised_example.json +10 -10
- teradataml/data/hmmunsupervised_example.json +7 -7
- teradataml/data/house_values.csv +12 -12
- teradataml/data/house_values2.csv +13 -13
- teradataml/data/housing_cat.csv +7 -7
- teradataml/data/housing_data.csv +9 -9
- teradataml/data/housing_test.csv +47 -47
- teradataml/data/housing_test_binary.csv +47 -47
- teradataml/data/housing_train.csv +493 -493
- teradataml/data/housing_train_attribute.csv +4 -4
- teradataml/data/housing_train_binary.csv +437 -437
- teradataml/data/housing_train_parameter.csv +2 -2
- teradataml/data/housing_train_response.csv +493 -493
- teradataml/data/ibm_stock.csv +370 -370
- teradataml/data/ibm_stock1.csv +370 -370
- teradataml/data/identitymatch_example.json +21 -21
- teradataml/data/idf_table.csv +4 -4
- teradataml/data/impressions.csv +101 -101
- teradataml/data/inflation.csv +21 -21
- teradataml/data/initial.csv +3 -3
- teradataml/data/insect_sprays.csv +12 -12
- teradataml/data/insurance.csv +1339 -1339
- teradataml/data/interpolator_example.json +12 -12
- teradataml/data/iris_altinput.csv +481 -481
- teradataml/data/iris_attribute_output.csv +8 -8
- teradataml/data/iris_attribute_test.csv +121 -121
- teradataml/data/iris_attribute_train.csv +481 -481
- teradataml/data/iris_category_expect_predict.csv +31 -31
- teradataml/data/iris_data.csv +151 -0
- teradataml/data/iris_input.csv +151 -151
- teradataml/data/iris_response_train.csv +121 -121
- teradataml/data/iris_test.csv +31 -31
- teradataml/data/iris_train.csv +121 -121
- teradataml/data/join_table1.csv +4 -4
- teradataml/data/join_table2.csv +4 -4
- teradataml/data/jsons/anly_function_name.json +6 -6
- teradataml/data/jsons/byom/dataikupredict.json +147 -147
- teradataml/data/jsons/byom/datarobotpredict.json +146 -146
- teradataml/data/jsons/byom/h2opredict.json +194 -194
- teradataml/data/jsons/byom/onnxpredict.json +186 -186
- teradataml/data/jsons/byom/pmmlpredict.json +146 -146
- teradataml/data/jsons/paired_functions.json +435 -435
- teradataml/data/jsons/sqle/16.20/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/16.20/Attribution.json +249 -249
- teradataml/data/jsons/sqle/16.20/DecisionForestPredict.json +156 -156
- teradataml/data/jsons/sqle/16.20/DecisionTreePredict.json +170 -170
- teradataml/data/jsons/sqle/16.20/GLMPredict.json +122 -122
- teradataml/data/jsons/sqle/16.20/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/16.20/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/16.20/NaiveBayesPredict.json +136 -136
- teradataml/data/jsons/sqle/16.20/NaiveBayesTextClassifierPredict.json +235 -235
- teradataml/data/jsons/sqle/16.20/Pack.json +98 -98
- teradataml/data/jsons/sqle/16.20/SVMSparsePredict.json +162 -162
- teradataml/data/jsons/sqle/16.20/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/16.20/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/16.20/Unpack.json +166 -166
- teradataml/data/jsons/sqle/16.20/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.00/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.00/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.00/DecisionForestPredict.json +156 -156
- teradataml/data/jsons/sqle/17.00/DecisionTreePredict.json +170 -170
- teradataml/data/jsons/sqle/17.00/GLMPredict.json +122 -122
- teradataml/data/jsons/sqle/17.00/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/17.00/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.00/NaiveBayesPredict.json +136 -136
- teradataml/data/jsons/sqle/17.00/NaiveBayesTextClassifierPredict.json +235 -235
- teradataml/data/jsons/sqle/17.00/Pack.json +98 -98
- teradataml/data/jsons/sqle/17.00/SVMSparsePredict.json +162 -162
- teradataml/data/jsons/sqle/17.00/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.00/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.00/Unpack.json +166 -166
- teradataml/data/jsons/sqle/17.00/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.05/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.05/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.05/DecisionForestPredict.json +156 -156
- teradataml/data/jsons/sqle/17.05/DecisionTreePredict.json +170 -170
- teradataml/data/jsons/sqle/17.05/GLMPredict.json +122 -122
- teradataml/data/jsons/sqle/17.05/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/17.05/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.05/NaiveBayesPredict.json +136 -136
- teradataml/data/jsons/sqle/17.05/NaiveBayesTextClassifierPredict.json +235 -235
- teradataml/data/jsons/sqle/17.05/Pack.json +98 -98
- teradataml/data/jsons/sqle/17.05/SVMSparsePredict.json +162 -162
- teradataml/data/jsons/sqle/17.05/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.05/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.05/Unpack.json +166 -166
- teradataml/data/jsons/sqle/17.05/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.10/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.10/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.10/DecisionForestPredict.json +185 -185
- teradataml/data/jsons/sqle/17.10/DecisionTreePredict.json +171 -171
- teradataml/data/jsons/sqle/17.10/GLMPredict.json +151 -151
- teradataml/data/jsons/sqle/17.10/MovingAverage.json +368 -368
- teradataml/data/jsons/sqle/17.10/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.10/NaiveBayesPredict.json +149 -149
- teradataml/data/jsons/sqle/17.10/NaiveBayesTextClassifierPredict.json +288 -288
- teradataml/data/jsons/sqle/17.10/Pack.json +133 -133
- teradataml/data/jsons/sqle/17.10/SVMSparsePredict.json +193 -193
- teradataml/data/jsons/sqle/17.10/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.10/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.10/TD_BinCodeFit.json +239 -239
- teradataml/data/jsons/sqle/17.10/TD_BinCodeTransform.json +70 -70
- teradataml/data/jsons/sqle/17.10/TD_CategoricalSummary.json +53 -53
- teradataml/data/jsons/sqle/17.10/TD_Chisq.json +67 -67
- teradataml/data/jsons/sqle/17.10/TD_ColumnSummary.json +53 -53
- teradataml/data/jsons/sqle/17.10/TD_ConvertTo.json +68 -68
- teradataml/data/jsons/sqle/17.10/TD_FTest.json +187 -187
- teradataml/data/jsons/sqle/17.10/TD_FillRowID.json +51 -51
- teradataml/data/jsons/sqle/17.10/TD_FunctionFit.json +46 -46
- teradataml/data/jsons/sqle/17.10/TD_FunctionTransform.json +72 -71
- teradataml/data/jsons/sqle/17.10/TD_GetRowsWithMissingValues.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_GetRowsWithoutMissingValues.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_Histogram.json +132 -132
- teradataml/data/jsons/sqle/17.10/TD_NumApply.json +147 -147
- teradataml/data/jsons/sqle/17.10/TD_OneHotEncodingFit.json +182 -182
- teradataml/data/jsons/sqle/17.10/TD_OneHotEncodingTransform.json +65 -64
- teradataml/data/jsons/sqle/17.10/TD_OutlierFilterFit.json +196 -196
- teradataml/data/jsons/sqle/17.10/TD_OutlierFilterTransform.json +48 -47
- teradataml/data/jsons/sqle/17.10/TD_PolynomialFeaturesFit.json +114 -114
- teradataml/data/jsons/sqle/17.10/TD_PolynomialFeaturesTransform.json +72 -71
- teradataml/data/jsons/sqle/17.10/TD_QQNorm.json +111 -111
- teradataml/data/jsons/sqle/17.10/TD_RoundColumns.json +93 -93
- teradataml/data/jsons/sqle/17.10/TD_RowNormalizeFit.json +127 -127
- teradataml/data/jsons/sqle/17.10/TD_RowNormalizeTransform.json +70 -69
- teradataml/data/jsons/sqle/17.10/TD_ScaleFit.json +156 -156
- teradataml/data/jsons/sqle/17.10/TD_ScaleTransform.json +70 -69
- teradataml/data/jsons/sqle/17.10/TD_SimpleImputeFit.json +147 -147
- teradataml/data/jsons/sqle/17.10/TD_SimpleImputeTransform.json +48 -47
- teradataml/data/jsons/sqle/17.10/TD_StrApply.json +240 -240
- teradataml/data/jsons/sqle/17.10/TD_UnivariateStatistics.json +118 -118
- teradataml/data/jsons/sqle/17.10/TD_WhichMax.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_WhichMin.json +52 -52
- teradataml/data/jsons/sqle/17.10/TD_ZTest.json +171 -171
- teradataml/data/jsons/sqle/17.10/Unpack.json +188 -188
- teradataml/data/jsons/sqle/17.10/nPath.json +269 -269
- teradataml/data/jsons/sqle/17.20/Antiselect.json +56 -56
- teradataml/data/jsons/sqle/17.20/Attribution.json +249 -249
- teradataml/data/jsons/sqle/17.20/DecisionForestPredict.json +185 -185
- teradataml/data/jsons/sqle/17.20/DecisionTreePredict.json +172 -172
- teradataml/data/jsons/sqle/17.20/GLMPredict.json +151 -151
- teradataml/data/jsons/sqle/17.20/MovingAverage.json +367 -367
- teradataml/data/jsons/sqle/17.20/NGramSplitter.json +239 -239
- teradataml/data/jsons/sqle/17.20/NaiveBayesPredict.json +149 -149
- teradataml/data/jsons/sqle/17.20/NaiveBayesTextClassifierPredict.json +287 -287
- teradataml/data/jsons/sqle/17.20/Pack.json +133 -133
- teradataml/data/jsons/sqle/17.20/SVMSparsePredict.json +192 -192
- teradataml/data/jsons/sqle/17.20/Sessionize.json +105 -105
- teradataml/data/jsons/sqle/17.20/StringSimilarity.json +86 -86
- teradataml/data/jsons/sqle/17.20/TD_ANOVA.json +76 -76
- teradataml/data/jsons/sqle/17.20/TD_BinCodeFit.json +239 -239
- teradataml/data/jsons/sqle/17.20/TD_BinCodeTransform.json +71 -71
- teradataml/data/jsons/sqle/17.20/TD_CategoricalSummary.json +53 -53
- teradataml/data/jsons/sqle/17.20/TD_Chisq.json +67 -67
- teradataml/data/jsons/sqle/17.20/TD_ClassificationEvaluator.json +145 -145
- teradataml/data/jsons/sqle/17.20/TD_ColumnSummary.json +53 -53
- teradataml/data/jsons/sqle/17.20/TD_ColumnTransformer.json +218 -218
- teradataml/data/jsons/sqle/17.20/TD_ConvertTo.json +92 -92
- teradataml/data/jsons/sqle/17.20/TD_DecisionForest.json +259 -259
- teradataml/data/jsons/sqle/17.20/TD_DecisionForestPredict.json +139 -139
- teradataml/data/jsons/sqle/17.20/TD_FTest.json +186 -186
- teradataml/data/jsons/sqle/17.20/TD_FillRowID.json +52 -52
- teradataml/data/jsons/sqle/17.20/TD_FunctionFit.json +46 -46
- teradataml/data/jsons/sqle/17.20/TD_FunctionTransform.json +72 -72
- teradataml/data/jsons/sqle/17.20/TD_GLM.json +431 -431
- teradataml/data/jsons/sqle/17.20/TD_GLMPREDICT.json +125 -125
- teradataml/data/jsons/sqle/17.20/TD_GLMPerSegment.json +411 -411
- teradataml/data/jsons/sqle/17.20/TD_GLMPredictPerSegment.json +146 -146
- teradataml/data/jsons/sqle/17.20/TD_GetFutileColumns.json +91 -91
- teradataml/data/jsons/sqle/17.20/TD_GetRowsWithMissingValues.json +76 -76
- teradataml/data/jsons/sqle/17.20/TD_GetRowsWithoutMissingValues.json +76 -76
- teradataml/data/jsons/sqle/17.20/TD_Histogram.json +152 -152
- teradataml/data/jsons/sqle/17.20/TD_KMeans.json +211 -211
- teradataml/data/jsons/sqle/17.20/TD_KMeansPredict.json +86 -86
- teradataml/data/jsons/sqle/17.20/TD_KNN.json +262 -262
- teradataml/data/jsons/sqle/17.20/TD_NaiveBayesTextClassifierTrainer.json +137 -137
- teradataml/data/jsons/sqle/17.20/TD_NonLinearCombineFit.json +101 -101
- teradataml/data/jsons/sqle/17.20/TD_NonLinearCombineTransform.json +71 -71
- teradataml/data/jsons/sqle/17.20/TD_NumApply.json +147 -147
- teradataml/data/jsons/sqle/17.20/TD_OneClassSVM.json +315 -315
- teradataml/data/jsons/sqle/17.20/TD_OneClassSVMPredict.json +123 -123
- teradataml/data/jsons/sqle/17.20/TD_OneHotEncodingFit.json +271 -271
- teradataml/data/jsons/sqle/17.20/TD_OneHotEncodingTransform.json +65 -65
- teradataml/data/jsons/sqle/17.20/TD_OrdinalEncodingFit.json +229 -229
- teradataml/data/jsons/sqle/17.20/TD_OrdinalEncodingTransform.json +75 -75
- teradataml/data/jsons/sqle/17.20/TD_OutlierFilterFit.json +217 -217
- teradataml/data/jsons/sqle/17.20/TD_OutlierFilterTransform.json +48 -48
- teradataml/data/jsons/sqle/17.20/TD_PolynomialFeaturesFit.json +114 -114
- teradataml/data/jsons/sqle/17.20/TD_PolynomialFeaturesTransform.json +72 -72
- teradataml/data/jsons/sqle/17.20/TD_QQNorm.json +111 -111
- teradataml/data/jsons/sqle/17.20/TD_ROC.json +177 -177
- teradataml/data/jsons/sqle/17.20/TD_RandomProjectionFit.json +178 -178
- teradataml/data/jsons/sqle/17.20/TD_RandomProjectionMinComponents.json +73 -73
- teradataml/data/jsons/sqle/17.20/TD_RandomProjectionTransform.json +74 -74
- teradataml/data/jsons/sqle/17.20/TD_RegressionEvaluator.json +137 -137
- teradataml/data/jsons/sqle/17.20/TD_RoundColumns.json +93 -93
- teradataml/data/jsons/sqle/17.20/TD_RowNormalizeFit.json +127 -127
- teradataml/data/jsons/sqle/17.20/TD_RowNormalizeTransform.json +70 -70
- teradataml/data/jsons/sqle/17.20/TD_SVM.json +389 -389
- teradataml/data/jsons/sqle/17.20/TD_SVMPredict.json +124 -124
- teradataml/data/jsons/sqle/17.20/TD_ScaleFit.json +156 -156
- teradataml/data/jsons/sqle/17.20/TD_ScaleTransform.json +70 -70
- teradataml/data/jsons/sqle/17.20/TD_SentimentExtractor.json +193 -193
- teradataml/data/jsons/sqle/17.20/TD_Silhouette.json +142 -142
- teradataml/data/jsons/sqle/17.20/TD_SimpleImputeFit.json +147 -147
- teradataml/data/jsons/sqle/17.20/TD_SimpleImputeTransform.json +48 -48
- teradataml/data/jsons/sqle/17.20/TD_StrApply.json +240 -240
- teradataml/data/jsons/sqle/17.20/TD_TargetEncodingFit.json +248 -248
- teradataml/data/jsons/sqle/17.20/TD_TargetEncodingTransform.json +75 -75
- teradataml/data/jsons/sqle/17.20/TD_TextParser.json +192 -192
- teradataml/data/jsons/sqle/17.20/TD_TrainTestSplit.json +142 -142
- teradataml/data/jsons/sqle/17.20/TD_UnivariateStatistics.json +117 -117
- teradataml/data/jsons/sqle/17.20/TD_VectorDistance.json +182 -182
- teradataml/data/jsons/sqle/17.20/TD_WhichMax.json +52 -52
- teradataml/data/jsons/sqle/17.20/TD_WhichMin.json +52 -52
- teradataml/data/jsons/sqle/17.20/TD_WordEmbeddings.json +241 -241
- teradataml/data/jsons/sqle/17.20/TD_XGBoost.json +312 -312
- teradataml/data/jsons/sqle/17.20/TD_XGBoostPredict.json +182 -182
- teradataml/data/jsons/sqle/17.20/TD_ZTest.json +170 -170
- teradataml/data/jsons/sqle/17.20/Unpack.json +188 -188
- teradataml/data/jsons/sqle/17.20/nPath.json +269 -269
- teradataml/data/jsons/tableoperator/17.00/read_nos.json +197 -197
- teradataml/data/jsons/tableoperator/17.05/read_nos.json +197 -197
- teradataml/data/jsons/tableoperator/17.05/write_nos.json +194 -194
- teradataml/data/jsons/tableoperator/17.10/read_nos.json +183 -183
- teradataml/data/jsons/tableoperator/17.10/write_nos.json +194 -194
- teradataml/data/jsons/tableoperator/17.20/read_nos.json +182 -182
- teradataml/data/jsons/tableoperator/17.20/write_nos.json +223 -223
- teradataml/data/jsons/uaf/17.20/TD_ACF.json +149 -149
- teradataml/data/jsons/uaf/17.20/TD_ARIMAESTIMATE.json +409 -409
- teradataml/data/jsons/uaf/17.20/TD_ARIMAFORECAST.json +79 -79
- teradataml/data/jsons/uaf/17.20/TD_ARIMAVALIDATE.json +151 -151
- teradataml/data/jsons/uaf/17.20/TD_BINARYMATRIXOP.json +109 -109
- teradataml/data/jsons/uaf/17.20/TD_BINARYSERIESOP.json +107 -107
- teradataml/data/jsons/uaf/17.20/TD_BREUSCH_GODFREY.json +87 -87
- teradataml/data/jsons/uaf/17.20/TD_BREUSCH_PAGAN_GODFREY.json +106 -106
- teradataml/data/jsons/uaf/17.20/TD_CONVOLVE.json +80 -80
- teradataml/data/jsons/uaf/17.20/TD_CONVOLVE2.json +67 -67
- teradataml/data/jsons/uaf/17.20/TD_CUMUL_PERIODOGRAM.json +91 -91
- teradataml/data/jsons/uaf/17.20/TD_DFFT.json +136 -136
- teradataml/data/jsons/uaf/17.20/TD_DFFT2.json +148 -148
- teradataml/data/jsons/uaf/17.20/TD_DFFT2CONV.json +108 -108
- teradataml/data/jsons/uaf/17.20/TD_DFFTCONV.json +109 -109
- teradataml/data/jsons/uaf/17.20/TD_DICKEY_FULLER.json +86 -86
- teradataml/data/jsons/uaf/17.20/TD_DIFF.json +91 -91
- teradataml/data/jsons/uaf/17.20/TD_DTW.json +116 -116
- teradataml/data/jsons/uaf/17.20/TD_DURBIN_WATSON.json +100 -100
- teradataml/data/jsons/uaf/17.20/TD_EXTRACT_RESULTS.json +38 -38
- teradataml/data/jsons/uaf/17.20/TD_FITMETRICS.json +100 -100
- teradataml/data/jsons/uaf/17.20/TD_GENSERIES4FORMULA.json +84 -84
- teradataml/data/jsons/uaf/17.20/TD_GENSERIES4SINUSOIDS.json +70 -70
- teradataml/data/jsons/uaf/17.20/TD_GOLDFELD_QUANDT.json +152 -152
- teradataml/data/jsons/uaf/17.20/TD_HOLT_WINTERS_FORECAST.json +313 -313
- teradataml/data/jsons/uaf/17.20/TD_IDFFT.json +57 -57
- teradataml/data/jsons/uaf/17.20/TD_IDFFT2.json +94 -94
- teradataml/data/jsons/uaf/17.20/TD_INPUTVALIDATOR.json +63 -63
- teradataml/data/jsons/uaf/17.20/TD_LINEAR_REGR.json +181 -181
- teradataml/data/jsons/uaf/17.20/TD_LINESPEC.json +102 -102
- teradataml/data/jsons/uaf/17.20/TD_MAMEAN.json +182 -182
- teradataml/data/jsons/uaf/17.20/TD_MATRIXMULTIPLY.json +67 -67
- teradataml/data/jsons/uaf/17.20/TD_MINFO.json +66 -66
- teradataml/data/jsons/uaf/17.20/TD_MULTIVAR_REGR.json +178 -178
- teradataml/data/jsons/uaf/17.20/TD_PACF.json +114 -114
- teradataml/data/jsons/uaf/17.20/TD_PORTMAN.json +118 -118
- teradataml/data/jsons/uaf/17.20/TD_POWERSPEC.json +175 -175
- teradataml/data/jsons/uaf/17.20/TD_POWERTRANSFORM.json +97 -97
- teradataml/data/jsons/uaf/17.20/TD_RESAMPLE.json +173 -173
- teradataml/data/jsons/uaf/17.20/TD_SEASONALNORMALIZE.json +136 -136
- teradataml/data/jsons/uaf/17.20/TD_SELECTION_CRITERIA.json +89 -89
- teradataml/data/jsons/uaf/17.20/TD_SIGNIF_PERIODICITIES.json +79 -79
- teradataml/data/jsons/uaf/17.20/TD_SIGNIF_RESIDMEAN.json +67 -67
- teradataml/data/jsons/uaf/17.20/TD_SIMPLEEXP.json +184 -184
- teradataml/data/jsons/uaf/17.20/TD_SINFO.json +57 -57
- teradataml/data/jsons/uaf/17.20/TD_SMOOTHMA.json +162 -162
- teradataml/data/jsons/uaf/17.20/TD_TRACKINGOP.json +100 -100
- teradataml/data/jsons/uaf/17.20/TD_UNDIFF.json +111 -111
- teradataml/data/jsons/uaf/17.20/TD_UNNORMALIZE.json +95 -95
- teradataml/data/jsons/uaf/17.20/TD_WHITES_GENERAL.json +77 -77
- teradataml/data/kmeans_example.json +17 -17
- teradataml/data/kmeans_us_arrests_data.csv +0 -0
- teradataml/data/knn_example.json +18 -18
- teradataml/data/knnrecommender_example.json +6 -6
- teradataml/data/knnrecommenderpredict_example.json +12 -12
- teradataml/data/lar_example.json +17 -17
- teradataml/data/larpredict_example.json +30 -30
- teradataml/data/lc_new_predictors.csv +5 -5
- teradataml/data/lc_new_reference.csv +9 -9
- teradataml/data/lda_example.json +8 -8
- teradataml/data/ldainference_example.json +14 -14
- teradataml/data/ldatopicsummary_example.json +8 -8
- teradataml/data/levendist_input.csv +13 -13
- teradataml/data/levenshteindistance_example.json +10 -10
- teradataml/data/linreg_example.json +9 -9
- teradataml/data/load_example_data.py +326 -323
- teradataml/data/loan_prediction.csv +295 -295
- teradataml/data/lungcancer.csv +138 -138
- teradataml/data/mappingdata.csv +12 -12
- teradataml/data/milk_timeseries.csv +157 -157
- teradataml/data/min_max_titanic.csv +4 -4
- teradataml/data/minhash_example.json +6 -6
- teradataml/data/ml_ratings.csv +7547 -7547
- teradataml/data/ml_ratings_10.csv +2445 -2445
- teradataml/data/model1_table.csv +5 -5
- teradataml/data/model2_table.csv +5 -5
- teradataml/data/models/iris_db_glm_model.pmml +56 -56
- teradataml/data/models/iris_db_xgb_model.pmml +4471 -4471
- teradataml/data/modularity_example.json +12 -12
- teradataml/data/movavg_example.json +7 -7
- teradataml/data/mtx1.csv +7 -7
- teradataml/data/mtx2.csv +13 -13
- teradataml/data/multi_model_classification.csv +401 -0
- teradataml/data/multi_model_regression.csv +401 -0
- teradataml/data/mvdfft8.csv +9 -9
- teradataml/data/naivebayes_example.json +9 -9
- teradataml/data/naivebayespredict_example.json +19 -19
- teradataml/data/naivebayestextclassifier2_example.json +6 -6
- teradataml/data/naivebayestextclassifier_example.json +8 -8
- teradataml/data/naivebayestextclassifierpredict_example.json +20 -20
- teradataml/data/name_Find_configure.csv +10 -10
- teradataml/data/namedentityfinder_example.json +14 -14
- teradataml/data/namedentityfinderevaluator_example.json +10 -10
- teradataml/data/namedentityfindertrainer_example.json +6 -6
- teradataml/data/nb_iris_input_test.csv +31 -31
- teradataml/data/nb_iris_input_train.csv +121 -121
- teradataml/data/nbp_iris_model.csv +13 -13
- teradataml/data/ner_extractor_text.csv +2 -2
- teradataml/data/ner_sports_test2.csv +29 -29
- teradataml/data/ner_sports_train.csv +501 -501
- teradataml/data/nerevaluator_example.json +5 -5
- teradataml/data/nerextractor_example.json +18 -18
- teradataml/data/nermem_sports_test.csv +17 -17
- teradataml/data/nermem_sports_train.csv +50 -50
- teradataml/data/nertrainer_example.json +6 -6
- teradataml/data/ngrams_example.json +6 -6
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Aggregate Functions using SQLAlchemy.ipynb +1455 -1455
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Arithmetic Functions Using SQLAlchemy.ipynb +1993 -1993
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Bit-Byte Manipulation Functions using SQLAlchemy.ipynb +1492 -1492
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Built-in functions using SQLAlchemy.ipynb +536 -536
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Regular Expressions Using SQLAlchemy.ipynb +570 -570
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage String Functions Using SQLAlchemy.ipynb +2559 -2559
- teradataml/data/notebooks/sqlalchemy/Teradata Vantage Window Aggregate Functions using SQLAlchemy.ipynb +2911 -2911
- teradataml/data/notebooks/sqlalchemy/Using Generic SQLAlchemy ClauseElements teradataml DataFrame assign method.ipynb +698 -698
- teradataml/data/notebooks/sqlalchemy/teradataml filtering using SQLAlchemy ClauseElements.ipynb +784 -784
- teradataml/data/npath_example.json +23 -23
- teradataml/data/ntree_example.json +14 -14
- teradataml/data/numeric_strings.csv +4 -4
- teradataml/data/numerics.csv +4 -4
- teradataml/data/ocean_buoy.csv +17 -17
- teradataml/data/ocean_buoy2.csv +17 -17
- teradataml/data/ocean_buoys.csv +27 -27
- teradataml/data/ocean_buoys2.csv +10 -10
- teradataml/data/ocean_buoys_nonpti.csv +28 -28
- teradataml/data/ocean_buoys_seq.csv +29 -29
- teradataml/data/openml_example.json +63 -0
- teradataml/data/optional_event_table.csv +4 -4
- teradataml/data/orders1.csv +11 -11
- teradataml/data/orders1_12.csv +12 -12
- teradataml/data/orders_ex.csv +4 -4
- teradataml/data/pack_example.json +8 -8
- teradataml/data/package_tracking.csv +19 -19
- teradataml/data/package_tracking_pti.csv +18 -18
- teradataml/data/pagerank_example.json +13 -13
- teradataml/data/paragraphs_input.csv +6 -6
- teradataml/data/pathanalyzer_example.json +7 -7
- teradataml/data/pathgenerator_example.json +7 -7
- teradataml/data/phrases.csv +7 -7
- teradataml/data/pivot_example.json +8 -8
- teradataml/data/pivot_input.csv +22 -22
- teradataml/data/playerRating.csv +31 -31
- teradataml/data/postagger_example.json +6 -6
- teradataml/data/posttagger_output.csv +44 -44
- teradataml/data/production_data.csv +16 -16
- teradataml/data/production_data2.csv +7 -7
- teradataml/data/randomsample_example.json +31 -31
- teradataml/data/randomwalksample_example.json +8 -8
- teradataml/data/rank_table.csv +6 -6
- teradataml/data/ref_mobile_data.csv +4 -4
- teradataml/data/ref_mobile_data_dense.csv +2 -2
- teradataml/data/ref_url.csv +17 -17
- teradataml/data/restaurant_reviews.csv +7 -7
- teradataml/data/river_data.csv +145 -145
- teradataml/data/roc_example.json +7 -7
- teradataml/data/roc_input.csv +101 -101
- teradataml/data/rule_inputs.csv +6 -6
- teradataml/data/rule_table.csv +2 -2
- teradataml/data/sales.csv +7 -7
- teradataml/data/sales_transaction.csv +501 -501
- teradataml/data/salesdata.csv +342 -342
- teradataml/data/sample_cities.csv +2 -2
- teradataml/data/sample_shapes.csv +10 -10
- teradataml/data/sample_streets.csv +2 -2
- teradataml/data/sampling_example.json +15 -15
- teradataml/data/sax_example.json +8 -8
- teradataml/data/scale_example.json +23 -23
- teradataml/data/scale_housing.csv +11 -11
- teradataml/data/scale_housing_test.csv +6 -6
- teradataml/data/scale_stat.csv +11 -11
- teradataml/data/scalebypartition_example.json +13 -13
- teradataml/data/scalemap_example.json +13 -13
- teradataml/data/scalesummary_example.json +12 -12
- teradataml/data/score_category.csv +101 -101
- teradataml/data/score_summary.csv +4 -4
- teradataml/data/script_example.json +9 -9
- teradataml/data/scripts/deploy_script.py +65 -0
- teradataml/data/scripts/mapper.R +20 -0
- teradataml/data/scripts/mapper.py +15 -15
- teradataml/data/scripts/mapper_replace.py +15 -15
- teradataml/data/scripts/sklearn/__init__.py +0 -0
- teradataml/data/scripts/sklearn/sklearn_fit.py +175 -0
- teradataml/data/scripts/sklearn/sklearn_fit_predict.py +135 -0
- teradataml/data/scripts/sklearn/sklearn_function.template +113 -0
- teradataml/data/scripts/sklearn/sklearn_model_selection_split.py +158 -0
- teradataml/data/scripts/sklearn/sklearn_neighbors.py +152 -0
- teradataml/data/scripts/sklearn/sklearn_score.py +128 -0
- teradataml/data/scripts/sklearn/sklearn_transform.py +179 -0
- teradataml/data/seeds.csv +10 -10
- teradataml/data/sentenceextractor_example.json +6 -6
- teradataml/data/sentiment_extract_input.csv +11 -11
- teradataml/data/sentiment_train.csv +16 -16
- teradataml/data/sentiment_word.csv +20 -20
- teradataml/data/sentiment_word_input.csv +19 -19
- teradataml/data/sentimentextractor_example.json +24 -24
- teradataml/data/sentimenttrainer_example.json +8 -8
- teradataml/data/sequence_table.csv +10 -10
- teradataml/data/seriessplitter_example.json +7 -7
- teradataml/data/sessionize_example.json +17 -17
- teradataml/data/sessionize_table.csv +116 -116
- teradataml/data/setop_test1.csv +24 -24
- teradataml/data/setop_test2.csv +22 -22
- teradataml/data/soc_nw_edges.csv +10 -10
- teradataml/data/soc_nw_vertices.csv +7 -7
- teradataml/data/souvenir_timeseries.csv +167 -167
- teradataml/data/sparse_iris_attribute.csv +5 -5
- teradataml/data/sparse_iris_test.csv +121 -121
- teradataml/data/sparse_iris_train.csv +601 -601
- teradataml/data/star1.csv +6 -6
- teradataml/data/state_transition.csv +5 -5
- teradataml/data/stock_data.csv +53 -53
- teradataml/data/stock_movement.csv +11 -11
- teradataml/data/stock_vol.csv +76 -76
- teradataml/data/stop_words.csv +8 -8
- teradataml/data/store_sales.csv +37 -37
- teradataml/data/stringsimilarity_example.json +7 -7
- teradataml/data/strsimilarity_input.csv +13 -13
- teradataml/data/students.csv +101 -101
- teradataml/data/svm_iris_input_test.csv +121 -121
- teradataml/data/svm_iris_input_train.csv +481 -481
- teradataml/data/svm_iris_model.csv +7 -7
- teradataml/data/svmdense_example.json +9 -9
- teradataml/data/svmdensepredict_example.json +18 -18
- teradataml/data/svmsparse_example.json +7 -7
- teradataml/data/svmsparsepredict_example.json +13 -13
- teradataml/data/svmsparsesummary_example.json +7 -7
- teradataml/data/target_mobile_data.csv +13 -13
- teradataml/data/target_mobile_data_dense.csv +5 -5
- teradataml/data/templatedata.csv +1201 -1201
- teradataml/data/templates/open_source_ml.json +9 -0
- teradataml/data/teradataml_example.json +73 -1
- teradataml/data/test_classification.csv +101 -0
- teradataml/data/test_loan_prediction.csv +53 -53
- teradataml/data/test_pacf_12.csv +37 -37
- teradataml/data/test_prediction.csv +101 -0
- teradataml/data/test_regression.csv +101 -0
- teradataml/data/test_river2.csv +109 -109
- teradataml/data/text_inputs.csv +6 -6
- teradataml/data/textchunker_example.json +7 -7
- teradataml/data/textclassifier_example.json +6 -6
- teradataml/data/textclassifier_input.csv +7 -7
- teradataml/data/textclassifiertrainer_example.json +6 -6
- teradataml/data/textmorph_example.json +5 -5
- teradataml/data/textparser_example.json +15 -15
- teradataml/data/texttagger_example.json +11 -11
- teradataml/data/texttokenizer_example.json +6 -6
- teradataml/data/texttrainer_input.csv +11 -11
- teradataml/data/tf_example.json +6 -6
- teradataml/data/tfidf_example.json +13 -13
- teradataml/data/tfidf_input1.csv +201 -201
- teradataml/data/tfidf_train.csv +6 -6
- teradataml/data/time_table1.csv +535 -535
- teradataml/data/time_table2.csv +14 -14
- teradataml/data/timeseriesdata.csv +1601 -1601
- teradataml/data/timeseriesdatasetsd4.csv +105 -105
- teradataml/data/titanic.csv +892 -892
- teradataml/data/token_table.csv +696 -696
- teradataml/data/train_multiclass.csv +101 -0
- teradataml/data/train_regression.csv +101 -0
- teradataml/data/train_regression_multiple_labels.csv +101 -0
- teradataml/data/train_tracking.csv +27 -27
- teradataml/data/transformation_table.csv +5 -5
- teradataml/data/transformation_table_new.csv +1 -1
- teradataml/data/tv_spots.csv +16 -16
- teradataml/data/twod_climate_data.csv +117 -117
- teradataml/data/uaf_example.json +475 -475
- teradataml/data/univariatestatistics_example.json +8 -8
- teradataml/data/unpack_example.json +9 -9
- teradataml/data/unpivot_example.json +9 -9
- teradataml/data/unpivot_input.csv +8 -8
- teradataml/data/us_air_pass.csv +36 -36
- teradataml/data/us_population.csv +624 -624
- teradataml/data/us_states_shapes.csv +52 -52
- teradataml/data/varmax_example.json +17 -17
- teradataml/data/vectordistance_example.json +25 -25
- teradataml/data/ville_climatedata.csv +121 -121
- teradataml/data/ville_tempdata.csv +12 -12
- teradataml/data/ville_tempdata1.csv +12 -12
- teradataml/data/ville_temperature.csv +11 -11
- teradataml/data/waveletTable.csv +1605 -1605
- teradataml/data/waveletTable2.csv +1605 -1605
- teradataml/data/weightedmovavg_example.json +8 -8
- teradataml/data/wft_testing.csv +5 -5
- teradataml/data/wine_data.csv +1600 -0
- teradataml/data/word_embed_input_table1.csv +5 -5
- teradataml/data/word_embed_input_table2.csv +4 -4
- teradataml/data/word_embed_model.csv +22 -22
- teradataml/data/words_input.csv +13 -13
- teradataml/data/xconvolve_complex_left.csv +6 -6
- teradataml/data/xconvolve_complex_leftmulti.csv +6 -6
- teradataml/data/xgboost_example.json +35 -35
- teradataml/data/xgboostpredict_example.json +31 -31
- teradataml/dataframe/copy_to.py +1764 -1698
- teradataml/dataframe/data_transfer.py +2753 -2745
- teradataml/dataframe/dataframe.py +17545 -16946
- teradataml/dataframe/dataframe_utils.py +1837 -1740
- teradataml/dataframe/fastload.py +611 -603
- teradataml/dataframe/indexer.py +424 -424
- teradataml/dataframe/setop.py +1179 -1166
- teradataml/dataframe/sql.py +10090 -6432
- teradataml/dataframe/sql_function_parameters.py +439 -388
- teradataml/dataframe/sql_functions.py +652 -652
- teradataml/dataframe/sql_interfaces.py +220 -220
- teradataml/dataframe/vantage_function_types.py +674 -630
- teradataml/dataframe/window.py +693 -692
- teradataml/dbutils/__init__.py +3 -3
- teradataml/dbutils/dbutils.py +1167 -1150
- teradataml/dbutils/filemgr.py +267 -267
- teradataml/gen_ai/__init__.py +2 -2
- teradataml/gen_ai/convAI.py +472 -472
- teradataml/geospatial/__init__.py +3 -3
- teradataml/geospatial/geodataframe.py +1105 -1094
- teradataml/geospatial/geodataframecolumn.py +392 -387
- teradataml/geospatial/geometry_types.py +925 -925
- teradataml/hyperparameter_tuner/__init__.py +1 -1
- teradataml/hyperparameter_tuner/optimizer.py +3783 -2993
- teradataml/hyperparameter_tuner/utils.py +281 -187
- teradataml/lib/aed_0_1.dll +0 -0
- teradataml/lib/libaed_0_1.dylib +0 -0
- teradataml/lib/libaed_0_1.so +0 -0
- teradataml/libaed_0_1.dylib +0 -0
- teradataml/libaed_0_1.so +0 -0
- teradataml/opensource/__init__.py +1 -0
- teradataml/opensource/sklearn/__init__.py +1 -0
- teradataml/opensource/sklearn/_class.py +255 -0
- teradataml/opensource/sklearn/_sklearn_wrapper.py +1668 -0
- teradataml/opensource/sklearn/_wrapper_utils.py +268 -0
- teradataml/opensource/sklearn/constants.py +54 -0
- teradataml/options/__init__.py +121 -124
- teradataml/options/configure.py +337 -336
- teradataml/options/display.py +176 -176
- teradataml/plot/__init__.py +2 -2
- teradataml/plot/axis.py +1388 -1388
- teradataml/plot/constants.py +15 -15
- teradataml/plot/figure.py +398 -398
- teradataml/plot/plot.py +760 -760
- teradataml/plot/query_generator.py +83 -83
- teradataml/plot/subplot.py +216 -216
- teradataml/scriptmgmt/UserEnv.py +3788 -3761
- teradataml/scriptmgmt/__init__.py +3 -3
- teradataml/scriptmgmt/lls_utils.py +1616 -1604
- teradataml/series/series.py +532 -532
- teradataml/series/series_utils.py +71 -71
- teradataml/table_operators/Apply.py +949 -917
- teradataml/table_operators/Script.py +1719 -1982
- teradataml/table_operators/TableOperator.py +1207 -1616
- teradataml/table_operators/__init__.py +2 -3
- teradataml/table_operators/apply_query_generator.py +262 -262
- teradataml/table_operators/query_generator.py +507 -507
- teradataml/table_operators/table_operator_query_generator.py +460 -460
- teradataml/table_operators/table_operator_util.py +631 -639
- teradataml/table_operators/templates/dataframe_apply.template +184 -184
- teradataml/table_operators/templates/dataframe_map.template +176 -176
- teradataml/table_operators/templates/script_executor.template +170 -170
- teradataml/utils/dtypes.py +684 -684
- teradataml/utils/internal_buffer.py +84 -84
- teradataml/utils/print_versions.py +205 -205
- teradataml/utils/utils.py +410 -410
- teradataml/utils/validators.py +2239 -2115
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/METADATA +270 -41
- teradataml-20.0.0.0.dist-info/RECORD +1038 -0
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/WHEEL +1 -1
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/zip-safe +1 -1
- teradataml/analytics/mle/AdaBoost.py +0 -651
- teradataml/analytics/mle/AdaBoostPredict.py +0 -564
- teradataml/analytics/mle/Antiselect.py +0 -342
- teradataml/analytics/mle/Arima.py +0 -641
- teradataml/analytics/mle/ArimaPredict.py +0 -477
- teradataml/analytics/mle/Attribution.py +0 -1070
- teradataml/analytics/mle/Betweenness.py +0 -658
- teradataml/analytics/mle/Burst.py +0 -711
- teradataml/analytics/mle/CCM.py +0 -600
- teradataml/analytics/mle/CCMPrepare.py +0 -324
- teradataml/analytics/mle/CFilter.py +0 -460
- teradataml/analytics/mle/ChangePointDetection.py +0 -572
- teradataml/analytics/mle/ChangePointDetectionRT.py +0 -477
- teradataml/analytics/mle/Closeness.py +0 -737
- teradataml/analytics/mle/ConfusionMatrix.py +0 -420
- teradataml/analytics/mle/Correlation.py +0 -477
- teradataml/analytics/mle/Correlation2.py +0 -573
- teradataml/analytics/mle/CoxHazardRatio.py +0 -679
- teradataml/analytics/mle/CoxPH.py +0 -556
- teradataml/analytics/mle/CoxSurvival.py +0 -478
- teradataml/analytics/mle/CumulativeMovAvg.py +0 -363
- teradataml/analytics/mle/DTW.py +0 -623
- teradataml/analytics/mle/DWT.py +0 -564
- teradataml/analytics/mle/DWT2D.py +0 -599
- teradataml/analytics/mle/DecisionForest.py +0 -716
- teradataml/analytics/mle/DecisionForestEvaluator.py +0 -363
- teradataml/analytics/mle/DecisionForestPredict.py +0 -561
- teradataml/analytics/mle/DecisionTree.py +0 -830
- teradataml/analytics/mle/DecisionTreePredict.py +0 -528
- teradataml/analytics/mle/ExponentialMovAvg.py +0 -418
- teradataml/analytics/mle/FMeasure.py +0 -402
- teradataml/analytics/mle/FPGrowth.py +0 -734
- teradataml/analytics/mle/FrequentPaths.py +0 -695
- teradataml/analytics/mle/GLM.py +0 -558
- teradataml/analytics/mle/GLML1L2.py +0 -547
- teradataml/analytics/mle/GLML1L2Predict.py +0 -519
- teradataml/analytics/mle/GLMPredict.py +0 -529
- teradataml/analytics/mle/HMMDecoder.py +0 -945
- teradataml/analytics/mle/HMMEvaluator.py +0 -901
- teradataml/analytics/mle/HMMSupervised.py +0 -521
- teradataml/analytics/mle/HMMUnsupervised.py +0 -572
- teradataml/analytics/mle/Histogram.py +0 -561
- teradataml/analytics/mle/IDWT.py +0 -476
- teradataml/analytics/mle/IDWT2D.py +0 -493
- teradataml/analytics/mle/IdentityMatch.py +0 -763
- teradataml/analytics/mle/Interpolator.py +0 -918
- teradataml/analytics/mle/KMeans.py +0 -485
- teradataml/analytics/mle/KNN.py +0 -627
- teradataml/analytics/mle/KNNRecommender.py +0 -488
- teradataml/analytics/mle/KNNRecommenderPredict.py +0 -581
- teradataml/analytics/mle/LAR.py +0 -439
- teradataml/analytics/mle/LARPredict.py +0 -478
- teradataml/analytics/mle/LDA.py +0 -548
- teradataml/analytics/mle/LDAInference.py +0 -492
- teradataml/analytics/mle/LDATopicSummary.py +0 -464
- teradataml/analytics/mle/LevenshteinDistance.py +0 -450
- teradataml/analytics/mle/LinReg.py +0 -433
- teradataml/analytics/mle/LinRegPredict.py +0 -438
- teradataml/analytics/mle/MinHash.py +0 -544
- teradataml/analytics/mle/Modularity.py +0 -587
- teradataml/analytics/mle/NEREvaluator.py +0 -410
- teradataml/analytics/mle/NERExtractor.py +0 -595
- teradataml/analytics/mle/NERTrainer.py +0 -458
- teradataml/analytics/mle/NGrams.py +0 -570
- teradataml/analytics/mle/NPath.py +0 -634
- teradataml/analytics/mle/NTree.py +0 -549
- teradataml/analytics/mle/NaiveBayes.py +0 -462
- teradataml/analytics/mle/NaiveBayesPredict.py +0 -513
- teradataml/analytics/mle/NaiveBayesTextClassifier.py +0 -607
- teradataml/analytics/mle/NaiveBayesTextClassifier2.py +0 -531
- teradataml/analytics/mle/NaiveBayesTextClassifierPredict.py +0 -799
- teradataml/analytics/mle/NamedEntityFinder.py +0 -529
- teradataml/analytics/mle/NamedEntityFinderEvaluator.py +0 -414
- teradataml/analytics/mle/NamedEntityFinderTrainer.py +0 -396
- teradataml/analytics/mle/POSTagger.py +0 -417
- teradataml/analytics/mle/Pack.py +0 -411
- teradataml/analytics/mle/PageRank.py +0 -535
- teradataml/analytics/mle/PathAnalyzer.py +0 -426
- teradataml/analytics/mle/PathGenerator.py +0 -367
- teradataml/analytics/mle/PathStart.py +0 -464
- teradataml/analytics/mle/PathSummarizer.py +0 -470
- teradataml/analytics/mle/Pivot.py +0 -471
- teradataml/analytics/mle/ROC.py +0 -425
- teradataml/analytics/mle/RandomSample.py +0 -637
- teradataml/analytics/mle/RandomWalkSample.py +0 -490
- teradataml/analytics/mle/SAX.py +0 -779
- teradataml/analytics/mle/SVMDense.py +0 -677
- teradataml/analytics/mle/SVMDensePredict.py +0 -536
- teradataml/analytics/mle/SVMDenseSummary.py +0 -437
- teradataml/analytics/mle/SVMSparse.py +0 -557
- teradataml/analytics/mle/SVMSparsePredict.py +0 -553
- teradataml/analytics/mle/SVMSparseSummary.py +0 -435
- teradataml/analytics/mle/Sampling.py +0 -549
- teradataml/analytics/mle/Scale.py +0 -565
- teradataml/analytics/mle/ScaleByPartition.py +0 -496
- teradataml/analytics/mle/ScaleMap.py +0 -378
- teradataml/analytics/mle/ScaleSummary.py +0 -320
- teradataml/analytics/mle/SentenceExtractor.py +0 -363
- teradataml/analytics/mle/SentimentEvaluator.py +0 -432
- teradataml/analytics/mle/SentimentExtractor.py +0 -578
- teradataml/analytics/mle/SentimentTrainer.py +0 -405
- teradataml/analytics/mle/SeriesSplitter.py +0 -641
- teradataml/analytics/mle/Sessionize.py +0 -475
- teradataml/analytics/mle/SimpleMovAvg.py +0 -397
- teradataml/analytics/mle/StringSimilarity.py +0 -425
- teradataml/analytics/mle/TF.py +0 -389
- teradataml/analytics/mle/TFIDF.py +0 -504
- teradataml/analytics/mle/TextChunker.py +0 -414
- teradataml/analytics/mle/TextClassifier.py +0 -399
- teradataml/analytics/mle/TextClassifierEvaluator.py +0 -413
- teradataml/analytics/mle/TextClassifierTrainer.py +0 -565
- teradataml/analytics/mle/TextMorph.py +0 -494
- teradataml/analytics/mle/TextParser.py +0 -623
- teradataml/analytics/mle/TextTagger.py +0 -530
- teradataml/analytics/mle/TextTokenizer.py +0 -502
- teradataml/analytics/mle/UnivariateStatistics.py +0 -488
- teradataml/analytics/mle/Unpack.py +0 -526
- teradataml/analytics/mle/Unpivot.py +0 -438
- teradataml/analytics/mle/VarMax.py +0 -776
- teradataml/analytics/mle/VectorDistance.py +0 -762
- teradataml/analytics/mle/WeightedMovAvg.py +0 -400
- teradataml/analytics/mle/XGBoost.py +0 -842
- teradataml/analytics/mle/XGBoostPredict.py +0 -627
- teradataml/analytics/mle/__init__.py +0 -123
- teradataml/analytics/mle/json/adaboost_mle.json +0 -135
- teradataml/analytics/mle/json/adaboostpredict_mle.json +0 -85
- teradataml/analytics/mle/json/antiselect_mle.json +0 -34
- teradataml/analytics/mle/json/antiselect_mle_mle.json +0 -34
- teradataml/analytics/mle/json/arima_mle.json +0 -172
- teradataml/analytics/mle/json/arimapredict_mle.json +0 -52
- teradataml/analytics/mle/json/attribution_mle_mle.json +0 -143
- teradataml/analytics/mle/json/betweenness_mle.json +0 -97
- teradataml/analytics/mle/json/burst_mle.json +0 -140
- teradataml/analytics/mle/json/ccm_mle.json +0 -124
- teradataml/analytics/mle/json/ccmprepare_mle.json +0 -14
- teradataml/analytics/mle/json/cfilter_mle.json +0 -93
- teradataml/analytics/mle/json/changepointdetection_mle.json +0 -92
- teradataml/analytics/mle/json/changepointdetectionrt_mle.json +0 -78
- teradataml/analytics/mle/json/closeness_mle.json +0 -104
- teradataml/analytics/mle/json/confusionmatrix_mle.json +0 -79
- teradataml/analytics/mle/json/correlation_mle.json +0 -86
- teradataml/analytics/mle/json/correlationreduce_mle.json +0 -49
- teradataml/analytics/mle/json/coxhazardratio_mle.json +0 -89
- teradataml/analytics/mle/json/coxph_mle.json +0 -98
- teradataml/analytics/mle/json/coxsurvival_mle.json +0 -79
- teradataml/analytics/mle/json/cumulativemovavg_mle.json +0 -34
- teradataml/analytics/mle/json/decisionforest_mle.json +0 -167
- teradataml/analytics/mle/json/decisionforestevaluator_mle.json +0 -33
- teradataml/analytics/mle/json/decisionforestpredict_mle_mle.json +0 -74
- teradataml/analytics/mle/json/decisiontree_mle.json +0 -194
- teradataml/analytics/mle/json/decisiontreepredict_mle_mle.json +0 -86
- teradataml/analytics/mle/json/dtw_mle.json +0 -97
- teradataml/analytics/mle/json/dwt2d_mle.json +0 -116
- teradataml/analytics/mle/json/dwt_mle.json +0 -101
- teradataml/analytics/mle/json/exponentialmovavg_mle.json +0 -55
- teradataml/analytics/mle/json/fmeasure_mle.json +0 -58
- teradataml/analytics/mle/json/fpgrowth_mle.json +0 -159
- teradataml/analytics/mle/json/frequentpaths_mle.json +0 -129
- teradataml/analytics/mle/json/glm_mle.json +0 -111
- teradataml/analytics/mle/json/glml1l2_mle.json +0 -106
- teradataml/analytics/mle/json/glml1l2predict_mle.json +0 -57
- teradataml/analytics/mle/json/glmpredict_mle_mle.json +0 -74
- teradataml/analytics/mle/json/histogram_mle.json +0 -100
- teradataml/analytics/mle/json/hmmdecoder_mle.json +0 -192
- teradataml/analytics/mle/json/hmmevaluator_mle.json +0 -206
- teradataml/analytics/mle/json/hmmsupervised_mle.json +0 -91
- teradataml/analytics/mle/json/hmmunsupervised_mle.json +0 -114
- teradataml/analytics/mle/json/identitymatch_mle.json +0 -88
- teradataml/analytics/mle/json/idwt2d_mle.json +0 -73
- teradataml/analytics/mle/json/idwt_mle.json +0 -66
- teradataml/analytics/mle/json/interpolator_mle.json +0 -151
- teradataml/analytics/mle/json/kmeans_mle.json +0 -97
- teradataml/analytics/mle/json/knn_mle.json +0 -141
- teradataml/analytics/mle/json/knnrecommender_mle.json +0 -111
- teradataml/analytics/mle/json/knnrecommenderpredict_mle.json +0 -75
- teradataml/analytics/mle/json/lar_mle.json +0 -78
- teradataml/analytics/mle/json/larpredict_mle.json +0 -69
- teradataml/analytics/mle/json/lda_mle.json +0 -130
- teradataml/analytics/mle/json/ldainference_mle.json +0 -78
- teradataml/analytics/mle/json/ldatopicsummary_mle.json +0 -64
- teradataml/analytics/mle/json/levenshteindistance_mle.json +0 -92
- teradataml/analytics/mle/json/linreg_mle.json +0 -42
- teradataml/analytics/mle/json/linregpredict_mle.json +0 -56
- teradataml/analytics/mle/json/minhash_mle.json +0 -113
- teradataml/analytics/mle/json/modularity_mle.json +0 -91
- teradataml/analytics/mle/json/naivebayespredict_mle_mle.json +0 -85
- teradataml/analytics/mle/json/naivebayesreduce_mle.json +0 -52
- teradataml/analytics/mle/json/naivebayestextclassifierpredict_mle_mle.json +0 -147
- teradataml/analytics/mle/json/naivebayestextclassifiertrainer2_mle.json +0 -108
- teradataml/analytics/mle/json/naivebayestextclassifiertrainer_mle.json +0 -102
- teradataml/analytics/mle/json/namedentityfinder_mle.json +0 -84
- teradataml/analytics/mle/json/namedentityfinderevaluatorreduce_mle.json +0 -43
- teradataml/analytics/mle/json/namedentityfindertrainer_mle.json +0 -64
- teradataml/analytics/mle/json/nerevaluator_mle.json +0 -54
- teradataml/analytics/mle/json/nerextractor_mle.json +0 -87
- teradataml/analytics/mle/json/nertrainer_mle.json +0 -89
- teradataml/analytics/mle/json/ngrams_mle.json +0 -137
- teradataml/analytics/mle/json/ngramsplitter_mle_mle.json +0 -137
- teradataml/analytics/mle/json/npath@coprocessor_mle.json +0 -73
- teradataml/analytics/mle/json/ntree@coprocessor_mle.json +0 -123
- teradataml/analytics/mle/json/pack_mle.json +0 -58
- teradataml/analytics/mle/json/pack_mle_mle.json +0 -58
- teradataml/analytics/mle/json/pagerank_mle.json +0 -81
- teradataml/analytics/mle/json/pathanalyzer_mle.json +0 -63
- teradataml/analytics/mle/json/pathgenerator_mle.json +0 -40
- teradataml/analytics/mle/json/pathstart_mle.json +0 -62
- teradataml/analytics/mle/json/pathsummarizer_mle.json +0 -72
- teradataml/analytics/mle/json/pivoting_mle.json +0 -71
- teradataml/analytics/mle/json/postagger_mle.json +0 -51
- teradataml/analytics/mle/json/randomsample_mle.json +0 -131
- teradataml/analytics/mle/json/randomwalksample_mle.json +0 -85
- teradataml/analytics/mle/json/roc_mle.json +0 -73
- teradataml/analytics/mle/json/sampling_mle.json +0 -75
- teradataml/analytics/mle/json/sax_mle.json +0 -154
- teradataml/analytics/mle/json/scale_mle.json +0 -93
- teradataml/analytics/mle/json/scalebypartition_mle.json +0 -89
- teradataml/analytics/mle/json/scalemap_mle.json +0 -44
- teradataml/analytics/mle/json/scalesummary_mle.json +0 -14
- teradataml/analytics/mle/json/sentenceextractor_mle.json +0 -41
- teradataml/analytics/mle/json/sentimentevaluator_mle.json +0 -43
- teradataml/analytics/mle/json/sentimentextractor_mle.json +0 -100
- teradataml/analytics/mle/json/sentimenttrainer_mle.json +0 -68
- teradataml/analytics/mle/json/seriessplitter_mle.json +0 -133
- teradataml/analytics/mle/json/sessionize_mle_mle.json +0 -62
- teradataml/analytics/mle/json/simplemovavg_mle.json +0 -48
- teradataml/analytics/mle/json/stringsimilarity_mle.json +0 -50
- teradataml/analytics/mle/json/stringsimilarity_mle_mle.json +0 -50
- teradataml/analytics/mle/json/svmdense_mle.json +0 -165
- teradataml/analytics/mle/json/svmdensepredict_mle.json +0 -95
- teradataml/analytics/mle/json/svmdensesummary_mle.json +0 -58
- teradataml/analytics/mle/json/svmsparse_mle.json +0 -148
- teradataml/analytics/mle/json/svmsparsepredict_mle_mle.json +0 -103
- teradataml/analytics/mle/json/svmsparsesummary_mle.json +0 -57
- teradataml/analytics/mle/json/textchunker_mle.json +0 -40
- teradataml/analytics/mle/json/textclassifier_mle.json +0 -51
- teradataml/analytics/mle/json/textclassifierevaluator_mle.json +0 -43
- teradataml/analytics/mle/json/textclassifiertrainer_mle.json +0 -103
- teradataml/analytics/mle/json/textmorph_mle.json +0 -63
- teradataml/analytics/mle/json/textparser_mle.json +0 -166
- teradataml/analytics/mle/json/texttagger_mle.json +0 -81
- teradataml/analytics/mle/json/texttokenizer_mle.json +0 -91
- teradataml/analytics/mle/json/tf_mle.json +0 -33
- teradataml/analytics/mle/json/tfidf_mle.json +0 -34
- teradataml/analytics/mle/json/univariatestatistics_mle.json +0 -81
- teradataml/analytics/mle/json/unpack_mle.json +0 -91
- teradataml/analytics/mle/json/unpack_mle_mle.json +0 -91
- teradataml/analytics/mle/json/unpivoting_mle.json +0 -63
- teradataml/analytics/mle/json/varmax_mle.json +0 -176
- teradataml/analytics/mle/json/vectordistance_mle.json +0 -179
- teradataml/analytics/mle/json/weightedmovavg_mle.json +0 -48
- teradataml/analytics/mle/json/xgboost_mle.json +0 -178
- teradataml/analytics/mle/json/xgboostpredict_mle.json +0 -104
- teradataml/analytics/sqle/Antiselect.py +0 -321
- teradataml/analytics/sqle/Attribution.py +0 -603
- teradataml/analytics/sqle/DecisionForestPredict.py +0 -408
- teradataml/analytics/sqle/GLMPredict.py +0 -430
- teradataml/analytics/sqle/MovingAverage.py +0 -543
- teradataml/analytics/sqle/NGramSplitter.py +0 -548
- teradataml/analytics/sqle/NPath.py +0 -632
- teradataml/analytics/sqle/NaiveBayesTextClassifierPredict.py +0 -515
- teradataml/analytics/sqle/Pack.py +0 -388
- teradataml/analytics/sqle/SVMSparsePredict.py +0 -464
- teradataml/analytics/sqle/Sessionize.py +0 -390
- teradataml/analytics/sqle/StringSimilarity.py +0 -400
- teradataml/analytics/sqle/Unpack.py +0 -503
- teradataml/analytics/sqle/json/antiselect_sqle.json +0 -21
- teradataml/analytics/sqle/json/attribution_sqle.json +0 -92
- teradataml/analytics/sqle/json/decisionforestpredict_sqle.json +0 -48
- teradataml/analytics/sqle/json/glmpredict_sqle.json +0 -48
- teradataml/analytics/sqle/json/h2opredict_sqle.json +0 -63
- teradataml/analytics/sqle/json/movingaverage_sqle.json +0 -58
- teradataml/analytics/sqle/json/naivebayestextclassifierpredict_sqle.json +0 -76
- teradataml/analytics/sqle/json/ngramsplitter_sqle.json +0 -126
- teradataml/analytics/sqle/json/npath_sqle.json +0 -67
- teradataml/analytics/sqle/json/pack_sqle.json +0 -47
- teradataml/analytics/sqle/json/pmmlpredict_sqle.json +0 -55
- teradataml/analytics/sqle/json/sessionize_sqle.json +0 -43
- teradataml/analytics/sqle/json/stringsimilarity_sqle.json +0 -39
- teradataml/analytics/sqle/json/svmsparsepredict_sqle.json +0 -74
- teradataml/analytics/sqle/json/unpack_sqle.json +0 -80
- teradataml/catalog/model_cataloging.py +0 -980
- teradataml/config/mlengine_alias_definitions_v1.0 +0 -118
- teradataml/config/mlengine_alias_definitions_v1.1 +0 -127
- teradataml/config/mlengine_alias_definitions_v1.3 +0 -129
- teradataml/table_operators/sandbox_container_util.py +0 -643
- teradataml-17.20.0.7.dist-info/RECORD +0 -1280
- {teradataml-17.20.0.7.dist-info → teradataml-20.0.0.0.dist-info}/top_level.txt +0 -0
teradataml/utils/dtypes.py
CHANGED
|
@@ -1,684 +1,684 @@
|
|
|
1
|
-
from teradatasqlalchemy import (BYTEINT, SMALLINT, INTEGER, BIGINT, DECIMAL, FLOAT, NUMBER)
|
|
2
|
-
from teradatasqlalchemy import (TIMESTAMP, DATE, TIME)
|
|
3
|
-
from teradatasqlalchemy import (CHAR, VARCHAR, CLOB)
|
|
4
|
-
from teradatasqlalchemy import (BYTE, VARBYTE, BLOB)
|
|
5
|
-
from teradatasqlalchemy import (PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP)
|
|
6
|
-
from teradatasqlalchemy import (INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, INTERVAL_MONTH, INTERVAL_DAY,
|
|
7
|
-
INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND,
|
|
8
|
-
INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND,
|
|
9
|
-
INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_SECOND)
|
|
10
|
-
from teradatasqlalchemy import (GEOMETRY, MBB, MBR)
|
|
11
|
-
from teradataml.common.td_coltype_code_to_tdtype import HELP_COL_TYPE_TO_TDTYPE
|
|
12
|
-
from teradataml.common.constants import TeradataTypes, PythonTypes
|
|
13
|
-
from datetime import datetime, time, date
|
|
14
|
-
|
|
15
|
-
#
|
|
16
|
-
# Pre-defined class for validating argument types for args that accept list or
|
|
17
|
-
# tuple as input.
|
|
18
|
-
#
|
|
19
|
-
class _ListOf:
|
|
20
|
-
"""
|
|
21
|
-
A class to imitate the type - List of x-type.
|
|
22
|
-
For example,
|
|
23
|
-
list of str
|
|
24
|
-
list of int or float
|
|
25
|
-
etc.
|
|
26
|
-
"""
|
|
27
|
-
def __init__(self, dtypes):
|
|
28
|
-
"""
|
|
29
|
-
Constructor of the class.
|
|
30
|
-
|
|
31
|
-
PARAMETERS:
|
|
32
|
-
dtypes:
|
|
33
|
-
Required Argument.
|
|
34
|
-
Specifies the types, which can be part of the list.
|
|
35
|
-
Types: type or tuple of types
|
|
36
|
-
"""
|
|
37
|
-
self._type = dtypes
|
|
38
|
-
self.__explicit_bool_validation = False
|
|
39
|
-
self.__is_tuple = False
|
|
40
|
-
self._str_repr_prefix = "list of "
|
|
41
|
-
# If individual element type to be checked is int,
|
|
42
|
-
# then the bool values should be handled carefully, and
|
|
43
|
-
# hence set the '__explicit_bool_validation' to True.
|
|
44
|
-
if isinstance(self._type, type):
|
|
45
|
-
if self._type == int:
|
|
46
|
-
self.__explicit_bool_validation = True
|
|
47
|
-
elif isinstance(self._type, tuple):
|
|
48
|
-
self.__is_tuple = True
|
|
49
|
-
if int in self._type:
|
|
50
|
-
self.__explicit_bool_validation = True
|
|
51
|
-
|
|
52
|
-
def __str__(self):
|
|
53
|
-
"""
|
|
54
|
-
Returns the string representation of the class for printing in errors.
|
|
55
|
-
"""
|
|
56
|
-
if isinstance(self._type, type):
|
|
57
|
-
# If _type is instance of type, then retrieve the type name
|
|
58
|
-
# directly.
|
|
59
|
-
tval = self._type.__name__
|
|
60
|
-
elif isinstance(self._type, tuple):
|
|
61
|
-
# If _type is instance of type, then retrieve the name
|
|
62
|
-
# of the each type by joining them with " or ".
|
|
63
|
-
tval = " or ".join([x.__name__ for x in list(self._type)])
|
|
64
|
-
else:
|
|
65
|
-
# Anything else, just use it as is.
|
|
66
|
-
tval = self._type
|
|
67
|
-
return "{}{}".format(self._str_repr_prefix, tval)
|
|
68
|
-
|
|
69
|
-
def _element_instance_check(self, obj):
|
|
70
|
-
"""
|
|
71
|
-
Function validates each and every element in "obj" against the
|
|
72
|
-
expected type.
|
|
73
|
-
|
|
74
|
-
PARAMETERS:
|
|
75
|
-
obj:
|
|
76
|
-
Required Arguments.
|
|
77
|
-
Specifies the object containing elements to be verified.
|
|
78
|
-
Types: list
|
|
79
|
-
|
|
80
|
-
RETURNS:
|
|
81
|
-
True, if all elements are of type reference by self,__type,
|
|
82
|
-
False, otherwise.
|
|
83
|
-
"""
|
|
84
|
-
inst_bools = []
|
|
85
|
-
for val in obj:
|
|
86
|
-
if self.__explicit_bool_validation:
|
|
87
|
-
if self.__is_tuple:
|
|
88
|
-
inst_bools.append(type(val) in self._type)
|
|
89
|
-
else:
|
|
90
|
-
inst_bools.append(type(val) == self._type)
|
|
91
|
-
else:
|
|
92
|
-
inst_bools.append(isinstance(val, self._type))
|
|
93
|
-
return all(inst_bools)
|
|
94
|
-
|
|
95
|
-
def __instancecheck__(self, obj):
|
|
96
|
-
"""
|
|
97
|
-
Overrides a method to perform isinstance check.
|
|
98
|
-
"""
|
|
99
|
-
if not isinstance(obj, list):
|
|
100
|
-
# If obj is not instance of list, return False.
|
|
101
|
-
return False
|
|
102
|
-
|
|
103
|
-
return self._element_instance_check(obj)
|
|
104
|
-
|
|
105
|
-
class _TupleOf(_ListOf):
|
|
106
|
-
"""
|
|
107
|
-
A class to imitate the type - Tuple of x-type.
|
|
108
|
-
For example,
|
|
109
|
-
tuple of str
|
|
110
|
-
tuple of int or float
|
|
111
|
-
etc.
|
|
112
|
-
"""
|
|
113
|
-
|
|
114
|
-
def __init__(self, dtypes):
|
|
115
|
-
"""
|
|
116
|
-
Constructor of the class.
|
|
117
|
-
|
|
118
|
-
PARAMETERS:
|
|
119
|
-
dtypes:
|
|
120
|
-
Required Argument.
|
|
121
|
-
Specifies the types, which can be part of the tuple.
|
|
122
|
-
Types: type or tuple of types
|
|
123
|
-
"""
|
|
124
|
-
super(_TupleOf, self).__init__(dtypes)
|
|
125
|
-
self._str_repr_prefix = "tuple of "
|
|
126
|
-
|
|
127
|
-
def __instancecheck__(self, obj):
|
|
128
|
-
"""
|
|
129
|
-
Overrides a method to perform isinstance check.
|
|
130
|
-
"""
|
|
131
|
-
if not isinstance(obj, tuple):
|
|
132
|
-
# If obj is not instance of list, return False.
|
|
133
|
-
return False
|
|
134
|
-
|
|
135
|
-
return self._element_instance_check(obj)
|
|
136
|
-
|
|
137
|
-
# Some predefined types for list and tuples
|
|
138
|
-
_str_list = _ListOf(str)
|
|
139
|
-
_int_list = _ListOf(int)
|
|
140
|
-
_float_list = _ListOf(float)
|
|
141
|
-
_int_float_list = _ListOf((int, float))
|
|
142
|
-
_tuple_list = _ListOf(tuple)
|
|
143
|
-
_int_float_tuple_list = _ListOf(_TupleOf((int, float)))
|
|
144
|
-
|
|
145
|
-
# DataTypes mapper to store various categories of DataTypes.
|
|
146
|
-
_GET_DATATYPES = {
|
|
147
|
-
'NON_NUMERIC': [BLOB, BYTE, CHAR, CLOB, DATE, INTERVAL_DAY, INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE,
|
|
148
|
-
INTERVAL_DAY_TO_SECOND, INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND,
|
|
149
|
-
INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_MONTH, INTERVAL_SECOND, INTERVAL_YEAR,
|
|
150
|
-
INTERVAL_YEAR_TO_MONTH, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP, VARBYTE,
|
|
151
|
-
VARCHAR, GEOMETRY, MBB, MBR],
|
|
152
|
-
'NON_NUM_DATE_INTERVAL': [BLOB, BYTE, CHAR, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP,
|
|
153
|
-
VARBYTE, VARCHAR, GEOMETRY, MBB, MBR],
|
|
154
|
-
'NON_NUM_INTERVAL': [BLOB, BYTE, CHAR, CLOB, DATE, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP,
|
|
155
|
-
VARBYTE, VARCHAR, GEOMETRY, MBB, MBR],
|
|
156
|
-
'LOB_PERIOD': [BLOB, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, GEOMETRY, MBB, MBR],
|
|
157
|
-
'INTERVAL': [INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, INTERVAL_MONTH, INTERVAL_DAY,
|
|
158
|
-
INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND,
|
|
159
|
-
INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND,
|
|
160
|
-
INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_SECOND],
|
|
161
|
-
'PERIOD': [PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP],
|
|
162
|
-
'DATETIME': [DATE, TIME, TIMESTAMP],
|
|
163
|
-
'LOB_PERIOD_BYTE_GEOM': [BLOB, CLOB, BYTE, VARBYTE, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, GEOMETRY, MBB, MBR]
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
class _DtypesMappers:
|
|
168
|
-
AGGREGATE_UNSUPPORTED_TYPES = {
|
|
169
|
-
'avg': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
170
|
-
'mavg': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
171
|
-
'bottom': _GET_DATATYPES["NON_NUMERIC"],
|
|
172
|
-
'bottom with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
173
|
-
'count': [],
|
|
174
|
-
'first': _GET_DATATYPES["NON_NUMERIC"],
|
|
175
|
-
'kurtosis': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
176
|
-
'last': _GET_DATATYPES["NON_NUMERIC"],
|
|
177
|
-
'mad': _GET_DATATYPES["NON_NUMERIC"],
|
|
178
|
-
'max': _GET_DATATYPES["LOB_PERIOD"],
|
|
179
|
-
'mean': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
180
|
-
'median': _GET_DATATYPES["NON_NUMERIC"],
|
|
181
|
-
'min': _GET_DATATYPES["LOB_PERIOD"],
|
|
182
|
-
'mode': _GET_DATATYPES["NON_NUMERIC"],
|
|
183
|
-
'percentile': _GET_DATATYPES["NON_NUMERIC"],
|
|
184
|
-
'percentile_cont': _GET_DATATYPES["NON_NUMERIC"],
|
|
185
|
-
'percentile_disc': _GET_DATATYPES["NON_NUMERIC"],
|
|
186
|
-
'skew': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
187
|
-
'sum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
188
|
-
'csum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
189
|
-
'msum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
190
|
-
'mdiff': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
191
|
-
'mlinreg': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
192
|
-
'std': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
193
|
-
'stddev_pop': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
194
|
-
'stddev_samp': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
195
|
-
'top': _GET_DATATYPES["NON_NUMERIC"],
|
|
196
|
-
'top with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
197
|
-
'unique': [],
|
|
198
|
-
'var': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
199
|
-
'var_pop': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
200
|
-
'var_samp': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
201
|
-
'corr': _GET_DATATYPES["NON_NUMERIC"],
|
|
202
|
-
'regr_avgx': _GET_DATATYPES["NON_NUMERIC"],
|
|
203
|
-
'regr_avgy': _GET_DATATYPES["NON_NUMERIC"],
|
|
204
|
-
'regr_count': _GET_DATATYPES["NON_NUMERIC"],
|
|
205
|
-
'regr_intercept': _GET_DATATYPES["NON_NUMERIC"],
|
|
206
|
-
'regr_r2': _GET_DATATYPES["NON_NUMERIC"],
|
|
207
|
-
'regr_slope': _GET_DATATYPES["NON_NUMERIC"],
|
|
208
|
-
'regr_sxx': _GET_DATATYPES["NON_NUMERIC"],
|
|
209
|
-
'regr_sxy': _GET_DATATYPES["NON_NUMERIC"],
|
|
210
|
-
'regr_syy': _GET_DATATYPES["NON_NUMERIC"],
|
|
211
|
-
'covar_pop': _GET_DATATYPES["NON_NUMERIC"],
|
|
212
|
-
'covar_samp': _GET_DATATYPES["NON_NUMERIC"]
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
WINDOW_AGGREGATE_UNSUPPORTED_TYPES = {
|
|
216
|
-
'count': [PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP],
|
|
217
|
-
'max': [BYTE, VARBYTE, BLOB, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP,
|
|
218
|
-
GEOMETRY, MBB, MBR],
|
|
219
|
-
'min': [BYTE, VARBYTE, BLOB, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP,
|
|
220
|
-
GEOMETRY, MBB, MBR],
|
|
221
|
-
'lead': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"],
|
|
222
|
-
'lag': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"],
|
|
223
|
-
'first_value': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"],
|
|
224
|
-
'last_value': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"]
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
DESCRIBE_AGGREGATE_UNSUPPORTED_TYPES = {
|
|
228
|
-
'bottom': _GET_DATATYPES["NON_NUMERIC"],
|
|
229
|
-
'bottom with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
230
|
-
'count': [],
|
|
231
|
-
'first': _GET_DATATYPES["NON_NUMERIC"],
|
|
232
|
-
'last': _GET_DATATYPES["NON_NUMERIC"],
|
|
233
|
-
'mad': _GET_DATATYPES["NON_NUMERIC"],
|
|
234
|
-
'max': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
235
|
-
'mean': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
236
|
-
'avg': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
237
|
-
'median': _GET_DATATYPES["NON_NUMERIC"],
|
|
238
|
-
'min': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
239
|
-
'mode': _GET_DATATYPES["NON_NUMERIC"],
|
|
240
|
-
'percentile_cont': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
241
|
-
'percentile': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
242
|
-
'std': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
243
|
-
'stddev_samp': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
244
|
-
'sum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
245
|
-
'top': _GET_DATATYPES["NON_NUMERIC"],
|
|
246
|
-
'top with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
247
|
-
'unique': [BYTEINT, SMALLINT, INTEGER, BIGINT, DECIMAL, FLOAT, NUMBER]
|
|
248
|
-
}
|
|
249
|
-
PY_TD_MAPPER = {int: INTEGER,
|
|
250
|
-
float: FLOAT,
|
|
251
|
-
str: VARCHAR(1024),
|
|
252
|
-
bool: BYTEINT,
|
|
253
|
-
datetime: TIMESTAMP,
|
|
254
|
-
date: DATE,
|
|
255
|
-
time: TIME
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
# Mapper which stores the mapping between TD type specified in in analytic JSON files to Python type.
|
|
259
|
-
JSON_TD_TO_PYTHON_TYPE_MAPPER = {"BOOLEAN": bool,
|
|
260
|
-
"STRING": str,
|
|
261
|
-
"INTEGER": int,
|
|
262
|
-
"NUMERIC": (int, float),
|
|
263
|
-
"DOUBLE PRECISION": float,
|
|
264
|
-
"double precision": float,
|
|
265
|
-
"DOUBLE": (int, float),
|
|
266
|
-
"FLOAT": float,
|
|
267
|
-
"LONG": int,
|
|
268
|
-
"ARGLIST": list,
|
|
269
|
-
"COLUMNS": str,
|
|
270
|
-
"COLUMN": str,
|
|
271
|
-
"<TD_FORMULA>": str,
|
|
272
|
-
"COLUMN_NAMES": str,
|
|
273
|
-
"TIMESTAMPWZ": str,
|
|
274
|
-
"TIME-DURATION": str,
|
|
275
|
-
"JSON": dict
|
|
276
|
-
}
|
|
277
|
-
|
|
278
|
-
DATETIME_PERIOD_TYPES = _GET_DATATYPES["PERIOD"] + _GET_DATATYPES["DATETIME"]
|
|
279
|
-
INTERVAL_TYPES = _GET_DATATYPES["INTERVAL"]
|
|
280
|
-
|
|
281
|
-
TDSQLALCHEMY_DATATYPE_TO_VAL_STRING_MAPPER = {
|
|
282
|
-
BIGINT: lambda x: x.__class__.__name__,
|
|
283
|
-
BYTEINT: lambda x: x.__class__.__name__,
|
|
284
|
-
CHAR: lambda x: "{0},{1}".format(x.__class__.__name__, x.length),
|
|
285
|
-
DATE: lambda x: x.__class__.__name__,
|
|
286
|
-
DECIMAL: lambda x: "{0},{1},{2}".format(x.__class__.__name__, x.precision, x.scale),
|
|
287
|
-
FLOAT: lambda x: x.__class__.__name__,
|
|
288
|
-
NUMBER: lambda x: ','.join(map(str, (filter(None, [x.__class__.__name__, x.precision, x.scale])))),
|
|
289
|
-
INTEGER: lambda x: x.__class__.__name__,
|
|
290
|
-
SMALLINT: lambda x: x.__class__.__name__,
|
|
291
|
-
TIME: lambda x: "{0},{1}".format(x.__class__.__name__, x.precision),
|
|
292
|
-
TIMESTAMP: lambda x: "{0},{1}".format(x.__class__.__name__, x.precision),
|
|
293
|
-
VARCHAR: lambda x: "{0},{1}".format(x.__class__.__name__, x.length)
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
class _SuppArgTypes:
|
|
297
|
-
VAL_ARG_DATATYPE = (str, BIGINT, BYTEINT, CHAR, DATE, DECIMAL, FLOAT, INTEGER, NUMBER, SMALLINT, TIME,
|
|
298
|
-
TIMESTAMP, VARCHAR)
|
|
299
|
-
|
|
300
|
-
class _Dtypes:
|
|
301
|
-
|
|
302
|
-
@staticmethod
|
|
303
|
-
def _get_numeric_datatypes():
|
|
304
|
-
"""
|
|
305
|
-
Returns the numeric data types used in Teradata Vantage
|
|
306
|
-
**From : https://www.info.teradata.com/HTMLPubs/DB_TTU_16_00/
|
|
307
|
-
index.html#page/General_Reference/B035-1091-160K/psa1472241434371.html
|
|
308
|
-
|
|
309
|
-
PARAMETERS:
|
|
310
|
-
None
|
|
311
|
-
|
|
312
|
-
RAISES:
|
|
313
|
-
None
|
|
314
|
-
|
|
315
|
-
RETURNS:
|
|
316
|
-
List of numeric data types used in Teradata Vantage
|
|
317
|
-
"""
|
|
318
|
-
return [BYTEINT, SMALLINT, INTEGER, BIGINT, DECIMAL, FLOAT, NUMBER]
|
|
319
|
-
|
|
320
|
-
@staticmethod
|
|
321
|
-
def _get_timedate_datatypes():
|
|
322
|
-
"""
|
|
323
|
-
Returns a list of TimeDate data types.
|
|
324
|
-
|
|
325
|
-
PARAMETERS:
|
|
326
|
-
None
|
|
327
|
-
|
|
328
|
-
RAISES:
|
|
329
|
-
None
|
|
330
|
-
|
|
331
|
-
RETURNS:
|
|
332
|
-
List of TimeDate data types used in Teradata Vantage
|
|
333
|
-
"""
|
|
334
|
-
return [TIMESTAMP, DATE, TIME]
|
|
335
|
-
|
|
336
|
-
@staticmethod
|
|
337
|
-
def _get_character_datatypes():
|
|
338
|
-
"""
|
|
339
|
-
Returns a list of Character data types.
|
|
340
|
-
|
|
341
|
-
PARAMETERS:
|
|
342
|
-
None
|
|
343
|
-
|
|
344
|
-
RAISES:
|
|
345
|
-
None
|
|
346
|
-
|
|
347
|
-
RETURNS:
|
|
348
|
-
List of Character data types used in Teradata Vantage
|
|
349
|
-
"""
|
|
350
|
-
return [CHAR, VARCHAR, CLOB]
|
|
351
|
-
|
|
352
|
-
@staticmethod
|
|
353
|
-
def _get_byte_datatypes():
|
|
354
|
-
"""
|
|
355
|
-
Returns a list of byte like data types.
|
|
356
|
-
|
|
357
|
-
PARAMETERS:
|
|
358
|
-
None
|
|
359
|
-
|
|
360
|
-
RAISES:
|
|
361
|
-
None
|
|
362
|
-
|
|
363
|
-
RETURNS:
|
|
364
|
-
List of Byte data types used in Teradata Vantage
|
|
365
|
-
"""
|
|
366
|
-
return [BYTE, VARBYTE, BLOB]
|
|
367
|
-
|
|
368
|
-
@staticmethod
|
|
369
|
-
def _get_categorical_datatypes():
|
|
370
|
-
"""
|
|
371
|
-
Returns a list of containing Character and TimeDate data types.
|
|
372
|
-
|
|
373
|
-
PARAMETERS:
|
|
374
|
-
None
|
|
375
|
-
|
|
376
|
-
RAISES:
|
|
377
|
-
None
|
|
378
|
-
|
|
379
|
-
RETURNS:
|
|
380
|
-
List of Character and TimeDate data types used in Teradata Vantage
|
|
381
|
-
"""
|
|
382
|
-
return list.__add__(_Dtypes._get_character_datatypes(), _Dtypes._get_timedate_datatypes())
|
|
383
|
-
|
|
384
|
-
@staticmethod
|
|
385
|
-
def _get_all_datatypes():
|
|
386
|
-
"""
|
|
387
|
-
Returns a list of Character, Numeric and TimeDate data types.
|
|
388
|
-
|
|
389
|
-
PARAMETERS:
|
|
390
|
-
None
|
|
391
|
-
|
|
392
|
-
RAISES:
|
|
393
|
-
None
|
|
394
|
-
|
|
395
|
-
RETURNS:
|
|
396
|
-
List of Character, Numeric and TimeDate data types used in Teradata Vantage
|
|
397
|
-
"""
|
|
398
|
-
return list.__add__(_Dtypes._get_categorical_datatypes(), _Dtypes._get_numeric_datatypes())
|
|
399
|
-
|
|
400
|
-
@staticmethod
|
|
401
|
-
def _get_unsupported_data_types_for_aggregate_operations(operation,
|
|
402
|
-
as_time_series_aggregate=False,
|
|
403
|
-
is_window_aggregate=False):
|
|
404
|
-
"""
|
|
405
|
-
Returns the data types on which aggregate operations cannot
|
|
406
|
-
be performed eg : min, max, avg
|
|
407
|
-
|
|
408
|
-
PARAMETERS:
|
|
409
|
-
operation:
|
|
410
|
-
Required Argument.
|
|
411
|
-
Specifies an aggregate operation to be performed on the dataframe.
|
|
412
|
-
Types: str
|
|
413
|
-
|
|
414
|
-
as_time_series_aggregate:
|
|
415
|
-
Optional Argument.
|
|
416
|
-
Specifies whether aggregate operation is a Time Series aggregate or not.
|
|
417
|
-
Default Values: False
|
|
418
|
-
Types: bool
|
|
419
|
-
|
|
420
|
-
is_window_aggregate:
|
|
421
|
-
Optional Argument.
|
|
422
|
-
Specifies whether aggregate operation is a Window aggregate or not.
|
|
423
|
-
Default Values: False
|
|
424
|
-
Types: bool
|
|
425
|
-
|
|
426
|
-
RAISES:
|
|
427
|
-
None
|
|
428
|
-
|
|
429
|
-
RETURNS:
|
|
430
|
-
List of unsupported data types for aggregate operation in
|
|
431
|
-
Teradata Vantage eg : min, max, avg
|
|
432
|
-
"""
|
|
433
|
-
if operation == 'median' and not as_time_series_aggregate:
|
|
434
|
-
# For median as regular aggregate unsupported types are different than the ones
|
|
435
|
-
# mentioned in _DtypesMappers.AGGREGATE_UNSUPPORTED_TYPES
|
|
436
|
-
return [BLOB, BYTE, CHAR, CLOB, DATE, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP, VARCHAR]
|
|
437
|
-
|
|
438
|
-
# Return the unsupported types list, if key with 'operation' is found.
|
|
439
|
-
# If 'operation' is not found, return empty list which means all types
|
|
440
|
-
# are supported.
|
|
441
|
-
if is_window_aggregate:
|
|
442
|
-
# If operation is not present in WINDOW_AGGREGATE_UNSUPPORTED_TYPES
|
|
443
|
-
# then return the value from the AGGREGATE_UNSUPPORTED_TYPES mapper.
|
|
444
|
-
return _DtypesMappers.WINDOW_AGGREGATE_UNSUPPORTED_TYPES.get(operation,
|
|
445
|
-
_DtypesMappers.AGGREGATE_UNSUPPORTED_TYPES.get(operation, []))
|
|
446
|
-
return _DtypesMappers.AGGREGATE_UNSUPPORTED_TYPES.get(operation, [])
|
|
447
|
-
|
|
448
|
-
@staticmethod
|
|
449
|
-
def _get_unsupported_data_types_for_describe_operations(operation):
|
|
450
|
-
"""
|
|
451
|
-
Returns the data types on which the specified describe aggregate 'operation' cannot
|
|
452
|
-
be performed. This function is used by the method DataFrame.describe().
|
|
453
|
-
|
|
454
|
-
PARAMETERS:
|
|
455
|
-
operation : String. An aggregate operation to be performed on the dataframe.
|
|
456
|
-
possible values are 'sum', 'min', 'max', 'mean','std', 'percentile',
|
|
457
|
-
'count', and 'unique'.
|
|
458
|
-
|
|
459
|
-
RAISES:
|
|
460
|
-
None
|
|
461
|
-
|
|
462
|
-
RETURNS:
|
|
463
|
-
List of unsupported data types for describe operation in
|
|
464
|
-
Teradata Vantage eg : min, max, avg
|
|
465
|
-
"""
|
|
466
|
-
try:
|
|
467
|
-
# Return the unsupported types list, if key with operation 'operation' is found.
|
|
468
|
-
return _DtypesMappers.DESCRIBE_AGGREGATE_UNSUPPORTED_TYPES[operation]
|
|
469
|
-
except KeyError:
|
|
470
|
-
# We are here means, there are not unsupported types mentioned in
|
|
471
|
-
# _DtypesMappers.DESCRIBE_AGGREGATE_UNSUPPORTED_TYPES, so that means all types are supported.
|
|
472
|
-
return []
|
|
473
|
-
|
|
474
|
-
@staticmethod
|
|
475
|
-
def _get_sort_unsupported_data_types():
|
|
476
|
-
"""
|
|
477
|
-
Returns the data types on which sorting is invalid.
|
|
478
|
-
|
|
479
|
-
RAISES:
|
|
480
|
-
None
|
|
481
|
-
|
|
482
|
-
RETURNS:
|
|
483
|
-
list of teradatasqlalchemy.types
|
|
484
|
-
|
|
485
|
-
EXAMPLES:
|
|
486
|
-
_Dtypes._get_sort_unsupported_data_types()
|
|
487
|
-
"""
|
|
488
|
-
return [CLOB, BLOB]
|
|
489
|
-
|
|
490
|
-
@staticmethod
|
|
491
|
-
def _teradata_type_to_python_type(td_type):
|
|
492
|
-
"""
|
|
493
|
-
Translate the Teradata type from metaexpr to Python types.
|
|
494
|
-
PARAMETERS:
|
|
495
|
-
td_type - The Teradata type from metaexpr.
|
|
496
|
-
|
|
497
|
-
RETURNS:
|
|
498
|
-
The Python type for the given td_type.
|
|
499
|
-
|
|
500
|
-
RAISES:
|
|
501
|
-
|
|
502
|
-
EXAMPLES:
|
|
503
|
-
# o is an instance of INTEGER
|
|
504
|
-
pytype = _Dtypes._teradata_type_to_python_type(o)
|
|
505
|
-
|
|
506
|
-
"""
|
|
507
|
-
|
|
508
|
-
# loggerlogger.debug("_help_col_to_python_type td_type = {0} ".format(td_type))
|
|
509
|
-
if type(td_type) in TeradataTypes.TD_INTEGER_TYPES.value:
|
|
510
|
-
return PythonTypes.PY_INT_TYPE.value
|
|
511
|
-
elif type(td_type) in TeradataTypes.TD_FLOAT_TYPES.value:
|
|
512
|
-
return PythonTypes.PY_FLOAT_TYPE.value
|
|
513
|
-
elif type(td_type) in TeradataTypes.TD_DECIMAL_TYPES.value:
|
|
514
|
-
return PythonTypes.PY_DECIMAL_TYPE.value
|
|
515
|
-
elif type(td_type) in TeradataTypes.TD_BYTE_TYPES.value:
|
|
516
|
-
return PythonTypes.PY_BYTES_TYPE.value
|
|
517
|
-
elif type(td_type) in TeradataTypes.TD_DATETIME_TYPES.value:
|
|
518
|
-
return PythonTypes.PY_DATETIME_TYPE.value
|
|
519
|
-
elif type(td_type) in TeradataTypes.TD_TIME_TYPES.value:
|
|
520
|
-
return PythonTypes.PY_TIME_TYPE.value
|
|
521
|
-
elif type(td_type) in TeradataTypes.TD_DATE_TYPES.value:
|
|
522
|
-
return PythonTypes.PY_DATE_TYPE.value
|
|
523
|
-
|
|
524
|
-
return PythonTypes.PY_STRING_TYPE.value
|
|
525
|
-
|
|
526
|
-
@staticmethod
|
|
527
|
-
def _python_type_to_teradata_type(py_type):
|
|
528
|
-
"""
|
|
529
|
-
DESCRIPTION:
|
|
530
|
-
Translate the Python types to Teradata type.
|
|
531
|
-
|
|
532
|
-
PARAMETERS:
|
|
533
|
-
py_type:
|
|
534
|
-
Required Argument.
|
|
535
|
-
Specifies the Python type.
|
|
536
|
-
Types: type
|
|
537
|
-
|
|
538
|
-
RETURNS:
|
|
539
|
-
The teradatasqlalchemy type for the given py_type.
|
|
540
|
-
|
|
541
|
-
RAISES:
|
|
542
|
-
None
|
|
543
|
-
|
|
544
|
-
EXAMPLES:
|
|
545
|
-
tdtype = _Dtypes._python_type_to_teradata_type(int)
|
|
546
|
-
|
|
547
|
-
"""
|
|
548
|
-
|
|
549
|
-
return _DtypesMappers.PY_TD_MAPPER.get(py_type)
|
|
550
|
-
|
|
551
|
-
@staticmethod
|
|
552
|
-
def _help_col_to_python_type(col_type, storage_format):
|
|
553
|
-
"""
|
|
554
|
-
Translate the 1 or 2 character TD type codes from HELP COLUMN to Python types.
|
|
555
|
-
PARAMETERS:
|
|
556
|
-
col_type - The 1 or 2 character type code from HELP COLUMN command.
|
|
557
|
-
storage_format - The storage format from HELP COLUMN command.
|
|
558
|
-
|
|
559
|
-
RETURNS:
|
|
560
|
-
The Python type for the given col_type.
|
|
561
|
-
|
|
562
|
-
RAISES:
|
|
563
|
-
|
|
564
|
-
EXAMPLES:
|
|
565
|
-
pytype = _Dtypes._help_col_to_python_type('CV', None)
|
|
566
|
-
pytype = _Dtypes._help_col_to_python_type('DT', 'CSV')
|
|
567
|
-
|
|
568
|
-
"""
|
|
569
|
-
if col_type in TeradataTypes.TD_INTEGER_CODES.value:
|
|
570
|
-
return PythonTypes.PY_INT_TYPE.value
|
|
571
|
-
elif col_type in TeradataTypes.TD_FLOAT_CODES.value:
|
|
572
|
-
return PythonTypes.PY_FLOAT_TYPE.value
|
|
573
|
-
elif col_type in TeradataTypes.TD_DECIMAL_CODES.value:
|
|
574
|
-
return PythonTypes.PY_DECIMAL_TYPE.value
|
|
575
|
-
elif col_type in TeradataTypes.TD_BYTE_CODES.value:
|
|
576
|
-
return PythonTypes.PY_BYTES_TYPE.value
|
|
577
|
-
elif col_type in TeradataTypes.TD_DATETIME_CODES.value:
|
|
578
|
-
return PythonTypes.PY_DATETIME_TYPE.value
|
|
579
|
-
elif col_type in TeradataTypes.TD_TIME_CODES.value:
|
|
580
|
-
return PythonTypes.PY_TIME_TYPE.value
|
|
581
|
-
elif col_type in TeradataTypes.TD_DATE_CODES.value:
|
|
582
|
-
return PythonTypes.PY_DATE_TYPE.value
|
|
583
|
-
elif col_type == "DT":
|
|
584
|
-
sfmt = storage_format.strip()
|
|
585
|
-
if sfmt == "CSV":
|
|
586
|
-
return PythonTypes.PY_STRING_TYPE.value
|
|
587
|
-
elif sfmt == "AVRO":
|
|
588
|
-
return PythonTypes.PY_BYTES_TYPE.value
|
|
589
|
-
|
|
590
|
-
return PythonTypes.PY_STRING_TYPE.value
|
|
591
|
-
|
|
592
|
-
@staticmethod
|
|
593
|
-
def _help_col_to_td_type(col_type, udt_name, storage_format):
|
|
594
|
-
"""
|
|
595
|
-
Translate the 2 character TD type codes from HELP COLUMN to Teradata types.
|
|
596
|
-
PARAMETERS:
|
|
597
|
-
col_type - The 2 character type code from HELP COLUMN command.
|
|
598
|
-
udt_name - The UDT name from the HELP COLUMN command.
|
|
599
|
-
storage_format - The storage format from HELP COLUMN command.
|
|
600
|
-
|
|
601
|
-
RETURNS:
|
|
602
|
-
The Teradata type for the given colType.
|
|
603
|
-
|
|
604
|
-
RAISES:
|
|
605
|
-
|
|
606
|
-
EXAMPLES:
|
|
607
|
-
tdtype = _Dtypes._help_col_to_td_type('CV', None, None)
|
|
608
|
-
|
|
609
|
-
"""
|
|
610
|
-
# logger.debug("helpColumnToTeradataTypeName colType = {0} udtName = {1} storageFormat {2}".format(colType, udtName, storageFormat))
|
|
611
|
-
if col_type in HELP_COL_TYPE_TO_TDTYPE:
|
|
612
|
-
return HELP_COL_TYPE_TO_TDTYPE[col_type]
|
|
613
|
-
|
|
614
|
-
if col_type == "DT":
|
|
615
|
-
return "DATASET STORAGE FORMAT {0}".format(storage_format.strip())
|
|
616
|
-
|
|
617
|
-
if col_type in ["UD", "US", "UT", "A1", "AN"]:
|
|
618
|
-
if udt_name:
|
|
619
|
-
return udt_name
|
|
620
|
-
|
|
621
|
-
return col_type
|
|
622
|
-
|
|
623
|
-
@staticmethod
|
|
624
|
-
def _anly_json_type_to_python_type(json_td_type):
|
|
625
|
-
"""
|
|
626
|
-
DESCRIPTION:
|
|
627
|
-
Get the Python type equivalent to the specified type in analytic
|
|
628
|
-
JSON files.
|
|
629
|
-
|
|
630
|
-
PARAMETERS:
|
|
631
|
-
json_td_type:
|
|
632
|
-
Required Argument.
|
|
633
|
-
Specifies the TD type specified in analytic function json file.
|
|
634
|
-
Types: type
|
|
635
|
-
|
|
636
|
-
RETURNS:
|
|
637
|
-
type
|
|
638
|
-
|
|
639
|
-
EXAMPLES:
|
|
640
|
-
tdtype = _Dtypes._anly_json_type_to_python_type("NUMBER")
|
|
641
|
-
|
|
642
|
-
"""
|
|
643
|
-
from teradataml.dataframe.dataframe import TDSeries, TDMatrix, TDGenSeries, TDAnalyticResult
|
|
644
|
-
_DtypesMappers.JSON_TD_TO_PYTHON_TYPE_MAPPER.update({"SERIES": TDSeries,
|
|
645
|
-
"MATRIX": TDMatrix,
|
|
646
|
-
"ART": TDAnalyticResult,
|
|
647
|
-
"GENSERIES": TDGenSeries})
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
return _DtypesMappers.JSON_TD_TO_PYTHON_TYPE_MAPPER.get(json_td_type.upper())
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
@staticmethod
|
|
654
|
-
def _get_interval_data_types():
|
|
655
|
-
"""
|
|
656
|
-
Returns the INTERVAL data types.
|
|
657
|
-
|
|
658
|
-
RAISES:
|
|
659
|
-
None
|
|
660
|
-
|
|
661
|
-
RETURNS:
|
|
662
|
-
list of teradatasqlalchemy.types
|
|
663
|
-
|
|
664
|
-
EXAMPLES:
|
|
665
|
-
_Dtypes._get_interval_data_types()
|
|
666
|
-
"""
|
|
667
|
-
return _DtypesMappers.INTERVAL_TYPES
|
|
668
|
-
|
|
669
|
-
@staticmethod
|
|
670
|
-
def _get_datetime_period_data_types():
|
|
671
|
-
"""
|
|
672
|
-
Returns the PERIOD and DATETIME data types.
|
|
673
|
-
|
|
674
|
-
RAISES:
|
|
675
|
-
None
|
|
676
|
-
|
|
677
|
-
RETURNS:
|
|
678
|
-
list of teradatasqlalchemy.types
|
|
679
|
-
|
|
680
|
-
EXAMPLES:
|
|
681
|
-
_Dtypes._get_datetime_period_data_types()
|
|
682
|
-
"""
|
|
683
|
-
return _DtypesMappers.DATETIME_PERIOD_TYPES
|
|
684
|
-
|
|
1
|
+
from teradatasqlalchemy import (BYTEINT, SMALLINT, INTEGER, BIGINT, DECIMAL, FLOAT, NUMBER)
|
|
2
|
+
from teradatasqlalchemy import (TIMESTAMP, DATE, TIME)
|
|
3
|
+
from teradatasqlalchemy import (CHAR, VARCHAR, CLOB)
|
|
4
|
+
from teradatasqlalchemy import (BYTE, VARBYTE, BLOB)
|
|
5
|
+
from teradatasqlalchemy import (PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP)
|
|
6
|
+
from teradatasqlalchemy import (INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, INTERVAL_MONTH, INTERVAL_DAY,
|
|
7
|
+
INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND,
|
|
8
|
+
INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND,
|
|
9
|
+
INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_SECOND)
|
|
10
|
+
from teradatasqlalchemy import (GEOMETRY, MBB, MBR)
|
|
11
|
+
from teradataml.common.td_coltype_code_to_tdtype import HELP_COL_TYPE_TO_TDTYPE
|
|
12
|
+
from teradataml.common.constants import TeradataTypes, PythonTypes
|
|
13
|
+
from datetime import datetime, time, date
|
|
14
|
+
|
|
15
|
+
#
|
|
16
|
+
# Pre-defined class for validating argument types for args that accept list or
|
|
17
|
+
# tuple as input.
|
|
18
|
+
#
|
|
19
|
+
class _ListOf:
|
|
20
|
+
"""
|
|
21
|
+
A class to imitate the type - List of x-type.
|
|
22
|
+
For example,
|
|
23
|
+
list of str
|
|
24
|
+
list of int or float
|
|
25
|
+
etc.
|
|
26
|
+
"""
|
|
27
|
+
def __init__(self, dtypes):
|
|
28
|
+
"""
|
|
29
|
+
Constructor of the class.
|
|
30
|
+
|
|
31
|
+
PARAMETERS:
|
|
32
|
+
dtypes:
|
|
33
|
+
Required Argument.
|
|
34
|
+
Specifies the types, which can be part of the list.
|
|
35
|
+
Types: type or tuple of types
|
|
36
|
+
"""
|
|
37
|
+
self._type = dtypes
|
|
38
|
+
self.__explicit_bool_validation = False
|
|
39
|
+
self.__is_tuple = False
|
|
40
|
+
self._str_repr_prefix = "list of "
|
|
41
|
+
# If individual element type to be checked is int,
|
|
42
|
+
# then the bool values should be handled carefully, and
|
|
43
|
+
# hence set the '__explicit_bool_validation' to True.
|
|
44
|
+
if isinstance(self._type, type):
|
|
45
|
+
if self._type == int:
|
|
46
|
+
self.__explicit_bool_validation = True
|
|
47
|
+
elif isinstance(self._type, tuple):
|
|
48
|
+
self.__is_tuple = True
|
|
49
|
+
if int in self._type:
|
|
50
|
+
self.__explicit_bool_validation = True
|
|
51
|
+
|
|
52
|
+
def __str__(self):
|
|
53
|
+
"""
|
|
54
|
+
Returns the string representation of the class for printing in errors.
|
|
55
|
+
"""
|
|
56
|
+
if isinstance(self._type, type):
|
|
57
|
+
# If _type is instance of type, then retrieve the type name
|
|
58
|
+
# directly.
|
|
59
|
+
tval = self._type.__name__
|
|
60
|
+
elif isinstance(self._type, tuple):
|
|
61
|
+
# If _type is instance of type, then retrieve the name
|
|
62
|
+
# of the each type by joining them with " or ".
|
|
63
|
+
tval = " or ".join([x.__name__ for x in list(self._type)])
|
|
64
|
+
else:
|
|
65
|
+
# Anything else, just use it as is.
|
|
66
|
+
tval = self._type
|
|
67
|
+
return "{}{}".format(self._str_repr_prefix, tval)
|
|
68
|
+
|
|
69
|
+
def _element_instance_check(self, obj):
|
|
70
|
+
"""
|
|
71
|
+
Function validates each and every element in "obj" against the
|
|
72
|
+
expected type.
|
|
73
|
+
|
|
74
|
+
PARAMETERS:
|
|
75
|
+
obj:
|
|
76
|
+
Required Arguments.
|
|
77
|
+
Specifies the object containing elements to be verified.
|
|
78
|
+
Types: list
|
|
79
|
+
|
|
80
|
+
RETURNS:
|
|
81
|
+
True, if all elements are of type reference by self,__type,
|
|
82
|
+
False, otherwise.
|
|
83
|
+
"""
|
|
84
|
+
inst_bools = []
|
|
85
|
+
for val in obj:
|
|
86
|
+
if self.__explicit_bool_validation:
|
|
87
|
+
if self.__is_tuple:
|
|
88
|
+
inst_bools.append(type(val) in self._type)
|
|
89
|
+
else:
|
|
90
|
+
inst_bools.append(type(val) == self._type)
|
|
91
|
+
else:
|
|
92
|
+
inst_bools.append(isinstance(val, self._type))
|
|
93
|
+
return all(inst_bools)
|
|
94
|
+
|
|
95
|
+
def __instancecheck__(self, obj):
|
|
96
|
+
"""
|
|
97
|
+
Overrides a method to perform isinstance check.
|
|
98
|
+
"""
|
|
99
|
+
if not isinstance(obj, list):
|
|
100
|
+
# If obj is not instance of list, return False.
|
|
101
|
+
return False
|
|
102
|
+
|
|
103
|
+
return self._element_instance_check(obj)
|
|
104
|
+
|
|
105
|
+
class _TupleOf(_ListOf):
|
|
106
|
+
"""
|
|
107
|
+
A class to imitate the type - Tuple of x-type.
|
|
108
|
+
For example,
|
|
109
|
+
tuple of str
|
|
110
|
+
tuple of int or float
|
|
111
|
+
etc.
|
|
112
|
+
"""
|
|
113
|
+
|
|
114
|
+
def __init__(self, dtypes):
|
|
115
|
+
"""
|
|
116
|
+
Constructor of the class.
|
|
117
|
+
|
|
118
|
+
PARAMETERS:
|
|
119
|
+
dtypes:
|
|
120
|
+
Required Argument.
|
|
121
|
+
Specifies the types, which can be part of the tuple.
|
|
122
|
+
Types: type or tuple of types
|
|
123
|
+
"""
|
|
124
|
+
super(_TupleOf, self).__init__(dtypes)
|
|
125
|
+
self._str_repr_prefix = "tuple of "
|
|
126
|
+
|
|
127
|
+
def __instancecheck__(self, obj):
|
|
128
|
+
"""
|
|
129
|
+
Overrides a method to perform isinstance check.
|
|
130
|
+
"""
|
|
131
|
+
if not isinstance(obj, tuple):
|
|
132
|
+
# If obj is not instance of list, return False.
|
|
133
|
+
return False
|
|
134
|
+
|
|
135
|
+
return self._element_instance_check(obj)
|
|
136
|
+
|
|
137
|
+
# Some predefined types for list and tuples
|
|
138
|
+
_str_list = _ListOf(str)
|
|
139
|
+
_int_list = _ListOf(int)
|
|
140
|
+
_float_list = _ListOf(float)
|
|
141
|
+
_int_float_list = _ListOf((int, float))
|
|
142
|
+
_tuple_list = _ListOf(tuple)
|
|
143
|
+
_int_float_tuple_list = _ListOf(_TupleOf((int, float)))
|
|
144
|
+
|
|
145
|
+
# DataTypes mapper to store various categories of DataTypes.
|
|
146
|
+
_GET_DATATYPES = {
|
|
147
|
+
'NON_NUMERIC': [BLOB, BYTE, CHAR, CLOB, DATE, INTERVAL_DAY, INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE,
|
|
148
|
+
INTERVAL_DAY_TO_SECOND, INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND,
|
|
149
|
+
INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_MONTH, INTERVAL_SECOND, INTERVAL_YEAR,
|
|
150
|
+
INTERVAL_YEAR_TO_MONTH, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP, VARBYTE,
|
|
151
|
+
VARCHAR, GEOMETRY, MBB, MBR],
|
|
152
|
+
'NON_NUM_DATE_INTERVAL': [BLOB, BYTE, CHAR, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP,
|
|
153
|
+
VARBYTE, VARCHAR, GEOMETRY, MBB, MBR],
|
|
154
|
+
'NON_NUM_INTERVAL': [BLOB, BYTE, CHAR, CLOB, DATE, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP,
|
|
155
|
+
VARBYTE, VARCHAR, GEOMETRY, MBB, MBR],
|
|
156
|
+
'LOB_PERIOD': [BLOB, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, GEOMETRY, MBB, MBR],
|
|
157
|
+
'INTERVAL': [INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, INTERVAL_MONTH, INTERVAL_DAY,
|
|
158
|
+
INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND,
|
|
159
|
+
INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND,
|
|
160
|
+
INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_SECOND],
|
|
161
|
+
'PERIOD': [PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP],
|
|
162
|
+
'DATETIME': [DATE, TIME, TIMESTAMP],
|
|
163
|
+
'LOB_PERIOD_BYTE_GEOM': [BLOB, CLOB, BYTE, VARBYTE, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, GEOMETRY, MBB, MBR]
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
class _DtypesMappers:
|
|
168
|
+
AGGREGATE_UNSUPPORTED_TYPES = {
|
|
169
|
+
'avg': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
170
|
+
'mavg': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
171
|
+
'bottom': _GET_DATATYPES["NON_NUMERIC"],
|
|
172
|
+
'bottom with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
173
|
+
'count': [],
|
|
174
|
+
'first': _GET_DATATYPES["NON_NUMERIC"],
|
|
175
|
+
'kurtosis': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
176
|
+
'last': _GET_DATATYPES["NON_NUMERIC"],
|
|
177
|
+
'mad': _GET_DATATYPES["NON_NUMERIC"],
|
|
178
|
+
'max': _GET_DATATYPES["LOB_PERIOD"],
|
|
179
|
+
'mean': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
180
|
+
'median': _GET_DATATYPES["NON_NUMERIC"],
|
|
181
|
+
'min': _GET_DATATYPES["LOB_PERIOD"],
|
|
182
|
+
'mode': _GET_DATATYPES["NON_NUMERIC"],
|
|
183
|
+
'percentile': _GET_DATATYPES["NON_NUMERIC"],
|
|
184
|
+
'percentile_cont': _GET_DATATYPES["NON_NUMERIC"],
|
|
185
|
+
'percentile_disc': _GET_DATATYPES["NON_NUMERIC"],
|
|
186
|
+
'skew': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
187
|
+
'sum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
188
|
+
'csum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
189
|
+
'msum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
190
|
+
'mdiff': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
191
|
+
'mlinreg': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
192
|
+
'std': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
193
|
+
'stddev_pop': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
194
|
+
'stddev_samp': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
195
|
+
'top': _GET_DATATYPES["NON_NUMERIC"],
|
|
196
|
+
'top with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
197
|
+
'unique': [],
|
|
198
|
+
'var': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
199
|
+
'var_pop': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
200
|
+
'var_samp': _GET_DATATYPES["NON_NUM_DATE_INTERVAL"],
|
|
201
|
+
'corr': _GET_DATATYPES["NON_NUMERIC"],
|
|
202
|
+
'regr_avgx': _GET_DATATYPES["NON_NUMERIC"],
|
|
203
|
+
'regr_avgy': _GET_DATATYPES["NON_NUMERIC"],
|
|
204
|
+
'regr_count': _GET_DATATYPES["NON_NUMERIC"],
|
|
205
|
+
'regr_intercept': _GET_DATATYPES["NON_NUMERIC"],
|
|
206
|
+
'regr_r2': _GET_DATATYPES["NON_NUMERIC"],
|
|
207
|
+
'regr_slope': _GET_DATATYPES["NON_NUMERIC"],
|
|
208
|
+
'regr_sxx': _GET_DATATYPES["NON_NUMERIC"],
|
|
209
|
+
'regr_sxy': _GET_DATATYPES["NON_NUMERIC"],
|
|
210
|
+
'regr_syy': _GET_DATATYPES["NON_NUMERIC"],
|
|
211
|
+
'covar_pop': _GET_DATATYPES["NON_NUMERIC"],
|
|
212
|
+
'covar_samp': _GET_DATATYPES["NON_NUMERIC"]
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
WINDOW_AGGREGATE_UNSUPPORTED_TYPES = {
|
|
216
|
+
'count': [PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP],
|
|
217
|
+
'max': [BYTE, VARBYTE, BLOB, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP,
|
|
218
|
+
GEOMETRY, MBB, MBR],
|
|
219
|
+
'min': [BYTE, VARBYTE, BLOB, CLOB, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP,
|
|
220
|
+
GEOMETRY, MBB, MBR],
|
|
221
|
+
'lead': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"],
|
|
222
|
+
'lag': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"],
|
|
223
|
+
'first_value': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"],
|
|
224
|
+
'last_value': _GET_DATATYPES["LOB_PERIOD_BYTE_GEOM"]
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
DESCRIBE_AGGREGATE_UNSUPPORTED_TYPES = {
|
|
228
|
+
'bottom': _GET_DATATYPES["NON_NUMERIC"],
|
|
229
|
+
'bottom with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
230
|
+
'count': [],
|
|
231
|
+
'first': _GET_DATATYPES["NON_NUMERIC"],
|
|
232
|
+
'last': _GET_DATATYPES["NON_NUMERIC"],
|
|
233
|
+
'mad': _GET_DATATYPES["NON_NUMERIC"],
|
|
234
|
+
'max': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
235
|
+
'mean': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
236
|
+
'avg': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
237
|
+
'median': _GET_DATATYPES["NON_NUMERIC"],
|
|
238
|
+
'min': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
239
|
+
'mode': _GET_DATATYPES["NON_NUMERIC"],
|
|
240
|
+
'percentile_cont': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
241
|
+
'percentile': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
242
|
+
'std': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
243
|
+
'stddev_samp': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
244
|
+
'sum': _GET_DATATYPES["NON_NUM_INTERVAL"],
|
|
245
|
+
'top': _GET_DATATYPES["NON_NUMERIC"],
|
|
246
|
+
'top with ties': _GET_DATATYPES["NON_NUMERIC"],
|
|
247
|
+
'unique': [BYTEINT, SMALLINT, INTEGER, BIGINT, DECIMAL, FLOAT, NUMBER]
|
|
248
|
+
}
|
|
249
|
+
PY_TD_MAPPER = {int: INTEGER,
|
|
250
|
+
float: FLOAT,
|
|
251
|
+
str: VARCHAR(1024),
|
|
252
|
+
bool: BYTEINT,
|
|
253
|
+
datetime: TIMESTAMP,
|
|
254
|
+
date: DATE,
|
|
255
|
+
time: TIME
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
# Mapper which stores the mapping between TD type specified in in analytic JSON files to Python type.
|
|
259
|
+
JSON_TD_TO_PYTHON_TYPE_MAPPER = {"BOOLEAN": bool,
|
|
260
|
+
"STRING": str,
|
|
261
|
+
"INTEGER": int,
|
|
262
|
+
"NUMERIC": (int, float),
|
|
263
|
+
"DOUBLE PRECISION": float,
|
|
264
|
+
"double precision": float,
|
|
265
|
+
"DOUBLE": (int, float),
|
|
266
|
+
"FLOAT": float,
|
|
267
|
+
"LONG": int,
|
|
268
|
+
"ARGLIST": list,
|
|
269
|
+
"COLUMNS": str,
|
|
270
|
+
"COLUMN": str,
|
|
271
|
+
"<TD_FORMULA>": str,
|
|
272
|
+
"COLUMN_NAMES": str,
|
|
273
|
+
"TIMESTAMPWZ": str,
|
|
274
|
+
"TIME-DURATION": str,
|
|
275
|
+
"JSON": dict
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
DATETIME_PERIOD_TYPES = _GET_DATATYPES["PERIOD"] + _GET_DATATYPES["DATETIME"]
|
|
279
|
+
INTERVAL_TYPES = _GET_DATATYPES["INTERVAL"]
|
|
280
|
+
|
|
281
|
+
TDSQLALCHEMY_DATATYPE_TO_VAL_STRING_MAPPER = {
|
|
282
|
+
BIGINT: lambda x: x.__class__.__name__,
|
|
283
|
+
BYTEINT: lambda x: x.__class__.__name__,
|
|
284
|
+
CHAR: lambda x: "{0},{1}".format(x.__class__.__name__, x.length),
|
|
285
|
+
DATE: lambda x: x.__class__.__name__,
|
|
286
|
+
DECIMAL: lambda x: "{0},{1},{2}".format(x.__class__.__name__, x.precision, x.scale),
|
|
287
|
+
FLOAT: lambda x: x.__class__.__name__,
|
|
288
|
+
NUMBER: lambda x: ','.join(map(str, (filter(None, [x.__class__.__name__, x.precision, x.scale])))),
|
|
289
|
+
INTEGER: lambda x: x.__class__.__name__,
|
|
290
|
+
SMALLINT: lambda x: x.__class__.__name__,
|
|
291
|
+
TIME: lambda x: "{0},{1}".format(x.__class__.__name__, x.precision),
|
|
292
|
+
TIMESTAMP: lambda x: "{0},{1}".format(x.__class__.__name__, x.precision),
|
|
293
|
+
VARCHAR: lambda x: "{0},{1}".format(x.__class__.__name__, x.length)
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
class _SuppArgTypes:
|
|
297
|
+
VAL_ARG_DATATYPE = (str, BIGINT, BYTEINT, CHAR, DATE, DECIMAL, FLOAT, INTEGER, NUMBER, SMALLINT, TIME,
|
|
298
|
+
TIMESTAMP, VARCHAR)
|
|
299
|
+
|
|
300
|
+
class _Dtypes:
|
|
301
|
+
|
|
302
|
+
@staticmethod
|
|
303
|
+
def _get_numeric_datatypes():
|
|
304
|
+
"""
|
|
305
|
+
Returns the numeric data types used in Teradata Vantage
|
|
306
|
+
**From : https://www.info.teradata.com/HTMLPubs/DB_TTU_16_00/
|
|
307
|
+
index.html#page/General_Reference/B035-1091-160K/psa1472241434371.html
|
|
308
|
+
|
|
309
|
+
PARAMETERS:
|
|
310
|
+
None
|
|
311
|
+
|
|
312
|
+
RAISES:
|
|
313
|
+
None
|
|
314
|
+
|
|
315
|
+
RETURNS:
|
|
316
|
+
List of numeric data types used in Teradata Vantage
|
|
317
|
+
"""
|
|
318
|
+
return [BYTEINT, SMALLINT, INTEGER, BIGINT, DECIMAL, FLOAT, NUMBER]
|
|
319
|
+
|
|
320
|
+
@staticmethod
|
|
321
|
+
def _get_timedate_datatypes():
|
|
322
|
+
"""
|
|
323
|
+
Returns a list of TimeDate data types.
|
|
324
|
+
|
|
325
|
+
PARAMETERS:
|
|
326
|
+
None
|
|
327
|
+
|
|
328
|
+
RAISES:
|
|
329
|
+
None
|
|
330
|
+
|
|
331
|
+
RETURNS:
|
|
332
|
+
List of TimeDate data types used in Teradata Vantage
|
|
333
|
+
"""
|
|
334
|
+
return [TIMESTAMP, DATE, TIME]
|
|
335
|
+
|
|
336
|
+
@staticmethod
|
|
337
|
+
def _get_character_datatypes():
|
|
338
|
+
"""
|
|
339
|
+
Returns a list of Character data types.
|
|
340
|
+
|
|
341
|
+
PARAMETERS:
|
|
342
|
+
None
|
|
343
|
+
|
|
344
|
+
RAISES:
|
|
345
|
+
None
|
|
346
|
+
|
|
347
|
+
RETURNS:
|
|
348
|
+
List of Character data types used in Teradata Vantage
|
|
349
|
+
"""
|
|
350
|
+
return [CHAR, VARCHAR, CLOB]
|
|
351
|
+
|
|
352
|
+
@staticmethod
|
|
353
|
+
def _get_byte_datatypes():
|
|
354
|
+
"""
|
|
355
|
+
Returns a list of byte like data types.
|
|
356
|
+
|
|
357
|
+
PARAMETERS:
|
|
358
|
+
None
|
|
359
|
+
|
|
360
|
+
RAISES:
|
|
361
|
+
None
|
|
362
|
+
|
|
363
|
+
RETURNS:
|
|
364
|
+
List of Byte data types used in Teradata Vantage
|
|
365
|
+
"""
|
|
366
|
+
return [BYTE, VARBYTE, BLOB]
|
|
367
|
+
|
|
368
|
+
@staticmethod
|
|
369
|
+
def _get_categorical_datatypes():
|
|
370
|
+
"""
|
|
371
|
+
Returns a list of containing Character and TimeDate data types.
|
|
372
|
+
|
|
373
|
+
PARAMETERS:
|
|
374
|
+
None
|
|
375
|
+
|
|
376
|
+
RAISES:
|
|
377
|
+
None
|
|
378
|
+
|
|
379
|
+
RETURNS:
|
|
380
|
+
List of Character and TimeDate data types used in Teradata Vantage
|
|
381
|
+
"""
|
|
382
|
+
return list.__add__(_Dtypes._get_character_datatypes(), _Dtypes._get_timedate_datatypes())
|
|
383
|
+
|
|
384
|
+
@staticmethod
|
|
385
|
+
def _get_all_datatypes():
|
|
386
|
+
"""
|
|
387
|
+
Returns a list of Character, Numeric and TimeDate data types.
|
|
388
|
+
|
|
389
|
+
PARAMETERS:
|
|
390
|
+
None
|
|
391
|
+
|
|
392
|
+
RAISES:
|
|
393
|
+
None
|
|
394
|
+
|
|
395
|
+
RETURNS:
|
|
396
|
+
List of Character, Numeric and TimeDate data types used in Teradata Vantage
|
|
397
|
+
"""
|
|
398
|
+
return list.__add__(_Dtypes._get_categorical_datatypes(), _Dtypes._get_numeric_datatypes())
|
|
399
|
+
|
|
400
|
+
@staticmethod
|
|
401
|
+
def _get_unsupported_data_types_for_aggregate_operations(operation,
|
|
402
|
+
as_time_series_aggregate=False,
|
|
403
|
+
is_window_aggregate=False):
|
|
404
|
+
"""
|
|
405
|
+
Returns the data types on which aggregate operations cannot
|
|
406
|
+
be performed eg : min, max, avg
|
|
407
|
+
|
|
408
|
+
PARAMETERS:
|
|
409
|
+
operation:
|
|
410
|
+
Required Argument.
|
|
411
|
+
Specifies an aggregate operation to be performed on the dataframe.
|
|
412
|
+
Types: str
|
|
413
|
+
|
|
414
|
+
as_time_series_aggregate:
|
|
415
|
+
Optional Argument.
|
|
416
|
+
Specifies whether aggregate operation is a Time Series aggregate or not.
|
|
417
|
+
Default Values: False
|
|
418
|
+
Types: bool
|
|
419
|
+
|
|
420
|
+
is_window_aggregate:
|
|
421
|
+
Optional Argument.
|
|
422
|
+
Specifies whether aggregate operation is a Window aggregate or not.
|
|
423
|
+
Default Values: False
|
|
424
|
+
Types: bool
|
|
425
|
+
|
|
426
|
+
RAISES:
|
|
427
|
+
None
|
|
428
|
+
|
|
429
|
+
RETURNS:
|
|
430
|
+
List of unsupported data types for aggregate operation in
|
|
431
|
+
Teradata Vantage eg : min, max, avg
|
|
432
|
+
"""
|
|
433
|
+
if operation == 'median' and not as_time_series_aggregate:
|
|
434
|
+
# For median as regular aggregate unsupported types are different than the ones
|
|
435
|
+
# mentioned in _DtypesMappers.AGGREGATE_UNSUPPORTED_TYPES
|
|
436
|
+
return [BLOB, BYTE, CHAR, CLOB, DATE, PERIOD_DATE, PERIOD_TIME, PERIOD_TIMESTAMP, TIME, TIMESTAMP, VARCHAR]
|
|
437
|
+
|
|
438
|
+
# Return the unsupported types list, if key with 'operation' is found.
|
|
439
|
+
# If 'operation' is not found, return empty list which means all types
|
|
440
|
+
# are supported.
|
|
441
|
+
if is_window_aggregate:
|
|
442
|
+
# If operation is not present in WINDOW_AGGREGATE_UNSUPPORTED_TYPES
|
|
443
|
+
# then return the value from the AGGREGATE_UNSUPPORTED_TYPES mapper.
|
|
444
|
+
return _DtypesMappers.WINDOW_AGGREGATE_UNSUPPORTED_TYPES.get(operation,
|
|
445
|
+
_DtypesMappers.AGGREGATE_UNSUPPORTED_TYPES.get(operation, []))
|
|
446
|
+
return _DtypesMappers.AGGREGATE_UNSUPPORTED_TYPES.get(operation, [])
|
|
447
|
+
|
|
448
|
+
@staticmethod
|
|
449
|
+
def _get_unsupported_data_types_for_describe_operations(operation):
|
|
450
|
+
"""
|
|
451
|
+
Returns the data types on which the specified describe aggregate 'operation' cannot
|
|
452
|
+
be performed. This function is used by the method DataFrame.describe().
|
|
453
|
+
|
|
454
|
+
PARAMETERS:
|
|
455
|
+
operation : String. An aggregate operation to be performed on the dataframe.
|
|
456
|
+
possible values are 'sum', 'min', 'max', 'mean','std', 'percentile',
|
|
457
|
+
'count', and 'unique'.
|
|
458
|
+
|
|
459
|
+
RAISES:
|
|
460
|
+
None
|
|
461
|
+
|
|
462
|
+
RETURNS:
|
|
463
|
+
List of unsupported data types for describe operation in
|
|
464
|
+
Teradata Vantage eg : min, max, avg
|
|
465
|
+
"""
|
|
466
|
+
try:
|
|
467
|
+
# Return the unsupported types list, if key with operation 'operation' is found.
|
|
468
|
+
return _DtypesMappers.DESCRIBE_AGGREGATE_UNSUPPORTED_TYPES[operation]
|
|
469
|
+
except KeyError:
|
|
470
|
+
# We are here means, there are not unsupported types mentioned in
|
|
471
|
+
# _DtypesMappers.DESCRIBE_AGGREGATE_UNSUPPORTED_TYPES, so that means all types are supported.
|
|
472
|
+
return []
|
|
473
|
+
|
|
474
|
+
@staticmethod
|
|
475
|
+
def _get_sort_unsupported_data_types():
|
|
476
|
+
"""
|
|
477
|
+
Returns the data types on which sorting is invalid.
|
|
478
|
+
|
|
479
|
+
RAISES:
|
|
480
|
+
None
|
|
481
|
+
|
|
482
|
+
RETURNS:
|
|
483
|
+
list of teradatasqlalchemy.types
|
|
484
|
+
|
|
485
|
+
EXAMPLES:
|
|
486
|
+
_Dtypes._get_sort_unsupported_data_types()
|
|
487
|
+
"""
|
|
488
|
+
return [CLOB, BLOB]
|
|
489
|
+
|
|
490
|
+
@staticmethod
|
|
491
|
+
def _teradata_type_to_python_type(td_type):
|
|
492
|
+
"""
|
|
493
|
+
Translate the Teradata type from metaexpr to Python types.
|
|
494
|
+
PARAMETERS:
|
|
495
|
+
td_type - The Teradata type from metaexpr.
|
|
496
|
+
|
|
497
|
+
RETURNS:
|
|
498
|
+
The Python type for the given td_type.
|
|
499
|
+
|
|
500
|
+
RAISES:
|
|
501
|
+
|
|
502
|
+
EXAMPLES:
|
|
503
|
+
# o is an instance of INTEGER
|
|
504
|
+
pytype = _Dtypes._teradata_type_to_python_type(o)
|
|
505
|
+
|
|
506
|
+
"""
|
|
507
|
+
|
|
508
|
+
# loggerlogger.debug("_help_col_to_python_type td_type = {0} ".format(td_type))
|
|
509
|
+
if type(td_type) in TeradataTypes.TD_INTEGER_TYPES.value:
|
|
510
|
+
return PythonTypes.PY_INT_TYPE.value
|
|
511
|
+
elif type(td_type) in TeradataTypes.TD_FLOAT_TYPES.value:
|
|
512
|
+
return PythonTypes.PY_FLOAT_TYPE.value
|
|
513
|
+
elif type(td_type) in TeradataTypes.TD_DECIMAL_TYPES.value:
|
|
514
|
+
return PythonTypes.PY_DECIMAL_TYPE.value
|
|
515
|
+
elif type(td_type) in TeradataTypes.TD_BYTE_TYPES.value:
|
|
516
|
+
return PythonTypes.PY_BYTES_TYPE.value
|
|
517
|
+
elif type(td_type) in TeradataTypes.TD_DATETIME_TYPES.value:
|
|
518
|
+
return PythonTypes.PY_DATETIME_TYPE.value
|
|
519
|
+
elif type(td_type) in TeradataTypes.TD_TIME_TYPES.value:
|
|
520
|
+
return PythonTypes.PY_TIME_TYPE.value
|
|
521
|
+
elif type(td_type) in TeradataTypes.TD_DATE_TYPES.value:
|
|
522
|
+
return PythonTypes.PY_DATE_TYPE.value
|
|
523
|
+
|
|
524
|
+
return PythonTypes.PY_STRING_TYPE.value
|
|
525
|
+
|
|
526
|
+
@staticmethod
|
|
527
|
+
def _python_type_to_teradata_type(py_type):
|
|
528
|
+
"""
|
|
529
|
+
DESCRIPTION:
|
|
530
|
+
Translate the Python types to Teradata type.
|
|
531
|
+
|
|
532
|
+
PARAMETERS:
|
|
533
|
+
py_type:
|
|
534
|
+
Required Argument.
|
|
535
|
+
Specifies the Python type.
|
|
536
|
+
Types: type
|
|
537
|
+
|
|
538
|
+
RETURNS:
|
|
539
|
+
The teradatasqlalchemy type for the given py_type.
|
|
540
|
+
|
|
541
|
+
RAISES:
|
|
542
|
+
None
|
|
543
|
+
|
|
544
|
+
EXAMPLES:
|
|
545
|
+
tdtype = _Dtypes._python_type_to_teradata_type(int)
|
|
546
|
+
|
|
547
|
+
"""
|
|
548
|
+
|
|
549
|
+
return _DtypesMappers.PY_TD_MAPPER.get(py_type)
|
|
550
|
+
|
|
551
|
+
@staticmethod
|
|
552
|
+
def _help_col_to_python_type(col_type, storage_format):
|
|
553
|
+
"""
|
|
554
|
+
Translate the 1 or 2 character TD type codes from HELP COLUMN to Python types.
|
|
555
|
+
PARAMETERS:
|
|
556
|
+
col_type - The 1 or 2 character type code from HELP COLUMN command.
|
|
557
|
+
storage_format - The storage format from HELP COLUMN command.
|
|
558
|
+
|
|
559
|
+
RETURNS:
|
|
560
|
+
The Python type for the given col_type.
|
|
561
|
+
|
|
562
|
+
RAISES:
|
|
563
|
+
|
|
564
|
+
EXAMPLES:
|
|
565
|
+
pytype = _Dtypes._help_col_to_python_type('CV', None)
|
|
566
|
+
pytype = _Dtypes._help_col_to_python_type('DT', 'CSV')
|
|
567
|
+
|
|
568
|
+
"""
|
|
569
|
+
if col_type in TeradataTypes.TD_INTEGER_CODES.value:
|
|
570
|
+
return PythonTypes.PY_INT_TYPE.value
|
|
571
|
+
elif col_type in TeradataTypes.TD_FLOAT_CODES.value:
|
|
572
|
+
return PythonTypes.PY_FLOAT_TYPE.value
|
|
573
|
+
elif col_type in TeradataTypes.TD_DECIMAL_CODES.value:
|
|
574
|
+
return PythonTypes.PY_DECIMAL_TYPE.value
|
|
575
|
+
elif col_type in TeradataTypes.TD_BYTE_CODES.value:
|
|
576
|
+
return PythonTypes.PY_BYTES_TYPE.value
|
|
577
|
+
elif col_type in TeradataTypes.TD_DATETIME_CODES.value:
|
|
578
|
+
return PythonTypes.PY_DATETIME_TYPE.value
|
|
579
|
+
elif col_type in TeradataTypes.TD_TIME_CODES.value:
|
|
580
|
+
return PythonTypes.PY_TIME_TYPE.value
|
|
581
|
+
elif col_type in TeradataTypes.TD_DATE_CODES.value:
|
|
582
|
+
return PythonTypes.PY_DATE_TYPE.value
|
|
583
|
+
elif col_type == "DT":
|
|
584
|
+
sfmt = storage_format.strip()
|
|
585
|
+
if sfmt == "CSV":
|
|
586
|
+
return PythonTypes.PY_STRING_TYPE.value
|
|
587
|
+
elif sfmt == "AVRO":
|
|
588
|
+
return PythonTypes.PY_BYTES_TYPE.value
|
|
589
|
+
|
|
590
|
+
return PythonTypes.PY_STRING_TYPE.value
|
|
591
|
+
|
|
592
|
+
@staticmethod
|
|
593
|
+
def _help_col_to_td_type(col_type, udt_name, storage_format):
|
|
594
|
+
"""
|
|
595
|
+
Translate the 2 character TD type codes from HELP COLUMN to Teradata types.
|
|
596
|
+
PARAMETERS:
|
|
597
|
+
col_type - The 2 character type code from HELP COLUMN command.
|
|
598
|
+
udt_name - The UDT name from the HELP COLUMN command.
|
|
599
|
+
storage_format - The storage format from HELP COLUMN command.
|
|
600
|
+
|
|
601
|
+
RETURNS:
|
|
602
|
+
The Teradata type for the given colType.
|
|
603
|
+
|
|
604
|
+
RAISES:
|
|
605
|
+
|
|
606
|
+
EXAMPLES:
|
|
607
|
+
tdtype = _Dtypes._help_col_to_td_type('CV', None, None)
|
|
608
|
+
|
|
609
|
+
"""
|
|
610
|
+
# logger.debug("helpColumnToTeradataTypeName colType = {0} udtName = {1} storageFormat {2}".format(colType, udtName, storageFormat))
|
|
611
|
+
if col_type in HELP_COL_TYPE_TO_TDTYPE:
|
|
612
|
+
return HELP_COL_TYPE_TO_TDTYPE[col_type]
|
|
613
|
+
|
|
614
|
+
if col_type == "DT":
|
|
615
|
+
return "DATASET STORAGE FORMAT {0}".format(storage_format.strip())
|
|
616
|
+
|
|
617
|
+
if col_type in ["UD", "US", "UT", "A1", "AN"]:
|
|
618
|
+
if udt_name:
|
|
619
|
+
return udt_name
|
|
620
|
+
|
|
621
|
+
return col_type
|
|
622
|
+
|
|
623
|
+
@staticmethod
|
|
624
|
+
def _anly_json_type_to_python_type(json_td_type):
|
|
625
|
+
"""
|
|
626
|
+
DESCRIPTION:
|
|
627
|
+
Get the Python type equivalent to the specified type in analytic
|
|
628
|
+
JSON files.
|
|
629
|
+
|
|
630
|
+
PARAMETERS:
|
|
631
|
+
json_td_type:
|
|
632
|
+
Required Argument.
|
|
633
|
+
Specifies the TD type specified in analytic function json file.
|
|
634
|
+
Types: type
|
|
635
|
+
|
|
636
|
+
RETURNS:
|
|
637
|
+
type
|
|
638
|
+
|
|
639
|
+
EXAMPLES:
|
|
640
|
+
tdtype = _Dtypes._anly_json_type_to_python_type("NUMBER")
|
|
641
|
+
|
|
642
|
+
"""
|
|
643
|
+
from teradataml.dataframe.dataframe import TDSeries, TDMatrix, TDGenSeries, TDAnalyticResult
|
|
644
|
+
_DtypesMappers.JSON_TD_TO_PYTHON_TYPE_MAPPER.update({"SERIES": TDSeries,
|
|
645
|
+
"MATRIX": TDMatrix,
|
|
646
|
+
"ART": TDAnalyticResult,
|
|
647
|
+
"GENSERIES": TDGenSeries})
|
|
648
|
+
|
|
649
|
+
|
|
650
|
+
return _DtypesMappers.JSON_TD_TO_PYTHON_TYPE_MAPPER.get(json_td_type.upper())
|
|
651
|
+
|
|
652
|
+
|
|
653
|
+
@staticmethod
|
|
654
|
+
def _get_interval_data_types():
|
|
655
|
+
"""
|
|
656
|
+
Returns the INTERVAL data types.
|
|
657
|
+
|
|
658
|
+
RAISES:
|
|
659
|
+
None
|
|
660
|
+
|
|
661
|
+
RETURNS:
|
|
662
|
+
list of teradatasqlalchemy.types
|
|
663
|
+
|
|
664
|
+
EXAMPLES:
|
|
665
|
+
_Dtypes._get_interval_data_types()
|
|
666
|
+
"""
|
|
667
|
+
return _DtypesMappers.INTERVAL_TYPES
|
|
668
|
+
|
|
669
|
+
@staticmethod
|
|
670
|
+
def _get_datetime_period_data_types():
|
|
671
|
+
"""
|
|
672
|
+
Returns the PERIOD and DATETIME data types.
|
|
673
|
+
|
|
674
|
+
RAISES:
|
|
675
|
+
None
|
|
676
|
+
|
|
677
|
+
RETURNS:
|
|
678
|
+
list of teradatasqlalchemy.types
|
|
679
|
+
|
|
680
|
+
EXAMPLES:
|
|
681
|
+
_Dtypes._get_datetime_period_data_types()
|
|
682
|
+
"""
|
|
683
|
+
return _DtypesMappers.DATETIME_PERIOD_TYPES
|
|
684
|
+
|