DaSPi 2.3.3__tar.gz → 2.4.0__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 (187) hide show
  1. {daspi-2.3.3 → daspi-2.4.0}/PKG-INFO +1 -1
  2. daspi-2.4.0/daspi/__init__.py +488 -0
  3. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/plotter.py +217 -104
  4. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/precast.py +4 -3
  5. {daspi-2.3.3 → daspi-2.4.0}/daspi/strings.py +8 -3
  6. {daspi-2.3.3 → daspi-2.4.0}/pyproject.toml +1 -1
  7. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_alignments_basic.png +0 -0
  8. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_all_alignments.png +0 -0
  9. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_angles_basic.png +0 -0
  10. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_callable_formatters.png +0 -0
  11. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_combined_all_features.png +0 -0
  12. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_extreme_angles.png +0 -0
  13. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_formatters_basic.png +0 -0
  14. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_formatters_scientific.png +0 -0
  15. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_multivariate_formatting.png +0 -0
  16. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_orientation_mapping.png +0 -0
  17. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Formatting_Features_Test_percentage_formatter.png +0 -0
  18. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_comparison_with_violin.png +0 -0
  19. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_custom_color.png +0 -0
  20. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_custom_width.png +0 -0
  21. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_joint_chart_mixed_plots.png +0 -0
  22. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_multivariate_chart_facets.png +0 -0
  23. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_resolution_high.png +0 -0
  24. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_single_chart_horizontal.png +0 -0
  25. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_single_chart_no_fade.png +0 -0
  26. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_single_chart_no_fill.png +0 -0
  27. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_single_chart_simple.png +0 -0
  28. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/GaussianKDEContourUnivariate_single_chart_with_hue.png +0 -0
  29. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/JointChart_bar_stacking.png +0 -0
  30. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/JointChart_pareto_marked.png +0 -0
  31. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/JointChart_probability_dists-prob.png +0 -0
  32. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/JointChart_regression_kde.png +0 -0
  33. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/MultivariateChart_full-stripes.png +0 -0
  34. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/MultivariateChart_full.png +0 -0
  35. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_bivariate-univariate-charts_contour-mean-test.png +0 -0
  36. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_bivariate-univariate-charts_mean-test.png +0 -0
  37. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_bivariate-univariate-charts_simple.png +0 -0
  38. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_bivariate-univariate-charts_smoothed.png +0 -0
  39. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_bivariate-univariate-charts_user.png +0 -0
  40. daspi-2.4.0/tests/charts/Precasts_gage_study_model_basic.png +0 -0
  41. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_pair_comparison_charts_basic.png +0 -0
  42. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_parameter_relevance_charts_basic.png +0 -0
  43. daspi-2.4.0/tests/charts/Precasts_process-capabity-analysis-charts_hue.png +0 -0
  44. daspi-2.4.0/tests/charts/Precasts_residual_charts_basic.png +0 -0
  45. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_KDE-cumulative_multiple.png +0 -0
  46. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_KDE_multiple.png +0 -0
  47. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_KDE_ridge.png +0 -0
  48. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_beeswarm_multiple.png +0 -0
  49. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_beeswarm_simple.png +0 -0
  50. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_blandaltman_simple.png +0 -0
  51. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_blandaltman_user.png +0 -0
  52. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_box_fill.png +0 -0
  53. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_box_multiple.png +0 -0
  54. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_box_simple.png +0 -0
  55. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_categorical-float-features_simple.png +0 -0
  56. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_errorbar_mean-test.png +0 -0
  57. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_errorbar_sem.png +0 -0
  58. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_errorbar_std-test.png +0 -0
  59. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_errorbar_var-test.png +0 -0
  60. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_fitted-density_cdf-multiple.png +0 -0
  61. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_jitter_multiple.png +0 -0
  62. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_jitter_simple.png +0 -0
  63. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_line_hue.png +0 -0
  64. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_line_hue_size.png +0 -0
  65. daspi-2.4.0/tests/charts/SingleChart_pareto-threshold_simple.png +0 -0
  66. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_pareto_simple.png +0 -0
  67. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_pareto_transposed.png +0 -0
  68. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_quantiles_multiple.png +0 -0
  69. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_quantiles_simple.png +0 -0
  70. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_full.png +0 -0
  71. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_hue-shape.png +0 -0
  72. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_hue-size.png +0 -0
  73. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_hue.png +0 -0
  74. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_shape.png +0 -0
  75. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_size-shape.png +0 -0
  76. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_size.png +0 -0
  77. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_violin_mono.png +0 -0
  78. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_violin_multiple.png +0 -0
  79. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_violin_simple.png +0 -0
  80. {daspi-2.3.3 → daspi-2.4.0}/tests/plotlib_plotter_test.py +81 -0
  81. {daspi-2.3.3 → daspi-2.4.0}/tests/plotlib_visual_test.py +33 -2
  82. daspi-2.3.3/daspi/__init__.py +0 -315
  83. daspi-2.3.3/tests/charts/Precasts_gage_study_model_basic.png +0 -0
  84. daspi-2.3.3/tests/charts/Precasts_process-capabity-analysis-charts_hue.png +0 -0
  85. daspi-2.3.3/tests/charts/Precasts_residual_charts_basic.png +0 -0
  86. {daspi-2.3.3 → daspi-2.4.0}/LICENSE +0 -0
  87. {daspi-2.3.3 → daspi-2.4.0}/README.md +0 -0
  88. {daspi-2.3.3 → daspi-2.4.0}/daspi/_typing.py +0 -0
  89. {daspi-2.3.3 → daspi-2.4.0}/daspi/_version.py +0 -0
  90. {daspi-2.3.3 → daspi-2.4.0}/daspi/anova/__init__.py +0 -0
  91. {daspi-2.3.3 → daspi-2.4.0}/daspi/anova/convert.py +0 -0
  92. {daspi-2.3.3 → daspi-2.4.0}/daspi/anova/model.py +0 -0
  93. {daspi-2.3.3 → daspi-2.4.0}/daspi/anova/tables.py +0 -0
  94. {daspi-2.3.3 → daspi-2.4.0}/daspi/config.py +0 -0
  95. {daspi-2.3.3 → daspi-2.4.0}/daspi/constants.py +0 -0
  96. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/__init__.py +0 -0
  97. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/ancova.csv +0 -0
  98. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/anova.csv +0 -0
  99. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/anova2.csv +0 -0
  100. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/anova2_unbalanced.csv +0 -0
  101. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/anova3.csv +0 -0
  102. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/anova3_unbalanced.csv +0 -0
  103. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/carpet_full-factorial.csv +0 -0
  104. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/covariate.csv +0 -0
  105. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/drop_card.csv +0 -0
  106. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/eeprom_full-factorial.csv +0 -0
  107. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/eeprom_partial-factorial.csv +0 -0
  108. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/grnr_adjustment.csv +0 -0
  109. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/grnr_layer_thickness.csv +0 -0
  110. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/grnr_spc.csv +0 -0
  111. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/iris.csv +0 -0
  112. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/mpg.csv +0 -0
  113. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/painkillers-dissolution.csv +0 -0
  114. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/partial_factorial.csv +0 -0
  115. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/penguins.csv +0 -0
  116. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/process_capability.mpx +0 -0
  117. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/salt_sticks.csv +0 -0
  118. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/shoe-sole.csv +0 -0
  119. {daspi-2.3.3 → daspi-2.4.0}/daspi/datasets/tips.csv +0 -0
  120. {daspi-2.3.3 → daspi-2.4.0}/daspi/doe/__init__.py +0 -0
  121. {daspi-2.3.3 → daspi-2.4.0}/daspi/doe/build.py +0 -0
  122. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/__init__.py +0 -0
  123. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/appearance.py +0 -0
  124. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/chart.py +0 -0
  125. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/classify.py +0 -0
  126. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/facets.py +0 -0
  127. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/styles/daspi-dark.mplstyle +0 -0
  128. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/styles/daspi.mplstyle +0 -0
  129. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/styles/ggplot2.mplstyle +0 -0
  130. {daspi-2.3.3 → daspi-2.4.0}/daspi/plotlib/styles/seaborn.mplstyle +0 -0
  131. {daspi-2.3.3 → daspi-2.4.0}/daspi/requirements.txt +0 -0
  132. {daspi-2.3.3 → daspi-2.4.0}/daspi/statistics/__init__.py +0 -0
  133. {daspi-2.3.3 → daspi-2.4.0}/daspi/statistics/confidence.py +0 -0
  134. {daspi-2.3.3 → daspi-2.4.0}/daspi/statistics/estimation.py +0 -0
  135. {daspi-2.3.3 → daspi-2.4.0}/daspi/statistics/hypothesis.py +0 -0
  136. {daspi-2.3.3 → daspi-2.4.0}/daspi/statistics/montecarlo.py +0 -0
  137. {daspi-2.3.3 → daspi-2.4.0}/tests/ANOVA_SS_Fehler.mpx +0 -0
  138. {daspi-2.3.3 → daspi-2.4.0}/tests/ANOVA_SS_Fehler.mpx.bak +0 -0
  139. {daspi-2.3.3 → daspi-2.4.0}/tests/GageRnR.mpx +0 -0
  140. {daspi-2.3.3 → daspi-2.4.0}/tests/GageRnR.mpx.bak +0 -0
  141. {daspi-2.3.3 → daspi-2.4.0}/tests/__init__.py +0 -0
  142. {daspi-2.3.3 → daspi-2.4.0}/tests/anova_convert_test.py +0 -0
  143. {daspi-2.3.3 → daspi-2.4.0}/tests/anova_model_test.py +0 -0
  144. {daspi-2.3.3 → daspi-2.4.0}/tests/anova_tables_test.py +0 -0
  145. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/JointChart_kdes_kde-mean.png +0 -0
  146. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/JointChart_kdes_mixed-kde.png +0 -0
  147. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/JointChart_probability_norm-prob.png +0 -0
  148. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/Precasts_gage_rnr_model_basic.png +0 -0
  149. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_KDE-cumulative_simple.png +0 -0
  150. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_KDE_simple.png +0 -0
  151. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_fitted-density_pdf-data.png +0 -0
  152. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_fitted-density_pdf-norm.png +0 -0
  153. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_simple-stripes-65ci.png +0 -0
  154. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_simple-stripes-99ci.png +0 -0
  155. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_simple-stripes.png +0 -0
  156. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_simple.png +0 -0
  157. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_scatter_transposed.png +0 -0
  158. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_violine-contour_simple.png +0 -0
  159. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_violine_mono.png +0 -0
  160. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_violine_multiple.png +0 -0
  161. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/SingleChart_violine_simple.png +0 -0
  162. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/_debug_kde_bottom_crop.png +0 -0
  163. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/_debug_violin_bottom_crop.png +0 -0
  164. {daspi-2.3.3 → daspi-2.4.0}/tests/charts/_debug_violin_top_crop.png +0 -0
  165. {daspi-2.3.3 → daspi-2.4.0}/tests/config_test.py +0 -0
  166. {daspi-2.3.3 → daspi-2.4.0}/tests/data/anova3_result.csv +0 -0
  167. {daspi-2.3.3 → daspi-2.4.0}/tests/data/dists_10-samples.csv +0 -0
  168. {daspi-2.3.3 → daspi-2.4.0}/tests/data/dists_25-samples.csv +0 -0
  169. {daspi-2.3.3 → daspi-2.4.0}/tests/data/gage_rnr.csv +0 -0
  170. {daspi-2.3.3 → daspi-2.4.0}/tests/data/gage_study.csv +0 -0
  171. {daspi-2.3.3 → daspi-2.4.0}/tests/data/generate_dists.py +0 -0
  172. {daspi-2.3.3 → daspi-2.4.0}/tests/data/grnr_d-optimal.csv +0 -0
  173. {daspi-2.3.3 → daspi-2.4.0}/tests/data/uncertainties.csv +0 -0
  174. {daspi-2.3.3 → daspi-2.4.0}/tests/doe_build_test.py +0 -0
  175. {daspi-2.3.3 → daspi-2.4.0}/tests/plotlib_appearance_test.py +0 -0
  176. {daspi-2.3.3 → daspi-2.4.0}/tests/plotlib_chart_test.py +0 -0
  177. {daspi-2.3.3 → daspi-2.4.0}/tests/plotlib_classify_test.py +0 -0
  178. {daspi-2.3.3 → daspi-2.4.0}/tests/plotlib_facets_test.py +0 -0
  179. {daspi-2.3.3 → daspi-2.4.0}/tests/plotlib_templates_test.py +0 -0
  180. {daspi-2.3.3 → daspi-2.4.0}/tests/r2_pred.mpx +0 -0
  181. {daspi-2.3.3 → daspi-2.4.0}/tests/r2_pred.mpx.bak +0 -0
  182. {daspi-2.3.3 → daspi-2.4.0}/tests/statistics_confidence_test.py +0 -0
  183. {daspi-2.3.3 → daspi-2.4.0}/tests/statistics_estimation_test.py +0 -0
  184. {daspi-2.3.3 → daspi-2.4.0}/tests/statistics_hypothesis_test.py +0 -0
  185. {daspi-2.3.3 → daspi-2.4.0}/tests/statistics_montecarlo_test.py +0 -0
  186. {daspi-2.3.3 → daspi-2.4.0}/tests/strings_test.py +0 -0
  187. {daspi-2.3.3 → daspi-2.4.0}/tests/test_full_factorial_design_builder.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: DaSPi
