data-manipulation-utilities 0.2.8.dev714__tar.gz → 0.2.8.dev725__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 (140) hide show
  1. {data_manipulation_utilities-0.2.8.dev714/src/data_manipulation_utilities.egg-info → data_manipulation_utilities-0.2.8.dev725}/PKG-INFO +33 -3
  2. data_manipulation_utilities-0.2.8.dev725/pyproject.toml +82 -0
  3. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/plotting/plotter.py +23 -11
  4. data_manipulation_utilities-0.2.8.dev714/.github/workflows/publish.yaml +0 -87
  5. data_manipulation_utilities-0.2.8.dev714/.gitignore +0 -186
  6. data_manipulation_utilities-0.2.8.dev714/.pylintrc +0 -8
  7. data_manipulation_utilities-0.2.8.dev714/PKG-INFO +0 -1795
  8. data_manipulation_utilities-0.2.8.dev714/doc/images/cache_hash.png +0 -0
  9. data_manipulation_utilities-0.2.8.dev714/poetry.lock +0 -4069
  10. data_manipulation_utilities-0.2.8.dev714/pyproject.toml +0 -79
  11. data_manipulation_utilities-0.2.8.dev714/pytest.ini +0 -11
  12. data_manipulation_utilities-0.2.8.dev714/setup.cfg +0 -4
  13. data_manipulation_utilities-0.2.8.dev714/src/data_manipulation_utilities.egg-info/SOURCES.txt +0 -137
  14. data_manipulation_utilities-0.2.8.dev714/src/data_manipulation_utilities.egg-info/dependency_links.txt +0 -1
  15. data_manipulation_utilities-0.2.8.dev714/src/data_manipulation_utilities.egg-info/entry_points.txt +0 -7
  16. data_manipulation_utilities-0.2.8.dev714/src/data_manipulation_utilities.egg-info/top_level.txt +0 -3
  17. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/git/publish +0 -89
  18. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/kerberos/check_expiration +0 -21
  19. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/kerberos/convert_certificate +0 -22
  20. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/ml/compare_classifiers.py +0 -85
  21. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/physics/check_truth.py +0 -121
  22. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/rfile/compare_root_files.py +0 -299
  23. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/rfile/print_trees.py +0 -35
  24. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/ssh/coned.py +0 -168
  25. data_manipulation_utilities-0.2.8.dev714/src/dmu_scripts/text/transform_text.py +0 -46
  26. data_manipulation_utilities-0.2.8.dev714/tests/arrays/test_arrays_utilities.py +0 -33
  27. data_manipulation_utilities-0.2.8.dev714/tests/conftest.py +0 -31
  28. data_manipulation_utilities-0.2.8.dev714/tests/generic/test_generic_utilities.py +0 -123
  29. data_manipulation_utilities-0.2.8.dev714/tests/generic/test_hashing.py +0 -49
  30. data_manipulation_utilities-0.2.8.dev714/tests/generic/test_version_management.py +0 -86
  31. data_manipulation_utilities-0.2.8.dev714/tests/logging/test_log_store.py +0 -137
  32. data_manipulation_utilities-0.2.8.dev714/tests/logging/test_messages.py +0 -31
  33. data_manipulation_utilities-0.2.8.dev714/tests/ml/test_cv_classifier.py +0 -162
  34. data_manipulation_utilities-0.2.8.dev714/tests/ml/test_cv_diagnostics.py +0 -83
  35. data_manipulation_utilities-0.2.8.dev714/tests/ml/test_cv_performance.py +0 -46
  36. data_manipulation_utilities-0.2.8.dev714/tests/ml/test_cv_predict.py +0 -161
  37. data_manipulation_utilities-0.2.8.dev714/tests/ml/test_ml_utilities.py +0 -61
  38. data_manipulation_utilities-0.2.8.dev714/tests/ml/test_train_mva.py +0 -133
  39. data_manipulation_utilities-0.2.8.dev714/tests/pdataframe/test_pdataframe_utilities.py +0 -105
  40. data_manipulation_utilities-0.2.8.dev714/tests/plotting/test_matrix.py +0 -42
  41. data_manipulation_utilities-0.2.8.dev714/tests/plotting/test_plotter_1d.py +0 -230
  42. data_manipulation_utilities-0.2.8.dev714/tests/plotting/test_plotter_2d.py +0 -88
  43. data_manipulation_utilities-0.2.8.dev714/tests/rdataframe/test_atr_mgr.py +0 -31
  44. data_manipulation_utilities-0.2.8.dev714/tests/rdataframe/test_rdataframe_utilities.py +0 -133
  45. data_manipulation_utilities-0.2.8.dev714/tests/rfile/test_ddfgetter.py +0 -110
  46. data_manipulation_utilities-0.2.8.dev714/tests/rfile/test_rfile_utilities.py +0 -18
  47. data_manipulation_utilities-0.2.8.dev714/tests/rfile/test_rfprinter.py +0 -49
  48. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_fit_plotter.py +0 -666
  49. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_fit_stats.py +0 -44
  50. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_fitter.py +0 -208
  51. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_function.py +0 -255
  52. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_gofcalculator.py +0 -61
  53. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_minimizer.py +0 -74
  54. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_model_factory.py +0 -233
  55. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_parameter_library.py +0 -45
  56. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_stats_utilities.py +0 -282
  57. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_wdata.py +0 -150
  58. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_zfit.py +0 -21
  59. data_manipulation_utilities-0.2.8.dev714/tests/stats/test_zfit_models.py +0 -108
  60. data_manipulation_utilities-0.2.8.dev714/tests/testing/test_testing_utilities.py +0 -67
  61. data_manipulation_utilities-0.2.8.dev714/tests/text/test_transformer.py +0 -70
  62. data_manipulation_utilities-0.2.8.dev714/tests/worflow/test_cache.py +0 -130
  63. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/README.md +0 -0
  64. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/__init__.py +0 -0
  65. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/arrays/utilities.py +0 -0
  66. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/generic/hashing.py +0 -0
  67. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/generic/utilities.py +0 -0
  68. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/generic/version_management.py +0 -0
  69. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/logging/log_store.py +0 -0
  70. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/logging/messages.py +0 -0
  71. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/ml/cv_classifier.py +0 -0
  72. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/ml/cv_diagnostics.py +0 -0
  73. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/ml/cv_performance.py +0 -0
  74. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/ml/cv_predict.py +0 -0
  75. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/ml/train_mva.py +0 -0
  76. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/ml/utilities.py +0 -0
  77. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/pdataframe/utilities.py +0 -0
  78. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/plotting/fwhm.py +0 -0
  79. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/plotting/matrix.py +0 -0
  80. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/plotting/plotter_1d.py +0 -0
  81. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/plotting/plotter_2d.py +0 -0
  82. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/plotting/utilities.py +0 -0
  83. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/rdataframe/atr_mgr.py +0 -0
  84. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/rdataframe/utilities.py +0 -0
  85. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/rfile/ddfgetter.py +0 -0
  86. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/rfile/rfprinter.py +0 -0
  87. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/rfile/utilities.py +0 -0
  88. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/fit_stats.py +0 -0
  89. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/fitter.py +0 -0
  90. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/function.py +0 -0
  91. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/gof_calculator.py +0 -0
  92. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/minimizers.py +0 -0
  93. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/model_factory.py +0 -0
  94. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/parameters.py +0 -0
  95. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/utilities.py +0 -0
  96. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/wdata.py +0 -0
  97. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/zfit.py +0 -0
  98. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/zfit_models.py +0 -0
  99. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/stats/zfit_plotter.py +0 -0
  100. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/testing/utilities.py +0 -0
  101. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/text/transformer.py +0 -0
  102. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/workflow/__init__.py +0 -0
  103. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu/workflow/cache.py +0 -0
  104. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/__init__.py +0 -0
  105. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/diagnostics_from_file.yaml +0 -0
  106. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/diagnostics_from_model.yaml +0 -0
  107. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/diagnostics_multiple_methods.yaml +0 -0
  108. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/diagnostics_overlay.yaml +0 -0
  109. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/train_mva.yaml +0 -0
  110. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/train_mva_def.yaml +0 -0
  111. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/train_mva_with_diagnostics.yaml +0 -0
  112. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/ml/tests/train_mva_with_preffix.yaml +0 -0
  113. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/2d.yaml +0 -0
  114. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/fig_size.yaml +0 -0
  115. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/high_stat.yaml +0 -0
  116. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/legend.yaml +0 -0
  117. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/line.yaml +0 -0
  118. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/name.yaml +0 -0
  119. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/no_bounds.yaml +0 -0
  120. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/normalized.yaml +0 -0
  121. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/plug_fwhm.yaml +0 -0
  122. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/plug_stats.yaml +0 -0
  123. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/simple.yaml +0 -0
  124. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/stats.yaml +0 -0
  125. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/styling.yaml +0 -0
  126. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/title.yaml +0 -0
  127. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/plotting/tests/weights.yaml +0 -0
  128. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/rfile/friends.yaml +0 -0
  129. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/stats/fitter/test_simple.yaml +0 -0
  130. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/stats/kde_optimizer/control.json +0 -0
  131. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/stats/kde_optimizer/signal.json +0 -0
  132. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/stats/parameters/data.yaml +0 -0
  133. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/tests/config.json +0 -0
  134. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/tests/config.yaml +0 -0
  135. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/tests/pdf_to_tex.txt +0 -0
  136. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/text/transform.toml +0 -0
  137. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/text/transform.txt +0 -0
  138. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/text/transform_set.toml +0 -0
  139. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/text/transform_set.txt +0 -0
  140. {data_manipulation_utilities-0.2.8.dev714 → data_manipulation_utilities-0.2.8.dev725}/src/dmu_data/text/transform_trf.txt +0 -0
