validmind 2.8.20__tar.gz → 2.8.22__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. {validmind-2.8.20 → validmind-2.8.22}/PKG-INFO +1 -1
  2. {validmind-2.8.20 → validmind-2.8.22}/pyproject.toml +1 -1
  3. validmind-2.8.22/validmind/__version__.py +1 -0
  4. {validmind-2.8.20 → validmind-2.8.22}/validmind/client.py +3 -0
  5. {validmind-2.8.20 → validmind-2.8.22}/validmind/template.py +3 -2
  6. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/dataset/dataset.py +64 -27
  7. validmind-2.8.20/validmind/__version__.py +0 -1
  8. {validmind-2.8.20 → validmind-2.8.22}/LICENSE +0 -0
  9. {validmind-2.8.20 → validmind-2.8.22}/README.pypi.md +0 -0
  10. {validmind-2.8.20 → validmind-2.8.22}/validmind/__init__.py +0 -0
  11. {validmind-2.8.20 → validmind-2.8.22}/validmind/ai/test_descriptions.py +0 -0
  12. {validmind-2.8.20 → validmind-2.8.22}/validmind/ai/utils.py +0 -0
  13. {validmind-2.8.20 → validmind-2.8.22}/validmind/api_client.py +0 -0
  14. {validmind-2.8.20 → validmind-2.8.22}/validmind/client_config.py +0 -0
  15. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/__init__.py +0 -0
  16. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/classification/__init__.py +0 -0
  17. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/classification/customer_churn.py +0 -0
  18. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/classification/datasets/bank_customer_churn.csv +0 -0
  19. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/classification/datasets/taiwan_credit.csv +0 -0
  20. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/classification/taiwan_credit.py +0 -0
  21. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/cluster/digits.py +0 -0
  22. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/credit_risk/__init__.py +0 -0
  23. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/credit_risk/datasets/lending_club_biased.csv.gz +0 -0
  24. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/credit_risk/datasets/lending_club_loan_data_2007_2014_clean.csv.gz +0 -0
  25. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/credit_risk/lending_club.py +0 -0
  26. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/credit_risk/lending_club_bias.py +0 -0
  27. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/llm/rag/__init__.py +0 -0
  28. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/llm/rag/datasets/rfp_existing_questions_client_1.csv +0 -0
  29. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/llm/rag/datasets/rfp_existing_questions_client_2.csv +0 -0
  30. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/llm/rag/datasets/rfp_existing_questions_client_3.csv +0 -0
  31. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/llm/rag/datasets/rfp_existing_questions_client_4.csv +0 -0
  32. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/llm/rag/datasets/rfp_existing_questions_client_5.csv +0 -0
  33. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/llm/rag/rfp.py +0 -0
  34. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/nlp/__init__.py +0 -0
  35. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/nlp/cnn_dailymail.py +0 -0
  36. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/nlp/datasets/Covid_19.csv +0 -0
  37. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/nlp/datasets/cnn_dailymail_100_with_predictions.csv +0 -0
  38. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/nlp/datasets/cnn_dailymail_500_with_predictions.csv +0 -0
  39. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/nlp/datasets/sentiments_with_predictions.csv +0 -0
  40. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/nlp/twitter_covid_19.py +0 -0
  41. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/__init__.py +0 -0
  42. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/california_housing.py +0 -0
  43. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/CPIAUCSL.csv +0 -0
  44. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/CSUSHPISA.csv +0 -0
  45. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/DRSFRMACBS.csv +0 -0
  46. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/FEDFUNDS.csv +0 -0
  47. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/GDP.csv +0 -0
  48. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/GDPC1.csv +0 -0
  49. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/GS10.csv +0 -0
  50. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/GS3.csv +0 -0
  51. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/GS5.csv +0 -0
  52. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/MORTGAGE30US.csv +0 -0
  53. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred/UNRATE.csv +0 -0
  54. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred_loan_rates.csv +0 -0
  55. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred_loan_rates_test_1.csv +0 -0
  56. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred_loan_rates_test_2.csv +0 -0
  57. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred_loan_rates_test_3.csv +0 -0
  58. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred_loan_rates_test_4.csv +0 -0
  59. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/fred_loan_rates_test_5.csv +0 -0
  60. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/datasets/leanding_club_loan_rates.csv +0 -0
  61. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/fred.py +0 -0
  62. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/fred_timeseries.py +0 -0
  63. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/lending_club.py +0 -0
  64. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/models/fred_loan_rates_model_1.pkl +0 -0
  65. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/models/fred_loan_rates_model_2.pkl +0 -0
  66. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/models/fred_loan_rates_model_3.pkl +0 -0
  67. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/models/fred_loan_rates_model_4.pkl +0 -0
  68. {validmind-2.8.20 → validmind-2.8.22}/validmind/datasets/regression/models/fred_loan_rates_model_5.pkl +0 -0
  69. {validmind-2.8.20 → validmind-2.8.22}/validmind/errors.py +0 -0
  70. {validmind-2.8.20 → validmind-2.8.22}/validmind/html_templates/__init__.py +0 -0
  71. {validmind-2.8.20 → validmind-2.8.22}/validmind/html_templates/content_blocks.py +0 -0
  72. {validmind-2.8.20 → validmind-2.8.22}/validmind/input_registry.py +0 -0
  73. {validmind-2.8.20 → validmind-2.8.22}/validmind/logging.py +0 -0
  74. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/__init__.py +0 -0
  75. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/foundation.py +0 -0
  76. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/function.py +0 -0
  77. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/huggingface.py +0 -0
  78. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/metadata.py +0 -0
  79. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/pipeline.py +0 -0
  80. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/pytorch.py +0 -0
  81. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/r_model.py +0 -0
  82. {validmind-2.8.20 → validmind-2.8.22}/validmind/models/sklearn.py +0 -0
  83. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/__init__.py +0 -0
  84. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/classifier.py +0 -0
  85. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/cluster.py +0 -0
  86. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/embeddings.py +0 -0
  87. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/llm.py +0 -0
  88. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/nlp.py +0 -0
  89. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/parameters_optimization.py +0 -0
  90. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/regression.py +0 -0
  91. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/statsmodels_timeseries.py +0 -0
  92. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/summarization.py +0 -0
  93. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/tabular_datasets.py +0 -0
  94. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/text_data.py +0 -0
  95. {validmind-2.8.20 → validmind-2.8.22}/validmind/test_suites/time_series.py +0 -0
  96. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/__init__.py +0 -0
  97. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/__types__.py +0 -0
  98. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/_store.py +0 -0
  99. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/comparison.py +0 -0
  100. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ACFandPACFPlot.py +0 -0
  101. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ADF.py +0 -0
  102. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/AutoAR.py +0 -0
  103. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/AutoMA.py +0 -0
  104. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/AutoStationarity.py +0 -0
  105. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/BivariateScatterPlots.py +0 -0
  106. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/BoxPierce.py +0 -0
  107. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ChiSquaredFeaturesTable.py +0 -0
  108. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ClassImbalance.py +0 -0
  109. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/DatasetDescription.py +0 -0
  110. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/DatasetSplit.py +0 -0
  111. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/DescriptiveStatistics.py +0 -0
  112. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/DickeyFullerGLS.py +0 -0
  113. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/Duplicates.py +0 -0
  114. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/EngleGrangerCoint.py +0 -0
  115. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/FeatureTargetCorrelationPlot.py +0 -0
  116. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/HighCardinality.py +0 -0
  117. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/HighPearsonCorrelation.py +0 -0
  118. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/IQROutliersBarPlot.py +0 -0
  119. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/IQROutliersTable.py +0 -0
  120. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/IsolationForestOutliers.py +0 -0
  121. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/JarqueBera.py +0 -0
  122. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/KPSS.py +0 -0
  123. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/LJungBox.py +0 -0
  124. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/LaggedCorrelationHeatmap.py +0 -0
  125. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/MissingValues.py +0 -0
  126. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/MissingValuesBarPlot.py +0 -0
  127. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/MutualInformation.py +0 -0
  128. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/PearsonCorrelationMatrix.py +0 -0
  129. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/PhillipsPerronArch.py +0 -0
  130. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ProtectedClassesCombination.py +0 -0
  131. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ProtectedClassesDescription.py +0 -0
  132. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ProtectedClassesDisparity.py +0 -0
  133. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ProtectedClassesThresholdOptimizer.py +0 -0
  134. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/RollingStatsPlot.py +0 -0
  135. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/RunsTest.py +0 -0
  136. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ScatterPlot.py +0 -0
  137. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ScoreBandDefaultRates.py +0 -0
  138. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/SeasonalDecompose.py +0 -0
  139. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ShapiroWilk.py +0 -0
  140. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/Skewness.py +0 -0
  141. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/SpreadPlot.py +0 -0
  142. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TabularCategoricalBarPlots.py +0 -0
  143. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TabularDateTimeHistograms.py +0 -0
  144. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TabularDescriptionTables.py +0 -0
  145. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TabularNumericalHistograms.py +0 -0
  146. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TargetRateBarPlots.py +0 -0
  147. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TimeSeriesDescription.py +0 -0
  148. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TimeSeriesDescriptiveStatistics.py +0 -0
  149. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TimeSeriesFrequency.py +0 -0
  150. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TimeSeriesHistogram.py +0 -0
  151. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TimeSeriesLinePlot.py +0 -0
  152. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TimeSeriesMissingValues.py +0 -0
  153. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TimeSeriesOutliers.py +0 -0
  154. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/TooManyZeroValues.py +0 -0
  155. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/UniqueRows.py +0 -0
  156. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/WOEBinPlots.py +0 -0
  157. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/WOEBinTable.py +0 -0
  158. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/ZivotAndrewsArch.py +0 -0
  159. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/__init__.py +0 -0
  160. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/CommonWords.py +0 -0
  161. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/Hashtags.py +0 -0
  162. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/LanguageDetection.py +0 -0
  163. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/Mentions.py +0 -0
  164. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/PolarityAndSubjectivity.py +0 -0
  165. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/Punctuations.py +0 -0
  166. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/Sentiment.py +0 -0
  167. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/StopWords.py +0 -0
  168. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/TextDescription.py +0 -0
  169. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/Toxicity.py +0 -0
  170. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/data_validation/nlp/__init__.py +0 -0
  171. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/decorator.py +0 -0
  172. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/load.py +0 -0
  173. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/BertScore.py +0 -0
  174. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/BleuScore.py +0 -0
  175. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ClusterSizeDistribution.py +0 -0
  176. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ContextualRecall.py +0 -0
  177. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/FeaturesAUC.py +0 -0
  178. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/MeteorScore.py +0 -0
  179. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ModelMetadata.py +0 -0
  180. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ModelPredictionResiduals.py +0 -0
  181. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/RegardScore.py +0 -0
  182. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/RegressionResidualsPlot.py +0 -0
  183. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/RougeScore.py +0 -0
  184. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/TimeSeriesPredictionWithCI.py +0 -0
  185. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/TimeSeriesPredictionsPlot.py +0 -0
  186. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/TimeSeriesR2SquareBySegments.py +0 -0
  187. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/TokenDisparity.py +0 -0
  188. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ToxicityScore.py +0 -0
  189. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/__init__.py +0 -0
  190. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/ClusterDistribution.py +0 -0
  191. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/CosineSimilarityComparison.py +0 -0
  192. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/CosineSimilarityDistribution.py +0 -0
  193. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/CosineSimilarityHeatmap.py +0 -0
  194. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/DescriptiveAnalytics.py +0 -0
  195. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/EmbeddingsVisualization2D.py +0 -0
  196. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/EuclideanDistanceComparison.py +0 -0
  197. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/EuclideanDistanceHeatmap.py +0 -0
  198. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/PCAComponentsPairwisePlots.py +0 -0
  199. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/StabilityAnalysisKeyword.py +0 -0
  200. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/StabilityAnalysisRandomNoise.py +0 -0
  201. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/StabilityAnalysisSynonyms.py +0 -0
  202. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/StabilityAnalysisTranslation.py +0 -0
  203. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/TSNEComponentsPairwisePlots.py +0 -0
  204. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/embeddings/utils.py +0 -0
  205. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/AnswerCorrectness.py +0 -0
  206. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/AspectCritic.py +0 -0
  207. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/ContextEntityRecall.py +0 -0
  208. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/ContextPrecision.py +0 -0
  209. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/ContextPrecisionWithoutReference.py +0 -0
  210. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/ContextRecall.py +0 -0
  211. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/Faithfulness.py +0 -0
  212. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/NoiseSensitivity.py +0 -0
  213. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/ResponseRelevancy.py +0 -0
  214. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/SemanticSimilarity.py +0 -0
  215. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/ragas/utils.py +0 -0
  216. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/AdjustedMutualInformation.py +0 -0
  217. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/AdjustedRandIndex.py +0 -0
  218. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/CalibrationCurve.py +0 -0
  219. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ClassifierPerformance.py +0 -0
  220. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ClassifierThresholdOptimization.py +0 -0
  221. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ClusterCosineSimilarity.py +0 -0
  222. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ClusterPerformanceMetrics.py +0 -0
  223. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/CompletenessScore.py +0 -0
  224. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ConfusionMatrix.py +0 -0
  225. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/FeatureImportance.py +0 -0
  226. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/FowlkesMallowsScore.py +0 -0
  227. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/HomogeneityScore.py +0 -0
  228. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/HyperParametersTuning.py +0 -0
  229. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/KMeansClustersOptimization.py +0 -0
  230. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/MinimumAccuracy.py +0 -0
  231. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/MinimumF1Score.py +0 -0
  232. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/MinimumROCAUCScore.py +0 -0
  233. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ModelParameters.py +0 -0
  234. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ModelsPerformanceComparison.py +0 -0
  235. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/OverfitDiagnosis.py +0 -0
  236. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/PermutationFeatureImportance.py +0 -0
  237. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/PopulationStabilityIndex.py +0 -0
  238. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/PrecisionRecallCurve.py +0 -0
  239. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ROCCurve.py +0 -0
  240. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/RegressionErrors.py +0 -0
  241. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/RegressionErrorsComparison.py +0 -0
  242. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/RegressionPerformance.py +0 -0
  243. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/RegressionR2Square.py +0 -0
  244. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/RegressionR2SquareComparison.py +0 -0
  245. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/RobustnessDiagnosis.py +0 -0
  246. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/SHAPGlobalImportance.py +0 -0
  247. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/ScoreProbabilityAlignment.py +0 -0
  248. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/SilhouettePlot.py +0 -0
  249. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/TrainingTestDegradation.py +0 -0
  250. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/VMeasure.py +0 -0
  251. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/WeakspotsDiagnosis.py +0 -0
  252. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/sklearn/__init__.py +0 -0
  253. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/AutoARIMA.py +0 -0
  254. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/CumulativePredictionProbabilities.py +0 -0
  255. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/DurbinWatsonTest.py +0 -0
  256. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/GINITable.py +0 -0
  257. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/KolmogorovSmirnov.py +0 -0
  258. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/Lilliefors.py +0 -0
  259. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/PredictionProbabilitiesHistogram.py +0 -0
  260. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/RegressionCoeffs.py +0 -0
  261. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/RegressionFeatureSignificance.py +0 -0
  262. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/RegressionModelForecastPlot.py +0 -0
  263. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/RegressionModelForecastPlotLevels.py +0 -0
  264. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/RegressionModelSensitivityPlot.py +0 -0
  265. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/RegressionModelSummary.py +0 -0
  266. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/RegressionPermutationFeatureImportance.py +0 -0
  267. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/ScorecardHistogram.py +0 -0
  268. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/__init__.py +0 -0
  269. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/model_validation/statsmodels/statsutils.py +0 -0
  270. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/CalibrationCurveDrift.py +0 -0
  271. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/ClassDiscriminationDrift.py +0 -0
  272. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/ClassImbalanceDrift.py +0 -0
  273. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/ClassificationAccuracyDrift.py +0 -0
  274. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/ConfusionMatrixDrift.py +0 -0
  275. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/CumulativePredictionProbabilitiesDrift.py +0 -0
  276. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/FeatureDrift.py +0 -0
  277. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/PredictionAcrossEachFeature.py +0 -0
  278. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/PredictionCorrelation.py +0 -0
  279. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/PredictionProbabilitiesHistogramDrift.py +0 -0
  280. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/PredictionQuantilesAcrossFeatures.py +0 -0
  281. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/ROCCurveDrift.py +0 -0
  282. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/ScoreBandsDrift.py +0 -0
  283. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/ScorecardHistogramDrift.py +0 -0
  284. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/ongoing_monitoring/TargetPredictionDistributionPlot.py +0 -0
  285. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/output.py +0 -0
  286. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/Bias.py +0 -0
  287. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/Clarity.py +0 -0
  288. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/Conciseness.py +0 -0
  289. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/Delimitation.py +0 -0
  290. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/NegativeInstruction.py +0 -0
  291. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/Robustness.py +0 -0
  292. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/Specificity.py +0 -0
  293. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/__init__.py +0 -0
  294. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/prompt_validation/ai_powered_test.py +0 -0
  295. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/run.py +0 -0
  296. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/test_providers.py +0 -0
  297. {validmind-2.8.20 → validmind-2.8.22}/validmind/tests/utils.py +0 -0
  298. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/__init__.py +0 -0
  299. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/classification/Accuracy.py +0 -0
  300. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/classification/F1.py +0 -0
  301. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/classification/Precision.py +0 -0
  302. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/classification/ROC_AUC.py +0 -0
  303. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/classification/Recall.py +0 -0
  304. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/AdjustedRSquaredScore.py +0 -0
  305. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/GiniCoefficient.py +0 -0
  306. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/HuberLoss.py +0 -0
  307. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/KolmogorovSmirnovStatistic.py +0 -0
  308. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/MeanAbsoluteError.py +0 -0
  309. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/MeanAbsolutePercentageError.py +0 -0
  310. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/MeanBiasDeviation.py +0 -0
  311. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/MeanSquaredError.py +0 -0
  312. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/QuantileLoss.py +0 -0
  313. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/RSquaredScore.py +0 -0
  314. {validmind-2.8.20 → validmind-2.8.22}/validmind/unit_metrics/regression/RootMeanSquaredError.py +0 -0
  315. {validmind-2.8.20 → validmind-2.8.22}/validmind/utils.py +0 -0
  316. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/__init__.py +0 -0
  317. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/dataset/__init__.py +0 -0
  318. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/dataset/utils.py +0 -0
  319. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/figure.py +0 -0
  320. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/input.py +0 -0
  321. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/model.py +0 -0
  322. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/result/__init__.py +0 -0
  323. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/result/result.jinja +0 -0
  324. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/result/result.py +0 -0
  325. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/result/utils.py +0 -0
  326. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/test_suite/__init__.py +0 -0
  327. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/test_suite/runner.py +0 -0
  328. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/test_suite/summary.py +0 -0
  329. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/test_suite/test.py +0 -0
  330. {validmind-2.8.20 → validmind-2.8.22}/validmind/vm_models/test_suite/test_suite.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: validmind
