lessPython 0.1.0__tar.gz → 0.2.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 (137) hide show
  1. {lesspython-0.1.0 → lesspython-0.2.0}/PKG-INFO +35 -3
  2. {lesspython-0.1.0 → lesspython-0.2.0}/README.md +28 -0
  3. {lesspython-0.1.0 → lesspython-0.2.0}/pyproject.toml +11 -3
  4. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/Chart.py +754 -118
  5. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/Correlation.py +12 -1
  6. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/Flows.py +5 -1
  7. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/X.py +1 -1
  8. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/XY.py +95 -95
  9. lesspython-0.2.0/src/lessPy/bc_items_plotly.py +195 -0
  10. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/bc_plotly.py +97 -33
  11. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/dn_plotly.py +1 -1
  12. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/dot_plotly.py +112 -41
  13. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/freq_poly_plotly.py +1 -1
  14. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/getColors.py +6 -1
  15. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/hier_plotly.py +50 -7
  16. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/hs_plotly.py +3 -3
  17. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/pie_plotly.py +17 -7
  18. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/pivot.py +6 -3
  19. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plotly_utils.py +69 -15
  20. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_plotly.py +15 -3
  21. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_time.py +1 -1
  22. lesspython-0.2.0/src/lessPy/profile_plotly.py +121 -0
  23. lesspython-0.2.0/src/lessPy/stats_out.py +544 -0
  24. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/utils.py +54 -14
  25. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/vbs_plotly.py +14 -10
  26. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPython.egg-info/PKG-INFO +35 -3
  27. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPython.egg-info/SOURCES.txt +4 -0
  28. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPython.egg-info/requires.txt +4 -1
  29. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_chart.py +107 -11
  30. lesspython-0.2.0/tests/test_chart_items.py +75 -0
  31. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_correlation.py +17 -0
  32. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_date_infer.py +1 -1
  33. lesspython-0.2.0/tests/test_dot_plotly.py +237 -0
  34. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_hier_plotly.py +37 -0
  35. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_pie_plotly.py +9 -3
  36. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_pivot.py +5 -1
  37. lesspython-0.2.0/tests/test_profile.py +84 -0
  38. lesspython-0.2.0/tests/test_stats_out.py +176 -0
  39. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_vbs_plotly.py +3 -2
  40. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_x.py +11 -10
  41. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_xy.py +64 -35
  42. lesspython-0.1.0/src/lessPy/stats_out.py +0 -189
  43. lesspython-0.1.0/tests/test_dot_plotly.py +0 -113
  44. lesspython-0.1.0/tests/test_stats_out.py +0 -80
  45. {lesspython-0.1.0 → lesspython-0.2.0}/LICENSE +0 -0
  46. {lesspython-0.1.0 → lesspython-0.2.0}/setup.cfg +0 -0
  47. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/ANOVA.py +0 -0
  48. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/Logit.py +0 -0
  49. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/Prop_test.py +0 -0
  50. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/Regression.py +0 -0
  51. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/VariableLabels.py +0 -0
  52. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/__init__.py +0 -0
  53. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/anova_rmd.py +0 -0
  54. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/bubble_plotly.py +0 -0
  55. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corCFA.py +0 -0
  56. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corEFA.py +0 -0
  57. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corPrint.py +0 -0
  58. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corProp.py +0 -0
  59. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corRead.py +0 -0
  60. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corReflect.py +0 -0
  61. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corReorder.py +0 -0
  62. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/corScree.py +0 -0
  63. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Anova_1way.csv +0 -0
  64. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Anova_2way.csv +0 -0
  65. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Anova_rb.csv +0 -0
  66. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Anova_rbf.csv +0 -0
  67. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Anova_sp.csv +0 -0
  68. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/BodyMeas.csv +0 -0
  69. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Cars93.csv +0 -0
  70. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Employee.csv +0 -0
  71. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Employee_lbl.csv +0 -0
  72. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/FreqTable99.csv +0 -0
  73. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Jackets.csv +0 -0
  74. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Learn.csv +0 -0
  75. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Mach4.csv +0 -0
  76. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Mach4_lbl.csv +0 -0
  77. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/Reading.csv +0 -0
  78. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/StockPrice.csv +0 -0
  79. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/data/WeightLoss.csv +0 -0
  80. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/datasets.py +0 -0
  81. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/date_infer.py +0 -0
  82. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/details.py +0 -0
  83. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/logit_rmd.py +0 -0
  84. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/order_by.py +0 -0
  85. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_add.py +0 -0
  86. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_contour.py +0 -0
  87. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_contour_facet.py +0 -0
  88. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_forecast.py +0 -0
  89. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_mat_plotly.py +0 -0
  90. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/plt_smooth.py +0 -0
  91. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/prob_norm.py +0 -0
  92. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/prob_tcut.py +0 -0
  93. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/prob_znorm.py +0 -0
  94. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/radar_plotly.py +0 -0
  95. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/reg_rmd.py +0 -0
  96. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/rename.py +0 -0
  97. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/reshape.py +0 -0
  98. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/showColors.py +0 -0
  99. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/simCImean.py +0 -0
  100. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/simCLT.py +0 -0
  101. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/simFlips.py +0 -0
  102. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/simMeans.py +0 -0
  103. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPy/ttest.py +0 -0
  104. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPython.egg-info/dependency_links.txt +0 -0
  105. {lesspython-0.1.0 → lesspython-0.2.0}/src/lessPython.egg-info/top_level.txt +0 -0
  106. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_anova.py +0 -0
  107. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_bc_plotly.py +0 -0
  108. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_bubble_plotly.py +0 -0
  109. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_corcfa.py +0 -0
  110. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_corefa.py +0 -0
  111. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_corprint.py +0 -0
  112. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_corprop.py +0 -0
  113. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_corread.py +0 -0
  114. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_correflect.py +0 -0
  115. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_correorder.py +0 -0
  116. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_corscree.py +0 -0
  117. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_datasets.py +0 -0
  118. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_details.py +0 -0
  119. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_flows.py +0 -0
  120. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_getcolors.py +0 -0
  121. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_logit.py +0 -0
  122. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_order_by.py +0 -0
  123. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_prob_norm.py +0 -0
  124. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_prob_tcut.py +0 -0
  125. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_prob_znorm.py +0 -0
  126. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_prop_test.py +0 -0
  127. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_radar_plotly.py +0 -0
  128. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_regression.py +0 -0
  129. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_rename.py +0 -0
  130. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_reshape.py +0 -0
  131. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_showcolors.py +0 -0
  132. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_simcimean.py +0 -0
  133. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_simclt.py +0 -0
  134. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_simflips.py +0 -0
  135. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_simmeans.py +0 -0
  136. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_ttest.py +0 -0
  137. {lesspython-0.1.0 → lesspython-0.2.0}/tests/test_variablelabels.py +0 -0