@@ -1,7 +1,36 @@
1
- Metadata-Version: 2.4
2
- Name: data_manipulation_utilities
3
- Version: 0.2.8.dev714
1
+ Metadata-Version: 2.3
2
+ Name: data-manipulation-utilities
3
+ Version: 0.2.8.dev725
4
4
  Summary: Project storing utilities needed to reduce boilerplate code when analyzing data
5
+ Requires-Python: >=3.10,<3.13
6
+ Classifier: Programming Language :: Python :: 3
7
+ Classifier: Programming Language :: Python :: 3.10
8
+ Classifier: Programming Language :: Python :: 3.11
9
+ Classifier: Programming Language :: Python :: 3.12
10
+ Provides-Extra: dev
11
+ Provides-Extra: fit
12
+ Provides-Extra: ml
13
+ Requires-Dist: PyYAML
14
+ Requires-Dist: awkward
15
+ Requires-Dist: awkward-pandas
16
+ Requires-Dist: dask[dataframe,distributed]
17
+ Requires-Dist: hist[plot]
18
+ Requires-Dist: joblib ; extra == "ml"
19
+ Requires-Dist: logzero
20
+ Requires-Dist: matplotlib
21
+ Requires-Dist: mplhep
22
+ Requires-Dist: numpy
23
+ Requires-Dist: omegaconf
24
+ Requires-Dist: optuna ; extra == "ml"
25
+ Requires-Dist: pandas
26
+ Requires-Dist: pytest ; extra == "dev"
27
+ Requires-Dist: scikit-learn ; extra == "ml"
28
+ Requires-Dist: scipy
29
+ Requires-Dist: tensorflow
30
+ Requires-Dist: toml
31
+ Requires-Dist: tqdm
32
+ Requires-Dist: uproot
33
+ Requires-Dist: zfit (==0.26.0) ; extra == "fit"
5
34
  Description-Content-Type: text/markdown