3
- Version: 2.8.20
3
+ Version: 2.8.22
4
4
  Summary: ValidMind Library
5
5
  License: Commercial License
6
6
  Author: Andres Rodriguez
@@ -10,7 +10,7 @@ description = "ValidMind Library"
10
10
  license = "Commercial License"
11
11
  name = "validmind"
12
12
  readme = "README.pypi.md"
13
- version = "2.8.20"
13
+ version = "2.8.22"
14
14
 
15
15
  [tool.poetry.dependencies]
16
16
  aiohttp = {extras = ["speedups"], version = "*"}
@@ -0,0 +1 @@
1
+ __version__ = "2.8.22"
@@ -61,6 +61,7 @@ def init_dataset(
61
61
  class_labels: Optional[Dict[str, Any]] = None,
62
62
  type: Optional[str] = None,
63
63
  input_id: Optional[str] = None,
64
+ copy_data: bool = True,
64
65
  __log: bool = True,
65
66
  ) -> VMDataset:
66
67
  """
@@ -92,6 +93,7 @@ def init_dataset(
92
93
  this will be set to `dataset` but if you are passing this dataset as a
93
94
  test input using some other key than `dataset`, then you should set
94
95
  this to the same key.
96
+ copy_data (bool, optional): Whether to copy the data. Defaults to True.
95
97
  __log (bool): Whether to log the input. Defaults to True.
96
98
 
97
99
  Raises:
@@ -121,6 +123,7 @@ def init_dataset(
121
123
  extra_columns=extra_columns,
122
124
  target_class_labels=class_labels,
123
125
  date_time_index=date_time_index,
126
+ copy_data=copy_data,
124
127
  )
125
128
  elif isinstance(dataset, pl.DataFrame):
126
129
  vm_dataset = PolarsDataset(
@@ -53,8 +53,9 @@ def _convert_sections_to_section_tree(
53
53
 
54
54
  if start_section_id and not section_tree:
55
55
  raise ValueError(f"Section {start_section_id} not found in template")
56
-
57
- return sorted(section_tree, key=lambda x: x.get("order", 0))
56
+ # sort the section tree by the order of the sections in the template (if provided)
57
+ # set the order to 9999 for the sections that do not have an order
58
+ return sorted(section_tree, key=lambda x: x.get("order", 9999))
58
59
 
59
60
 
60
61
  def _create_content_widget(content: Dict[str, Any]) -> Widget:
@@ -47,6 +47,7 @@ class VMDataset(VMInput):
47
47
  target_class_labels (Dict): The class labels for the target columns.
48
48
  df (pd.DataFrame): The dataset as a pandas DataFrame.
49
49
  extra_columns (Dict): Extra columns to include in the dataset.
50
+ copy_data (bool): Whether to copy the data. Defaults to True.
50
51
  """