@@ -1,10 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lessPython
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Summary: Python port of R's lessR: analytic-view visualizations, statistical models, and data utilities, rendered with plotly
5
5
  Author-email: "David W. Gerbing" <gerbing@pdx.edu>
6
6
  License-Expression: GPL-2.0-or-later
7
- Project-URL: Homepage, https://pypi.org/project/lessPython/
7
+ Project-URL: Homepage, https://github.com/dgerbing/lessPython
8
+ Project-URL: Repository, https://github.com/dgerbing/lessPython
9
+ Project-URL: Documentation, https://github.com/dgerbing/lessPython/blob/main/docs/getting-started.md
8
10
  Project-URL: Source (lessR), https://cran.r-project.org/package=lessR
9
11
  Keywords: visualization,statistics,plotly,regression,anova,factor-analysis,data-analysis,lessR
10
12
  Classifier: Development Status :: 4 - Beta
@@ -26,24 +28,54 @@ Requires-Dist: pandas>=2.0
26
28
  Requires-Dist: numpy>=1.24
27
29
  Requires-Dist: scipy>=1.10
28
30
  Requires-Dist: statsmodels>=0.14
31
+ Provides-Extra: png
32
+ Requires-Dist: plotly[kaleido]>=6.2; extra == "png"
29
33
  Provides-Extra: dev
30
34
  Requires-Dist: pytest; extra == "dev"
31
- Requires-Dist: kaleido; extra == "dev"
35
+ Requires-Dist: plotly[kaleido]>=6.2; extra == "dev"
32
36
  Dynamic: license-file
33
37
 
34
38
  # lessPython
35
39
 