6
35
 
7
36
  [TOC]
@@ -1793,3 +1822,4 @@ lxplus:
1793
1822
  ```
1794
1823
 
1795
1824
  and should be placed in `$HOME/.config/dmu/ssh/servers.yaml`
1825
+
@@ -0,0 +1,82 @@
1
+ [tool.poetry]
2
+ name = 'data-manipulation-utilities'
3
+ description = 'Project storing utilities needed to reduce boilerplate code when analyzing data'
4
+ version = "0.2.8.dev725"
5
+ readme = 'README.md'
6
+ package-mode = true
7
+ packages = [
8
+ {include='dmu', from='src'},
9
+ {include='dmu_data', from='src'}]
10
+
11
+ [[tool.poetry.include]]
12
+ path = "src/dmu_data/**/*.yaml"
13
+ format = "wheel"
14
+
15
+ [[tool.poetry.include]]
16
+ path = "src/dmu_data/**/*.toml"
17
+ format = "wheel"
18
+
19
+ [[tool.poetry.include]]
20
+ path = "src/dmu_data/**/*.json"
21
+ format = "wheel"
22
+
23
+ [[tool.poetry.include]]
24
+ path = "src/dmu_data/**/*.txt"
25
+ format = "wheel"
26
+
27
+ [tool.poetry.dependencies]
28
+ python = '>=3.10, <3.13'
29
+ logzero = '*'
30
+ PyYAML = '*'
31
+ scipy = '*'
32
+ awkward = '*'
33
+ tqdm = '*'
34
+ omegaconf = '*'
35
+ toml = '*'
36
+ uproot = '*'
37
+ numpy = '*'
38
+ matplotlib = '*'
39
+ mplhep = '*'
40
+ pandas = '*'
41
+ tensorflow = '*'
42
+ awkward-pandas = '*'
43
+ dask = {version='*', extras =['dataframe','distributed']}
44
+ hist = {version='*', extras =['plot']}
45
+ zfit = {version='0.26.0', optional=true}
46
+ scikit-learn = {version='*', optional=true}
47
+ joblib = {version='*', optional=true}
48
+ optuna = {version='*', optional=true}
49
+ pytest = {version='*', optional=true}
50
+
51
+ [tool.poetry.extras]
52
+ fit = ['zfit']
53
+ ml = ['scikit-learn', 'joblib', 'optuna']
54
+ dev = ['pytest']
55
+
56
+ [build-system]
57
+ requires = [
58
+ 'poetry-core>=1.0.0',
59
+ 'poetry-dynamic-versioning>=1.0.0'
60
+ ]
61
+ build-backend = 'poetry_dynamic_versioning.backend'
62
+
63
+ [tool.poetry-dynamic-versioning]
64
+ enable = false
65
+ vcs = 'git'
66
+ style = 'pep440'
67
+ pattern = 'default-unprefixed'
68
+ format-jinja = """
69
+ {%- if distance == 0 -%}
70
+ {{ base }}
71
+ {%- else -%}
72
+ {{ serialize_pep440(bump_version(base), dev=distance) }}
73
+ {%- endif -%}
74
+ """
75
+
76
+ [tool.poetry.scripts]
77
+ transform_text ='dmu_scripts.text.transform_text:main'
78
+ coned ='dmu_scripts.ssh.coned:main'
79
+ check_truth ='dmu_scripts.physics.check_truth:main'
80
+ print_trees ='dmu_scripts.rfile.print_trees:main'
81
+ compare_root_files ='dmu_scripts.rfile.compare_root_files:main'
82
+ compare_classifiers ='dmu_scripts.ml.compare_classifiers:main'
@@ -5,12 +5,12 @@ Module containing plotter class
5
5
  import os
6
6
  import json
7
7
  import math
8
- from typing import Union
9
8
 
10
9
  import numpy
11
10
  import matplotlib.pyplot as plt
12
11
 
13
- from ROOT import RDataFrame
12
+ from ROOT import RDataFrame, RDF
13
+ from omegaconf import DictConfig
14
14
  from dmu.logging.log_store import LogStore
15
15
 
16
16
  log = LogStore.add_logger('dmu:plotting:Plotter')
@@ -20,16 +20,28 @@ class Plotter:
20
20
  Base class of Plotter1D and Plotter2D
21
21
  '''
22
22
  #-------------------------------------
23
- def __init__(self, d_rdf=None, cfg=None):
24
- if not isinstance( cfg, dict):
23
+ def __init__(
24
+ self,
25
+ d_rdf: dict|None =None,
26
+ cfg : dict|DictConfig|None =None):
27
+ '''
28
+ Parameters
29
+ --------------
30
+ d_rdf: Dictionary where
31
+ key : Identifier of dataset
32
+ value: ROOT dataframe representing dataset
33
+
34
+ cfg : Dictionary or DictConfig instance holding configuration
35
+ '''
36
+ if not isinstance( cfg, (dict,DictConfig)):
25
37
  raise ValueError('Config dictionary not passed')
26
38
 
27
39
  if not isinstance(d_rdf, dict):
28
40
  raise ValueError('Dataframe dictionary not passed')
29
41
 
30
42
  self._d_cfg = cfg
31
- self._d_rdf : dict[str, RDataFrame] = { name : self._preprocess_rdf(rdf) for name, rdf in d_rdf.items()}
32
- self._d_wgt : Union[dict[str, Union[numpy.ndarray, None]], None]
43
+ self._d_rdf : dict[str, RDF.RNode] = { name : self._preprocess_rdf(rdf) for name, rdf in d_rdf.items()}
44
+ self._d_wgt : dict[str, numpy.ndarray|None] | None
33
45
 
34
46
  self._title : str = ''
35
47
  #-------------------------------------
@@ -68,9 +80,9 @@ class Plotter:
68
80
 
69
81
  return minx, maxx
70
82
  #-------------------------------------
71
- def _preprocess_rdf(self, rdf : RDataFrame) -> RDataFrame:
83
+ def _preprocess_rdf(self, rdf : RDF.RNode) -> RDF.RNode:
72
84
  '''
73
- rdf (RDataFrame): ROOT dataframe
85
+ rdf (RDF.RNode): ROOT dataframe
74
86
 
75
87
  returns preprocessed dataframe
76
88
  '''
@@ -146,7 +158,7 @@ class Plotter:
146
158
 
147
159
  return rdf
148
160
  # --------------------------------------------
149
- def _print_weights(self, arr_wgt : Union[numpy.ndarray, None], var : str, sample : str) -> None:
161
+ def _print_weights(self, arr_wgt : numpy.ndarray|None, var : str, sample : str) -> None:
150
162
  if arr_wgt is None:
151
163
  log.debug(f'Not using weights for {sample}:{var}')
152
164
  return
@@ -171,7 +183,7 @@ class Plotter:
171
183
 
172
184
  return fig_size
173
185
  #-------------------------------------
174
- def _get_weights(self, var) -> Union[dict[str, Union[numpy.ndarray, None]], None]:
186
+ def _get_weights(self, var) -> dict[str, numpy.ndarray|None]| None:
175
187
  d_cfg = self._d_cfg['plots'][var]
176
188
  if 'weights' not in d_cfg:
177
189
  return None
@@ -186,7 +198,7 @@ class Plotter:
186
198
 
187
199
  return d_weight
188
200
  # --------------------------------------------
189
- def _read_weights(self, name : str, rdf : RDataFrame) -> numpy.ndarray:
201
+ def _read_weights(self, name : str, rdf : RDF.RNode) -> numpy.ndarray:
190
202
  v_col = rdf.GetColumnNames()
191
203
  l_col = [ col.c_str() for col in v_col ]
192
204
 
@@ -1,87 +0,0 @@
1
- name: Publish Python 🐍 distribution 📦 to PyPI and TestPyPI
2
- on: push
3
- jobs:
4
- build:
5
- name : Build distribution
6
- runs-on: ubuntu-latest
7
- strategy:
8
- max-parallel: 5
9
- steps:
10
- - uses: actions/checkout@v4
11
- with:
12
- fetch-depth: 0
13
- - name: Set up micromamba
14
- uses: mamba-org/setup-micromamba@v1
15
- with:
16
- micromamba-version: 'latest'
17
- environment-name: myenv
18
- create-args: >-
19
- python=3.12
20
- gxx
21
- root
22
- channels: conda-forge
23
- init-shell: bash
24
- - name: Define output directory
25
- run: |
26
- ANADIR=$PWD/output
27
- echo "ANADIR=$PWD/output" >> "$GITHUB_ENV"
28
-
29
- mkdir -p $ANADIR
30
- #-----------
31
- - name: Cache dependencies installed with poetry
32
- uses: actions/cache@v4
33
- with:
34
- path: |
35
- ~/.cache/pypoetry
36
- ~/.cache/pip
37
- key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock', '**/pyproject.toml') }}
38
- restore-keys: |
39
- ${{ runner.os }}-poetry-
40
- #-----------
41
- - name: Install pypa/build
42
- run: >-
43
- micromamba run -n myenv python3 -m
44
- pip install
45
- poetry
46
- build
47
- setuptools_scm
48
- #-----------
49
- - name: Install project dependencies
50
- run: |
51
- micromamba run -n myenv poetry install --extras 'fit ml dev'
52
- - name: Install project itself
53
- run: |
54
- micromamba run -n myenv pip install --no-deps .
55
- #-----------
56
- - name: Test
57
- run: |
58
- micromamba run -n myenv pytest tests
59
- #-----------
60
- - name: Build a binary wheel and a source tarball
61
- run: micromamba run -n myenv python3 -m build
62
- #-----------
63
- - name: Store the distribution packages
64
- uses: actions/upload-artifact@v4
65
- with:
66
- name: python-package-distributions
67
- path: dist/
68
- #--------------------
69
- publish-to-pypi:
70
- name: >-
71
- Publish Python 🐍 distribution 📦 to PyPI
72
- needs:
73
- - build
74
- runs-on: ubuntu-latest
75
- environment:
76
- name: pypi
77
- url: https://pypi.org/p/data-manipulation-utilities
78
- permissions:
79
- id-token: write # IMPORTANT: mandatory for trusted publishing
80
- steps:
81
- - name: Download all the dists
82
- uses: actions/download-artifact@v4
83
- with:
84
- name: python-package-distributions
85
- path: dist/
86
- - name: Publish distribution 📦 to PyPI
87
- uses: pypa/gh-action-pypi-publish@release/v1
@@ -1,186 +0,0 @@
1
- # Created by https://www.toptal.com/developers/gitignore/api/python
2
- # Edit at https://www.toptal.com/developers/gitignore?templates=python
3
-
4
- ### Python ###
5
- # Byte-compiled / optimized / DLL files
6
- __pycache__/
7
- *.py[cod]
8
- *$py.class
9
-
10
- # C extensions
11
- *.so
12
-
13
- # Distribution / packaging
14
- .Python
15
- build/
16
- develop-eggs/
17
- dist/
18
- downloads/
19
- eggs/
20
- .eggs/
21
- lib/
22
- lib64/
23
- parts/
24
- sdist/
25
- var/
26
- wheels/
27
- share/python-wheels/
28
- *.egg-info/
29
- .installed.cfg
30
- *.egg
31
- MANIFEST
32
-
33
- # PyInstaller
34
- # Usually these files are written by a python script from a template
35
- # before PyInstaller builds the exe, so as to inject date/other infos into it.
36
- *.manifest
37
- *.spec
38
-
39
- # Installer logs
40
- pip-log.txt
41
- pip-delete-this-directory.txt
42
-
43
- # Unit test / coverage reports
44
- htmlcov/
45
- .tox/
46
- .nox/
47
- .coverage
48
- .coverage.*
49
- .cache
50
- nosetests.xml
51
- coverage.xml
52
- *.cover
53
- *.py,cover
54
- .hypothesis/
55
- .pytest_cache/
56
- cover/
57
-
58
- # Translations
59
- *.mo
60
- *.pot
61
-
62
- # Django stuff:
63
- *.log
64
- local_settings.py
65
- db.sqlite3
66
- db.sqlite3-journal
67
-
68
- # Flask stuff:
69
- instance/
70
- .webassets-cache
71
-
72
- # Scrapy stuff:
73
- .scrapy
74
-
75
- # Sphinx documentation
76
- docs/_build/
77
-
78
- # PyBuilder
79
- .pybuilder/
80
- target/
81
-
82
- # Jupyter Notebook
83
- .ipynb_checkpoints
84
-
85
- # IPython
86
- profile_default/
87
- ipython_config.py
88
-
89
- # pyenv
90
- # For a library or package, you might want to ignore these files since the code is
91
- # intended to run in multiple environments; otherwise, check them in:
92
- # .python-version
93
-
94
- # pipenv
95
- # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
96
- # However, in case of collaboration, if having platform-specific dependencies or dependencies
97
- # having no cross-platform support, pipenv may install dependencies that don't work, or not
98
- # install all needed dependencies.
99
- #Pipfile.lock
100
-
101
- # poetry
102
- # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
103
- # This is especially recommended for binary packages to ensure reproducibility, and is more
104
- # commonly ignored for libraries.
105
- # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
106
- #poetry.lock
107
-
108
- # pdm
109
- # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
110
- #pdm.lock
111
- # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
112
- # in version control.
113
- # https://pdm.fming.dev/#use-with-ide
114
- .pdm.toml
115
-
116
- # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
117
- __pypackages__/
118
-
119
- # Celery stuff
120
- celerybeat-schedule
121
- celerybeat.pid
122
-
123
- # SageMath parsed files
124
- *.sage.py
125
-
126
- # Environments
127
- .env
128
- .venv
129
- env/
130
- venv/
131
- ENV/
132
- env.bak/
133
- venv.bak/
134
-
135
- # Spyder project settings
136
- .spyderproject
137
- .spyproject
138
-
139
- # Rope project settings
140
- .ropeproject
141
-
142
- # mkdocs documentation
143
- /site
144
-
145
- # mypy
146
- .mypy_cache/
147
- .dmypy.json
148
- dmypy.json
149
-
150
- # Pyre type checker
151
- .pyre/
152
-
153
- # pytype static type analyzer
154
- .pytype/
155
-
156
- # Cython debug symbols
157
- cython_debug/
158
-
159
- # PyCharm
160
- # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
161
- # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
162
- # and can be added to the global gitignore or merged into this file. For a more nuclear
163
- # option (not recommended) you can uncomment the following to ignore the entire idea folder.
164
- #.idea/
165
-
166
- ### Python Patch ###
167
- # Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration
168
- poetry.toml
169
-
170
- # ruff
171
- .ruff_cache/
172
-
173
- # LSP config files
174
- pyrightconfig.json
175
-
176
- # End of https://www.toptal.com/developers/gitignore/api/python
177
-
178
- *.swp
179
- *.png
180
- *.pkl
181
- *.root
182
-
183
- tests/*/*/*.json
184
- src/dmu_data/tests/*.tex
185
-
186
- !doc/images/*.png
@@ -1,8 +0,0 @@
1
- [MESSAGES CONTROL]
2
- disable=logging-fstring-interpolation, too-few-public-methods, line-too-long, no-name-in-module, too-many-locals, wrong-import-order
3
-
4
- [TYPECHECK]
5
- ignored-modules = ROOT, zfit
6
-
7
- [MASTER]
8
- ingnore=build