51
52
 
52
53
  def __repr__(self):
@@ -66,6 +67,7 @@ class VMDataset(VMInput):
66
67
  text_column: str = None,
67
68
  extra_columns: dict = None,
68
69
  target_class_labels: dict = None,
70
+ copy_data: bool = True,
69
71
  ):
70
72
  """
71
73
  Initializes a VMDataset instance.
@@ -82,6 +84,7 @@ class VMDataset(VMInput):
82
84
  feature_columns (str, optional): The feature column names of the dataset. Defaults to None.
83
85
  text_column (str, optional): The text column name of the dataset for nlp tasks. Defaults to None.
84
86
  target_class_labels (Dict, optional): The class labels for the target columns. Defaults to None.
87
+ copy_data (bool, optional): Whether to copy the data. Defaults to True.
85
88
  """
86
89
  # initialize input_id
87
90
  self.input_id = input_id
@@ -112,6 +115,7 @@ class VMDataset(VMInput):
112
115
  self.target_class_labels = target_class_labels
113
116
  self.extra_columns = ExtraColumns.from_dict(extra_columns)
114
117
  self._set_feature_columns(feature_columns)
118
+ self._copy_data = copy_data
115
119
 
116
120
  if model:
117
121
  self.assign_predictions(model)
@@ -129,16 +133,19 @@ class VMDataset(VMInput):
129
133
  excluded = [self.target_column, *self.extra_columns.flatten()]