3
- Version: 2.3.3
3
+ Version: 2.4.0
4
4
  Summary: Visualize and analyze your data with DaSPi. This package is designed for users who want to find relevant influencing factors in processes and validate improvements.
5
5
  Author-Email: Reto Jäggli <reto@jaeggli.email>
6
6
  License: MIT
@@ -0,0 +1,488 @@
1
+ """
2
+ DaSPi — Process Analytics & Six Sigma in Python
3
+
4
+ DaSPi helps engineers analyze and improve processes using statistical workflows.
5
+
6
+ ## Four Flagship Workflows
7
+
8
+ 1. **Gage R&R Analysis** — Verify measurement system capability (MSA Type 1 & 2)
9
+ 2. **Process Capability Analysis** — Evaluate if process meets specifications (Cp, Cpk)
10
+ 3. **Root Cause Analysis** — Identify factors that drive variation (ANOVA, regression)
11
+ 4. **Statistical Process Control** — Monitor process stability (SPC charts)
12
+
13
+ Each workflow produces visual output + interpretation in under 20 lines of code.
14
+
15
+ For detailed examples and documentation, visit: https://j4ggr.github.io/DaSPi/
16
+ """
17
+
18
+ import importlib
19
+ from typing import TYPE_CHECKING, Any
20
+
21
+ from ._version import __version__
22
+ from .config import CONFIG
23
+ from .strings import STR
24
+
25
+ if TYPE_CHECKING:
26
+ # These imports are never executed at runtime (TYPE_CHECKING is always
27
+ # False). They exist solely so static checkers (Pylance/Pyright, mypy)
28
+ # and IDE autocomplete can see these names as real module attributes,
29
+ # matching the entries in `__all__`. Actual runtime resolution still
30
+ # goes through `__getattr__` below, keeping `import daspi` cheap.
31
+ from .anova.convert import frames_to_html, get_term_name
32
+ from .anova.model import (
33
+ GageRnRModel,
34
+ GageStudyModel,
35
+ GeneralizedLinearModel,
36
+ LinearModel,
37
+ hierarchical,
38
+ is_main_parameter,
39
+ )
40
+ from .anova.tables import (
41
+ anova_table,
42
+ terms_effect,
43
+ terms_probability,
44
+ uniques,
45
+ variance_inflation_factor,
46
+ )
47
+ from .constants import (
48
+ ANOVA,
49
+ CATEGORY,
50
+ COLOR,
51
+ DEFAULT,
52
+ DIST,
53
+ KW,
54
+ LABEL,
55
+ LINE,
56
+ PLOTTER,
57
+ RE,
58
+ SIGMA_DIFFERENCE,
59
+ )
60
+ from .datasets import list_dataset, load_dataset
61
+ from .doe import (
62
+ Factor,
63
+ FractionalFactorialDesignBuilder,
64
+ FullFactorial2kDesignBuilder,
65
+ FullFactorialDesignBuilder,
66
+ get_default_generators,
67
+ )
68
+ from .plotlib import style
69
+ from .plotlib.chart import Chart, JointChart, MultivariateChart, SingleChart
70
+ from .plotlib.classify import Dodger, HueLabel, ShapeLabel, SizeLabel
71
+ from .plotlib.facets import AxesFacets, LabelFacets, StripesFacets, flat_unique
72
+ from .plotlib.plotter import (
73
+ Bar,
74
+ Beeswarm,
75
+ BlandAltman,
76
+ Box,
77
+ CapabilityConfidenceInterval,
78
+ CategoricalObservation,
79
+ CenterLocation,
80
+ ConfidenceInterval,
81
+ DensityCurve,
82
+ ErrorBar,
83
+ FittedDensity,
84
+ GaussianKDE,
85
+ GaussianKDEContour,
86
+ GaussianKDEContourUnivariate,
87
+ HideSubplot,
88
+ Jitter,
89
+ Line,
90
+ LinearRegressionLine,
91
+ LoessLine,
92
+ MeanTest,
93
+ ParallelCoordinate,
94
+ Pareto,
95
+ Plotter,
96
+ Probability,
97
+ ProportionTest,
98
+ QuantileBoxes,
99
+ Scatter,
100
+ SkipSubplot,
101
+ SpreadWidth,
102
+ StandardErrorMean,
103
+ Stem,
104
+ StripeLine,
105
+ StripeSpan,
106
+ TransformPlotter,
107
+ VariationTest,
108
+ Violin,
109
+ )
110
+ from .plotlib.precast import (
111
+ BivariateUnivariateCharts,
112
+ GageRnRCharts,
113
+ GageStudyCharts,
114
+ PairComparisonCharts,
115
+ PairwiseMatrixCharts,
116
+ ParameterRelevanceCharts,
117
+ ProcessCapabilityAnalysisCharts,
118
+ ResidualsCharts,
119
+ )
120
+ from .statistics.confidence import (
121
+ bonferroni_ci,
122
+ confidence_to_alpha,
123
+ cp_ci,
124
+ cpk_ci,
125
+ delta_mean_ci,
126
+ delta_proportions_ci,
127
+ delta_stdev_ci,
128
+ delta_variance_ci,
129
+ fit_ci,
130
+ mean_ci,
131
+ median_ci,
132
+ prediction_ci,
133
+ proportion_ci,
134
+ sem,
135
+ stdev_ci,
136
+ variance_ci,
137
+ )
138
+ from .statistics.estimation import (
139
+ DistributionEstimator,
140
+ GageEstimator,
141
+ LocationDispersionEstimator,
142
+ Loess,
143
+ Lowess,
144
+ MeasurementUncertainty,
145
+ ProcessEstimator,
146
+ estimate_capability_confidence,
147
+ estimate_distribution,
148
+ estimate_kernel_density,
149
+ estimate_kernel_density_2d,
150
+ estimate_probability_density,
151
+ estimate_resolution,
152
+ root_sum_squares,
153
+ )
154
+ from .statistics.hypothesis import (
155
+ all_normal,
156
+ anderson_darling_test,
157
+ dunn_test,
158
+ f_test,
159
+ kolmogorov_smirnov_test,
160
+ kurtosis_test,
161
+ levene_test,
162
+ mean_stability_test,
163
+ pairwise_tests,
164
+ position_test,
165
+ proportions_test,
166
+ skew_test,
167
+ t_test,
168
+ variance_stability_test,
169
+ variance_test,
170
+ )
171
+ from .statistics.montecarlo import (
172
+ UNBOUNDED,
173
+ Binning,
174
+ RandomProcessValue,
175
+ Specification,
176
+ SpecLimits,
177
+ inclination_displacement,
178
+ round_to_nearest,
179
+ )
180
+
181
+ # Everything below is loaded lazily (PEP 562 module __getattr__) the first
182
+ # time it's accessed, e.g. `dsp.LinearModel`. This keeps `import daspi as dsp`
183
+ # cheap: heavy third-party dependencies (scipy, matplotlib, pandas,
184
+ # statsmodels, patsy) are only imported once a symbol that actually needs
185
+ # them is used, instead of unconditionally at `import daspi` time.
186
+ _LAZY_SUBMODULES: dict[str, str] = {
187
+ 'frames_to_html': '.anova.convert',
188
+ 'get_term_name': '.anova.convert',
189
+ 'GageRnRModel': '.anova.model',
190
+ 'GageStudyModel': '.anova.model',
191
+ 'GeneralizedLinearModel': '.anova.model',
192
+ 'LinearModel': '.anova.model',
193
+ 'hierarchical': '.anova.model',
194
+ 'is_main_parameter': '.anova.model',
195
+ 'anova_table': '.anova.tables',
196
+ 'terms_effect': '.anova.tables',
197
+ 'terms_probability': '.anova.tables',
198
+ 'uniques': '.anova.tables',
199
+ 'variance_inflation_factor': '.anova.tables',
200
+ 'ANOVA': '.constants',
201
+ 'CATEGORY': '.constants',
202
+ 'COLOR': '.constants',
203
+ 'DEFAULT': '.constants',
204
+ 'DIST': '.constants',
205
+ 'KW': '.constants',
206
+ 'LABEL': '.constants',
207
+ 'LINE': '.constants',
208
+ 'PLOTTER': '.constants',
209
+ 'RE': '.constants',
210
+ 'SIGMA_DIFFERENCE': '.constants',
211
+ 'list_dataset': '.datasets',
212
+ 'load_dataset': '.datasets',
213
+ 'Factor': '.doe',
214
+ 'FractionalFactorialDesignBuilder': '.doe',
215
+ 'FullFactorial2kDesignBuilder': '.doe',
216
+ 'FullFactorialDesignBuilder': '.doe',
217
+ 'get_default_generators': '.doe',
218
+ 'style': '.plotlib',
219
+ 'Chart': '.plotlib.chart',
220
+ 'JointChart': '.plotlib.chart',
221
+ 'MultivariateChart': '.plotlib.chart',
222
+ 'SingleChart': '.plotlib.chart',
223
+ 'Dodger': '.plotlib.classify',
224
+ 'HueLabel': '.plotlib.classify',
225
+ 'ShapeLabel': '.plotlib.classify',
226
+ 'SizeLabel': '.plotlib.classify',
227
+ 'AxesFacets': '.plotlib.facets',
228
+ 'LabelFacets': '.plotlib.facets',
229
+ 'StripesFacets': '.plotlib.facets',
230
+ 'flat_unique': '.plotlib.facets',
231
+ 'Bar': '.plotlib.plotter',
232
+ 'Beeswarm': '.plotlib.plotter',
233
+ 'BlandAltman': '.plotlib.plotter',
234
+ 'Box': '.plotlib.plotter',
235
+ 'CapabilityConfidenceInterval': '.plotlib.plotter',
236
+ 'CategoricalObservation': '.plotlib.plotter',
237
+ 'CenterLocation': '.plotlib.plotter',
238
+ 'ConfidenceInterval': '.plotlib.plotter',
239
+ 'DensityCurve': '.plotlib.plotter',
240
+ 'ErrorBar': '.plotlib.plotter',
241
+ 'FittedDensity': '.plotlib.plotter',
242
+ 'GaussianKDE': '.plotlib.plotter',
243
+ 'GaussianKDEContour': '.plotlib.plotter',
244
+ 'GaussianKDEContourUnivariate': '.plotlib.plotter',
245
+ 'HideSubplot': '.plotlib.plotter',
246
+ 'Jitter': '.plotlib.plotter',
247
+ 'Line': '.plotlib.plotter',
248
+ 'LinearRegressionLine': '.plotlib.plotter',
249
+ 'LoessLine': '.plotlib.plotter',
250
+ 'MeanTest': '.plotlib.plotter',
251
+ 'ParallelCoordinate': '.plotlib.plotter',
252
+ 'Pareto': '.plotlib.plotter',
253
+ 'Plotter': '.plotlib.plotter',
254
+ 'Probability': '.plotlib.plotter',
255
+ 'ProportionTest': '.plotlib.plotter',
256
+ 'QuantileBoxes': '.plotlib.plotter',
257
+ 'Scatter': '.plotlib.plotter',
258
+ 'SkipSubplot': '.plotlib.plotter',
259
+ 'SpreadWidth': '.plotlib.plotter',
260
+ 'StandardErrorMean': '.plotlib.plotter',
261
+ 'Stem': '.plotlib.plotter',
262
+ 'StripeLine': '.plotlib.plotter',
263
+ 'StripeSpan': '.plotlib.plotter',
264
+ 'TransformPlotter': '.plotlib.plotter',
265
+ 'VariationTest': '.plotlib.plotter',
266
+ 'Violin': '.plotlib.plotter',
267
+ 'BivariateUnivariateCharts': '.plotlib.precast',
268
+ 'GageRnRCharts': '.plotlib.precast',
269
+ 'GageStudyCharts': '.plotlib.precast',
270
+ 'PairComparisonCharts': '.plotlib.precast',
271
+ 'PairwiseMatrixCharts': '.plotlib.precast',
272
+ 'ParameterRelevanceCharts': '.plotlib.precast',
273
+ 'ProcessCapabilityAnalysisCharts': '.plotlib.precast',
274
+ 'ResidualsCharts': '.plotlib.precast',
275
+ 'bonferroni_ci': '.statistics.confidence',
276
+ 'confidence_to_alpha': '.statistics.confidence',
277
+ 'cp_ci': '.statistics.confidence',
278
+ 'cpk_ci': '.statistics.confidence',
279
+ 'delta_mean_ci': '.statistics.confidence',
280
+ 'delta_proportions_ci': '.statistics.confidence',
281
+ 'delta_stdev_ci': '.statistics.confidence',
282
+ 'delta_variance_ci': '.statistics.confidence',
283
+ 'fit_ci': '.statistics.confidence',
284
+ 'mean_ci': '.statistics.confidence',
285
+ 'median_ci': '.statistics.confidence',
286
+ 'prediction_ci': '.statistics.confidence',
287
+ 'proportion_ci': '.statistics.confidence',
288
+ 'sem': '.statistics.confidence',
289
+ 'stdev_ci': '.statistics.confidence',
290
+ 'variance_ci': '.statistics.confidence',
291
+ 'DistributionEstimator': '.statistics.estimation',
292
+ 'GageEstimator': '.statistics.estimation',
293
+ 'LocationDispersionEstimator': '.statistics.estimation',
294
+ 'Loess': '.statistics.estimation',
295
+ 'Lowess': '.statistics.estimation',
296
+ 'MeasurementUncertainty': '.statistics.estimation',
297
+ 'ProcessEstimator': '.statistics.estimation',
298
+ 'estimate_capability_confidence': '.statistics.estimation',
299
+ 'estimate_distribution': '.statistics.estimation',
300
+ 'estimate_kernel_density': '.statistics.estimation',
301
+ 'estimate_kernel_density_2d': '.statistics.estimation',
302
+ 'estimate_probability_density': '.statistics.estimation',
303
+ 'estimate_resolution': '.statistics.estimation',
304
+ 'root_sum_squares': '.statistics.estimation',
305
+ 'all_normal': '.statistics.hypothesis',
306
+ 'anderson_darling_test': '.statistics.hypothesis',
307
+ 'dunn_test': '.statistics.hypothesis',
308
+ 'f_test': '.statistics.hypothesis',
309
+ 'kolmogorov_smirnov_test': '.statistics.hypothesis',
310
+ 'kurtosis_test': '.statistics.hypothesis',
311
+ 'levene_test': '.statistics.hypothesis',
312
+ 'mean_stability_test': '.statistics.hypothesis',
313
+ 'pairwise_tests': '.statistics.hypothesis',
314
+ 'position_test': '.statistics.hypothesis',
315
+ 'proportions_test': '.statistics.hypothesis',
316
+ 'skew_test': '.statistics.hypothesis',
317
+ 't_test': '.statistics.hypothesis',
318
+ 'variance_stability_test': '.statistics.hypothesis',
319
+ 'variance_test': '.statistics.hypothesis',
320
+ 'UNBOUNDED': '.statistics.montecarlo',
321
+ 'Binning': '.statistics.montecarlo',
322
+ 'RandomProcessValue': '.statistics.montecarlo',
323
+ 'Specification': '.statistics.montecarlo',
324
+ 'SpecLimits': '.statistics.montecarlo',
325
+ 'inclination_displacement': '.statistics.montecarlo',
326
+ 'round_to_nearest': '.statistics.montecarlo',
327
+ }
328
+
329
+
330
+ def __getattr__(name: str) -> Any:
331
+ module_name = _LAZY_SUBMODULES.get(name)
332
+ if module_name is None:
333
+ raise AttributeError(f'module {__name__!r} has no attribute {name!r}')
334
+ module = importlib.import_module(module_name, __name__)
335
+ value = getattr(module, name)
336
+ globals()[name] = value
337
+ return value
338
+
339
+
340
+ def __dir__() -> list[str]:
341
+ return sorted(set(globals()) | set(_LAZY_SUBMODULES))
342
+
343
+
344
+ __all__ = [
345
+ 'ANOVA',
346
+ 'CATEGORY',
347
+ 'COLOR',
348
+ 'CONFIG',
349
+ 'DEFAULT',
350
+ 'DIST',
351
+ 'KW',
352
+ 'LABEL',
353
+ 'LINE',
354
+ 'PLOTTER',
355
+ 'RE',
356
+ 'SIGMA_DIFFERENCE',
357
+ 'STR',
358
+ 'UNBOUNDED',
359
+ 'AxesFacets',
360
+ 'Bar',
361
+ 'Beeswarm',
362
+ 'Binning',
363
+ 'BivariateUnivariateCharts',
364
+ 'BlandAltman',
365
+ 'Box',
366
+ 'CapabilityConfidenceInterval',
367
+ 'CategoricalObservation',
368
+ 'CenterLocation',
369
+ 'Chart',
370
+ 'ConfidenceInterval',
371
+ 'DensityCurve',
372
+ 'DistributionEstimator',
373
+ 'Dodger',
374
+ 'ErrorBar',
375
+ 'Factor',
376
+ 'FittedDensity',
377
+ 'FractionalFactorialDesignBuilder',
378
+ 'FullFactorial2kDesignBuilder',
379
+ 'FullFactorialDesignBuilder',
380
+ 'GageEstimator',
381
+ 'GageRnRCharts',
382
+ 'GageRnRModel',
383
+ 'GageStudyCharts',
384
+ 'GageStudyModel',
385
+ 'GaussianKDE',
386
+ 'GaussianKDEContour',
387
+ 'GaussianKDEContourUnivariate',
388
+ 'GeneralizedLinearModel',
389
+ 'HideSubplot',
390
+ 'HueLabel',
391
+ 'Jitter',
392
+ 'JointChart',
393
+ 'LabelFacets',
394
+ 'Line',
395
+ 'LinearModel',
396
+ 'LinearRegressionLine',
397
+ 'LocationDispersionEstimator',
398
+ 'Loess',
399
+ 'LoessLine',
400
+ 'Lowess',
401
+ 'MeanTest',
402
+ 'MeasurementUncertainty',
403
+ 'MultivariateChart',
404
+ 'PairComparisonCharts',
405
+ 'PairwiseMatrixCharts',
406
+ 'ParallelCoordinate',
407
+ 'ParameterRelevanceCharts',
408
+ 'Pareto',
409
+ 'Plotter',
410
+ 'Probability',
411
+ 'ProcessCapabilityAnalysisCharts',
412
+ 'ProcessEstimator',
413
+ 'ProportionTest',
414
+ 'QuantileBoxes',
415
+ 'RandomProcessValue',
416
+ 'ResidualsCharts',
417
+ 'Scatter',
418
+ 'ShapeLabel',
419
+ 'SingleChart',
420
+ 'SizeLabel',
421
+ 'SkipSubplot',
422
+ 'SpecLimits',
423
+ 'Specification',
424
+ 'SpreadWidth',
425
+ 'StandardErrorMean',
426
+ 'Stem',
427
+ 'StripeLine',
428
+ 'StripeSpan',
429
+ 'StripesFacets',
430
+ 'TransformPlotter',
431
+ 'VariationTest',
432
+ 'Violin',
433
+ '__version__',
434
+ 'all_normal',
435
+ 'anderson_darling_test',
436
+ 'anova_table',
437
+ 'bonferroni_ci',
438
+ 'confidence_to_alpha',
439
+ 'cp_ci',
440
+ 'cpk_ci',
441
+ 'delta_mean_ci',
442
+ 'delta_proportions_ci',
443
+ 'delta_stdev_ci',
444
+ 'delta_variance_ci',
445
+ 'dunn_test',
446
+ 'estimate_capability_confidence',
447
+ 'estimate_distribution',
448
+ 'estimate_kernel_density',
449
+ 'estimate_kernel_density_2d',
450
+ 'estimate_probability_density',
451
+ 'estimate_resolution',
452
+ 'f_test',
453
+ 'fit_ci',
454
+ 'flat_unique',
455
+ 'frames_to_html',
456
+ 'get_default_generators',
457
+ 'get_term_name',
458
+ 'hierarchical',
459
+ 'inclination_displacement',
460
+ 'is_main_parameter',
461
+ 'kolmogorov_smirnov_test',
462
+ 'kurtosis_test',
463
+ 'levene_test',
464
+ 'list_dataset',
465
+ 'load_dataset',
466
+ 'mean_ci',
467
+ 'mean_stability_test',
468
+ 'median_ci',
469
+ 'pairwise_tests',
470
+ 'position_test',
471
+ 'prediction_ci',
472
+ 'proportion_ci',
473
+ 'proportions_test',
474
+ 'root_sum_squares',
475
+ 'round_to_nearest',
476
+ 'sem',
477
+ 'skew_test',
478
+ 'stdev_ci',
479
+ 'style',
480
+ 't_test',
481
+ 'terms_effect',
482
+ 'terms_probability',
483
+ 'uniques',
484
+ 'variance_ci',
485
+ 'variance_inflation_factor',
486
+ 'variance_stability_test',
487
+ 'variance_test',
488
+ ]