40
+ [![PyPI](https://img.shields.io/pypi/v/lessPython.svg)](https://pypi.org/project/lessPython/)
41
+ [![Python versions](https://img.shields.io/pypi/pyversions/lessPython.svg)](https://pypi.org/project/lessPython/)
42
+ [![License](https://img.shields.io/pypi/l/lessPython.svg)](https://pypi.org/project/lessPython/)
43
+
36
44
  A Python port of [lessR](https://cran.r-project.org/package=lessR):
37
45
  analytic-view visualizations, statistical models, correlation and
38
46
  factor analysis, teaching simulations, and data utilities — the
39
47
  graphics rendered with plotly.
40
48
 
49
+ > **New to Python?** See the step-by-step
50
+ > **[Getting Started guide](https://github.com/dgerbing/lessPython/blob/main/docs/getting-started.md)**
51
+ > — Google Colab or Miniconda, from zero to your first chart. Written
52
+ > for students.
53
+
41
54
  Install as `lessPython`, import as `lessPy`:
42
55
 
43
56
  ```
44
57
  pip install lessPython
45
58
  ```
46
59
 
60
+ ### With Miniconda / conda
61
+
62
+ lessPython is published on PyPI, not conda-forge, so inside a conda
63
+ environment install it with `pip` (conda and pip coexist here — every
64
+ dependency ships as a standard wheel):
65
+
66
+ ```
67
+ conda create -n lesspy python=3.12
68
+ conda activate lesspy
69
+ pip install lessPython
70
+ ```
71
+
72
+ Reuse the environment in later sessions with just `conda activate
73
+ lesspy`. To confirm the install:
74
+
75
+ ```
76
+ python -c "import lessPy as lp; print(lp.read_data('Employee').shape)"
77
+ ```
78
+
47
79
  ```python
48
80
  import lessPy as lp
49
81
 
@@ -1,16 +1,44 @@
1
1
  # lessPython
2
2
 
3
+ [![PyPI](https://img.shields.io/pypi/v/lessPython.svg)](https://pypi.org/project/lessPython/)
4
+ [![Python versions](https://img.shields.io/pypi/pyversions/lessPython.svg)](https://pypi.org/project/lessPython/)
5
+ [![License](https://img.shields.io/pypi/l/lessPython.svg)](https://pypi.org/project/lessPython/)
6
+
3
7
  A Python port of [lessR](https://cran.r-project.org/package=lessR):
4
8
  analytic-view visualizations, statistical models, correlation and
5
9
  factor analysis, teaching simulations, and data utilities — the
6
10
  graphics rendered with plotly.
7
11
 
12
+ > **New to Python?** See the step-by-step
13
+ > **[Getting Started guide](https://github.com/dgerbing/lessPython/blob/main/docs/getting-started.md)**
14
+ > — Google Colab or Miniconda, from zero to your first chart. Written
15
+ > for students.
16
+
8
17
  Install as `lessPython`, import as `lessPy`:
9
18
 
10
19
  ```
11
20
  pip install lessPython
12
21
  ```
13
22
 
23
+ ### With Miniconda / conda
24
+
25
+ lessPython is published on PyPI, not conda-forge, so inside a conda
26
+ environment install it with `pip` (conda and pip coexist here — every
27
+ dependency ships as a standard wheel):
28
+
29
+ ```
30
+ conda create -n lesspy python=3.12
31
+ conda activate lesspy
32
+ pip install lessPython
33
+ ```
34
+
35
+ Reuse the environment in later sessions with just `conda activate
36
+ lesspy`. To confirm the install:
37
+
38
+ ```
39
+ python -c "import lessPy as lp; print(lp.read_data('Employee').shape)"
40
+ ```
41
+
14
42
  ```python
15
43
  import lessPy as lp
16
44
 
@@ -12,7 +12,7 @@ build-backend = "setuptools.build_meta"
12
12
 
13
13
  [project]
14
14
  name = "lessPython"
15
- version = "0.1.0"
15
+ version = "0.2.0"
16
16
  description = "Python port of R's lessR: analytic-view visualizations, statistical models, and data utilities, rendered with plotly"
17
17
  authors = [{ name = "David W. Gerbing", email = "gerbing@pdx.edu" }]
18
18
  readme = "README.md"
@@ -47,10 +47,18 @@ dependencies = [
47
47
  ]
48
48
 
49
49
  [project.optional-dependencies]
50
- dev = ["pytest", "kaleido"]
50
+ # static image export (fig.write_image / to_image) needs the Kaleido
51
+ # renderer. plotly owns the version coupling through its own extra,
52
+ # so defer to it rather than pin kaleido here. The kaleido extra
53
+ # first appeared in plotly 6.1, but pinned a release candidate;
54
+ # 6.2 is the first to require a stable kaleido>=1.0.0.
55
+ png = ["plotly[kaleido]>=6.2"]
56
+ dev = ["pytest", "plotly[kaleido]>=6.2"]
51
57
 
52
58
  [project.urls]
53
- Homepage = "https://pypi.org/project/lessPython/"
59
+ Homepage = "https://github.com/dgerbing/lessPython"
60
+ Repository = "https://github.com/dgerbing/lessPython"
61
+ Documentation = "https://github.com/dgerbing/lessPython/blob/main/docs/getting-started.md"
54
62
  "Source (lessR)" = "https://cran.r-project.org/package=lessR"
55
63
 
56
64
  [tool.setuptools.packages.find]