130
134
  self.feature_columns = [col for col in self.columns if col not in excluded]
131
135
 
132
- self.feature_columns_numeric = (
133
- self._df[self.feature_columns]
134
- .select_dtypes(include=[np.number])
135
- .columns.tolist()
136
- )
137
- self.feature_columns_categorical = (
138
- self._df[self.feature_columns]
139
- .select_dtypes(include=[object, pd.Categorical])
140
- .columns.tolist()
141
- )
136
+ # Get dtypes without loading data into memory
137
+ feature_dtypes = self._df[self.feature_columns].dtypes
138
+
139
+ self.feature_columns_numeric = feature_dtypes[
140
+ feature_dtypes.apply(lambda x: pd.api.types.is_numeric_dtype(x))
141
+ ].index.tolist()
142
+
143
+ self.feature_columns_categorical = feature_dtypes[
144
+ feature_dtypes.apply(
145
+ lambda x: pd.api.types.is_categorical_dtype(x)
146
+ or pd.api.types.is_object_dtype(x)
147
+ )
148
+ ].index.tolist()
142
149
 
143
150
  def _add_column(self, column_name, column_values):
144
151
  column_values = np.array(column_values)
@@ -397,8 +404,18 @@ class VMDataset(VMInput):
397
404
  assert self.target_column not in columns
398
405
  columns.append(self.target_column)
399
406
 
400
- # return a copy to prevent accidental modification
401
- return as_df(self._df[columns]).copy()
407
+ # Check if all columns in self._df are requested
408
+ all_columns = set(columns) == set(self._df.columns)
409
+
410
+ # For copy_data=False and all columns: return exact same DataFrame object
411
+ if not self._copy_data and all_columns:
412
+ return self._df
413
+ # For copy_data=False and subset of columns: return view with shared data
414
+ elif not self._copy_data:
415
+ return as_df(self._df[columns])
416
+ # For copy_data=True: return independent copy with duplicated data
417
+ else:
418
+ return as_df(self._df[columns]).copy()
402
419
 
403
420
  @property
404
421
  def x(self) -> np.ndarray:
@@ -522,9 +539,10 @@ class DataFrameDataset(VMDataset):
522
539
  text_column: str = None,
523
540
  target_class_labels: dict = None,
524
541
  date_time_index: bool = False,
542
+ copy_data: bool = True,
525
543
  ):
526
544
  """
527
- Initializes a DataFrameDataset instance.
545
+ Initializes a DataFrameDataset instance, preserving original pandas dtypes.
528
546
 
529
547
  Args:
530
548
  raw_dataset (pd.DataFrame): The raw dataset as a pandas DataFrame.
@@ -536,25 +554,44 @@ class DataFrameDataset(VMDataset):
536
554
  text_column (str, optional): The text column name of the dataset for NLP tasks. Defaults to None.
537
555
  target_class_labels (dict, optional): The class labels for the target columns. Defaults to None.
538
556
  date_time_index (bool, optional): Whether to use date-time index. Defaults to False.
557
+ copy_data (bool, optional): Whether to create a copy of the input data. Defaults to True.
539
558
  """
559
+
560
+ VMInput.__init__(self)
561
+
562
+ self.input_id = input_id
563
+
540
564
  index = None
541
565
  if isinstance(raw_dataset.index, pd.Index):
542
566
  index = raw_dataset.index.values
567
+ self.index = index
543
568
 
544
- super().__init__(
545
- raw_dataset=raw_dataset.values,
546
- input_id=input_id,
547
- model=model,
548
- index_name=raw_dataset.index.name,
549
- index=index,
550
- columns=raw_dataset.columns.to_list(),
551
- target_column=target_column,
552
- extra_columns=extra_columns,
553
- feature_columns=feature_columns,
554
- text_column=text_column,
555
- target_class_labels=target_class_labels,
556
- date_time_index=date_time_index,
557
- )
569
+ # Store the DataFrame directly
570
+ self._df = raw_dataset
571
+
572
+ if date_time_index:
573
+ self._df = convert_index_to_datetime(self._df)
574
+
575
+ self.columns = raw_dataset.columns.tolist()
576
+ self.column_aliases = {}
577
+ self.target_column = target_column
578
+ self.text_column = text_column
579
+ self.target_class_labels = target_class_labels
580
+ self.extra_columns = ExtraColumns.from_dict(extra_columns)
581
+ self._copy_data = copy_data
582
+
583
+ # Add warning when copy_data is False
584
+ if not copy_data:
585
+ logger.warning(
586
+ "Dataset initialized with copy_data=False. Changes to the original DataFrame "
587
+ "may affect this dataset. Use this option only when memory efficiency is critical "
588
+ "and you won't modify the source data."
589
+ )
590
+
591
+ self._set_feature_columns(feature_columns)
592
+
593
+ if model:
594
+ self.assign_predictions(model)
558
595
 
559
596
 
560
597
  class PolarsDataset(VMDataset):
@@ -1 +0,0 @@
1
- __version__ = "2.8.20"
File without changes
File without changes