sinapsis-data-tools 0.2.29__tar.gz → 0.2.31__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 (118) hide show
  1. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/PKG-INFO +2 -1
  2. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/README.md +1 -0
  3. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/helpers/tags.py +1 -1
  4. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/__init__.py +1 -2
  5. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/inference/ml_base_inference.py +4 -3
  6. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/inference/xgboost_inference.py +3 -1
  7. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/training/ml_base_training.py +6 -6
  8. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/training/sklearn_manifold.py +9 -9
  9. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/training/sklearn_train.py +6 -10
  10. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/training/xgboost_train.py +2 -3
  11. sinapsis_data_tools-0.2.31/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/transformation/categorical_to_numerical.py +43 -0
  12. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/tags.py +1 -1
  13. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/audio_readers/audio_reader_pydub.py +8 -5
  14. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/audio_readers/audio_reader_soundfile.py +8 -4
  15. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/audio_readers/base_audio_reader.py +6 -5
  16. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/base_file_data_loader.py +8 -7
  17. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/datasets_readers/csv_datasets.py +5 -3
  18. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/datasets_readers/dataset_splitter.py +10 -17
  19. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/datasets_readers/sklearn_datasets.py +30 -19
  20. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/datasets_readers/sktime_datasets.py +44 -33
  21. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/image_readers/base_image_folder_data_loader.py +3 -1
  22. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/image_readers/coco_dataset_reader.py +23 -9
  23. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/image_readers/csv_dataset_reader.py +8 -5
  24. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/image_readers/image_folder_reader_cv2.py +2 -1
  25. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/image_readers/image_folder_reader_kornia.py +2 -1
  26. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/text_readers/text_input.py +1 -0
  27. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/video_readers/base_video_reader.py +12 -5
  28. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/video_readers/video_reader_cv2.py +7 -5
  29. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/video_readers/video_reader_dali.py +11 -6
  30. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/video_readers/video_reader_ffmpeg.py +10 -4
  31. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/video_readers/video_reader_torchcodec.py +9 -4
  32. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_tools.egg-info/PKG-INFO +2 -1
  33. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_tools.egg-info/SOURCES.txt +3 -0
  34. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers/annotation_drawer_tools.py +14 -13
  35. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers/plot_distributions.py +4 -3
  36. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers/scikit_pca_analysis.py +1 -1
  37. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers/tags.py +1 -1
  38. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/__init__.py +1 -1
  39. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/base_annotation_drawer.py +4 -2
  40. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/base_visualization_template.py +11 -10
  41. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/bbox_drawer.py +2 -1
  42. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/data_distribution_visualization.py +17 -10
  43. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/key_points_drawer.py +2 -1
  44. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/label_drawer.py +5 -2
  45. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/oriented_bbox_drawer.py +2 -1
  46. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/segmentation_mask_drawer.py +4 -1
  47. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/templates/tabular_data_visualization.py +29 -25
  48. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/helpers/tags.py +1 -1
  49. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/annotation_writers/base_annotation_writer.py +14 -9
  50. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/annotation_writers/coco_annotation_writer.py +2 -0
  51. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/audio_writers/audio_writer_soundfile.py +6 -5
  52. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/generic_data_writers/generic_data_json_writer.py +6 -4
  53. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/image_writers/image_saver.py +18 -15
  54. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/image_writers/pdf_to_image_converter.py +5 -3
  55. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/video_writers/base_video_writer.py +8 -6
  56. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/video_writers/video_writer_cv2.py +7 -3
  57. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/video_writers/video_writer_ffmpeg.py +8 -4
  58. sinapsis_data_tools-0.2.31/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/__init__.py +0 -0
  59. sinapsis_data_tools-0.2.31/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/image_color_space_converter.py +139 -0
  60. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/tags.py +1 -1
  61. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/templates/__init__.py +2 -1
  62. sinapsis_data_tools-0.2.31/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/templates/context_chunker.py +58 -0
  63. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/templates/image_color_conversion_np.py +2 -0
  64. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/templates/mask_non_roi.py +28 -7
  65. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/templates/packet_buffer_queue.py +3 -1
  66. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/templates/source_history_aggregator.py +2 -0
  67. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/templates/text_content_filter.py +13 -14
  68. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/pyproject.toml +2 -1
  69. sinapsis_data_tools-0.2.29/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/transformation/categorical_to_numerical.py +0 -45
  70. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/LICENSE +0 -0
  71. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/__init__.py +0 -0
  72. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/__init__.py +0 -0
  73. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/__init__.py +0 -0
  74. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/helpers/__init__.py +0 -0
  75. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/helpers/excluded_models.py +0 -0
  76. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/helpers/model_metrics.py +0 -0
  77. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/inference/__init__.py +0 -0
  78. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/inference/sklearn_inference.py +0 -0
  79. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_analysis/src/sinapsis_data_analysis/templates/training/__init__.py +0 -0
  80. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/__init__.py +0 -0
  81. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/__init__.py +0 -0
  82. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/coco_dataclasses.py +0 -0
  83. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/csv_reader.py +0 -0
  84. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/file_path_helpers.py +0 -0
  85. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/sklearn_dataset_subset.py +0 -0
  86. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/sktime_datasets_subset.py +0 -0
  87. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/helpers/text_input_helpers.py +0 -0
  88. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/__init__.py +0 -0
  89. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/audio_readers/__init__.py +0 -0
  90. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/audio_readers/audio_reader_to_bytes.py +0 -0
  91. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/datasets_readers/__init__.py +0 -0
  92. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/image_readers/__init__.py +0 -0
  93. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/text_readers/__init__.py +0 -0
  94. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_readers/src/sinapsis_data_readers/templates/video_readers/__init__.py +0 -0
  95. /sinapsis_data_tools-0.2.29/packages/sinapsis_data_visualization/src/__init__.py → /sinapsis_data_tools-0.2.31/packages/sinapsis_data_readers/src/test_gradio_client.py +0 -0
  96. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_tools.egg-info/dependency_links.txt +0 -0
  97. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_tools.egg-info/requires.txt +0 -0
  98. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_tools.egg-info/top_level.txt +0 -0
  99. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_visualization/src/sinapsis_data_visualization → sinapsis_data_tools-0.2.31/packages/sinapsis_data_visualization/src}/__init__.py +0 -0
  100. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_visualization/src/sinapsis_data_visualization}/__init__.py +0 -0
  101. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_writers/src/sinapsis_data_writers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers}/__init__.py +0 -0
  102. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers/annotation_drawer_types.py +0 -0
  103. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers/color_utils.py +0 -0
  104. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_visualization/src/sinapsis_data_visualization/helpers/detection_utils.py +0 -0
  105. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_writers/src/sinapsis_data_writers/helpers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_writers/src/sinapsis_data_writers}/__init__.py +0 -0
  106. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/annotation_writers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_writers/src/sinapsis_data_writers/helpers}/__init__.py +0 -0
  107. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/__init__.py +0 -0
  108. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/audio_writers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/annotation_writers}/__init__.py +0 -0
  109. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/image_writers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/audio_writers}/__init__.py +0 -0
  110. {sinapsis_data_tools-0.2.29/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/video_writers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/image_writers}/__init__.py +0 -0
  111. {sinapsis_data_tools-0.2.29/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers → sinapsis_data_tools-0.2.31/packages/sinapsis_data_writers/src/sinapsis_data_writers/templates/video_writers}/__init__.py +0 -0
  112. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/__init__.py +0 -0
  113. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/audio_encoder.py +0 -0
  114. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/encode_img_base64.py +0 -0
  115. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/file_downloader.py +0 -0
  116. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/image_color_space_converter_cv.py +0 -0
  117. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/packages/sinapsis_generic_data_tools/src/sinapsis_generic_data_tools/helpers/image_color_space_converter_torch.py +0 -0
  118. {sinapsis_data_tools-0.2.29 → sinapsis_data_tools-0.2.31}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sinapsis-data-tools
3
- Version: 0.2.29
3
+ Version: 0.2.31
4
4
  Summary: Module that contains different packages to perform data-related operations through Sinapsis templates.
5
5
  Author-email: SinapsisAI <dev@sinapsis.tech>
6
6
  Project-URL: Homepage, https://sinapsis.tech
@@ -22,6 +22,7 @@ Requires-Dist: sinapsis-data-visualization[all]; extra == "all"
22
22
  Requires-Dist: sinapsis-generic-data-tools[all]; extra == "all"
23
23
  Dynamic: license-file
24
24
 
25
+ [![sp](https://img.shields.io/badge/lang-sp-red.svg)](https://github.com/Sinapsis-AI/sinapsis-data-tools/blob/main/README.es.md)
25
26
  <h1 align="center">
26
27
  <br>
27
28
  <a href="https://sinapsis.tech/">
@@ -1,3 +1,4 @@
1
+ [![sp](https://img.shields.io/badge/lang-sp-red.svg)](https://github.com/Sinapsis-AI/sinapsis-data-tools/blob/main/README.es.md)
1
2
  <h1 align="center">
2
3
  <br>
3
4
  <a href="https://sinapsis.tech/">
@@ -2,7 +2,7 @@
2
2
  from enum import Enum
3
3
 
4
4
 
5
- class Tags(Enum):
5
+ class Tags(str, Enum):
6
6
  DATA_ANALYSIS = "data_analysis"
7
7
  DYNAMIC = "dynamic"
8
8
  INFERENCE = "inference"
@@ -10,7 +10,6 @@ _ADDITIONAL_TEMPLATE_MODULES = [
10
10
  f"{_root_lib_path}.training.sklearn_manifold",
11
11
  f"{_root_lib_path}.training.sklearn_train",
12
12
  f"{_root_lib_path}.training.xgboost_train",
13
-
14
13
  ]
15
14
  _template_lookup: dict = {
16
15
  "SKLearnInference": f"{_root_lib_path}.inference.sklearn_inference",
@@ -21,7 +20,7 @@ for t_module in _ADDITIONAL_TEMPLATE_MODULES:
21
20
  _template_lookup |= _import_template_package(t_module)
22
21
 
23
22
 
24
- def __getattr__(name: str) -> Template:
23
+ def __getattr__(name: str) -> Template | None:
25
24
  if name in _template_lookup:
26
25
  module = importlib.import_module(_template_lookup[name])
27
26
  return getattr(module, name)
@@ -26,14 +26,15 @@ class MLBaseInference(Template):
26
26
  """
27
27
 
28
28
  model_path: str
29
- root_dir : str = WORKING_DIR
29
+ root_dir: str = WORKING_DIR
30
30
  generic_field_key: str
31
- target_key : str
31
+ target_key: str
32
+
33
+ attributes: AttributesBaseModel
32
34
 
33
35
  def __init__(self, attributes: TemplateAttributes) -> None:
34
36
  super().__init__(attributes)
35
37
 
36
-
37
38
  def get_data(self, container: DataContainer) -> Any:
38
39
  """Get the data from the data container
39
40
 
@@ -5,6 +5,8 @@ from sinapsis_core.template_base.base_models import UIPropertiesMetadata
5
5
  from sinapsis_data_analysis.helpers.tags import Tags
6
6
  from sinapsis_data_analysis.templates.inference.sklearn_inference import SKLearnInference
7
7
 
8
+ tags = SKLearnInference.UIProperties.tags if SKLearnInference.UIProperties.tags is not None else []
9
+
8
10
 
9
11
  class XGBoostInference(SKLearnInference):
10
12
  """Dynamic templates to perform inference using XGBoost models.
@@ -27,4 +29,4 @@ class XGBoostInference(SKLearnInference):
27
29
 
28
30
  """
29
31
 
30
- UIProperties = UIPropertiesMetadata(category="XGBoost", tags=[Tags.XGBOOST, *SKLearnInference.UIProperties.tags])
32
+ UIProperties = UIPropertiesMetadata(category="XGBoost", tags=[Tags.XGBOOST, *tags])
@@ -31,7 +31,7 @@ class MLBaseAttributes(TemplateAttributes):
31
31
  model_save_path (str): Path where the trained model will be saved.
32
32
  """
33
33
 
34
- root_dir : str = WORKING_DIR
34
+ root_dir: str = WORKING_DIR
35
35
  model_save_path: str
36
36
 
37
37
 
@@ -45,6 +45,7 @@ class MLBaseTraining(BaseDynamicWrapperTemplate):
45
45
  """
46
46
 
47
47
  AttributesBaseModel = MLBaseAttributes
48
+ attributes: MLBaseAttributes
48
49
 
49
50
  def __init__(self, attributes: TemplateAttributes) -> None:
50
51
  """Initialize the MLBase template.
@@ -66,7 +67,6 @@ class MLBaseTraining(BaseDynamicWrapperTemplate):
66
67
  Any: The dataset from the generic field.
67
68
  """
68
69
 
69
-
70
70
  return container.data_frames
71
71
 
72
72
  @staticmethod
@@ -105,7 +105,7 @@ class MLBaseTraining(BaseDynamicWrapperTemplate):
105
105
  y_test = data_set.content
106
106
  else:
107
107
  if "x_dataset" in data_set.source:
108
- x_train = data_set.content
108
+ x_train = data_set.content
109
109
  elif "y_dataset" in data_set.source:
110
110
  y_train = data_set.content
111
111
 
@@ -119,7 +119,7 @@ class MLBaseTraining(BaseDynamicWrapperTemplate):
119
119
  y_train (Any): The training targets
120
120
  """
121
121
 
122
- self.trained_model = self.model.fit(x_train, y_train)
122
+ self.trained_model = self.model.fit(x_train, y_train) # ty: ignore[unresolved-attribute]
123
123
 
124
124
  @staticmethod
125
125
  def calculate_classification_metrics(y_true: np.ndarray, y_pred: np.ndarray) -> ModelMetrics:
@@ -192,8 +192,8 @@ class MLBaseTraining(BaseDynamicWrapperTemplate):
192
192
  predictions = self.trained_model.predict(x_test)
193
193
 
194
194
  metrics = self.calculate_metrics(y_test, predictions)
195
-
196
- return ModelPredictionResults(predictions=predictions, metrics=metrics)
195
+ if metrics is not None:
196
+ return ModelPredictionResults(predictions=predictions, metrics=metrics)
197
197
  return None
198
198
 
199
199
  def handle_model_training(self, processed_data: tuple) -> ModelPredictionResults | None:
@@ -4,7 +4,6 @@ import numpy as np
4
4
  import pandas as pd
5
5
  from pydantic import BaseModel, ConfigDict
6
6
  from sinapsis_core.data_containers.data_packet import DataContainer
7
- from sinapsis_core.template_base import Template
8
7
  from sinapsis_core.template_base.base_models import TemplateAttributes, UIPropertiesMetadata
9
8
  from sinapsis_core.template_base.dynamic_template import (
10
9
  BaseDynamicWrapperTemplate,
@@ -44,7 +43,8 @@ class SKLearnManifold(BaseDynamicWrapperTemplate):
44
43
  target_key (str): Key of the generic field where data is stored.
45
44
  """
46
45
 
47
- target_key : str = 'target'
46
+ target_key: str = "target"
47
+
48
48
  WrapperEntry = WrapperEntryConfig(
49
49
  wrapped_object=manifold,
50
50
  signature_from_doc_string=True,
@@ -56,7 +56,7 @@ class SKLearnManifold(BaseDynamicWrapperTemplate):
56
56
  category="SKLearn",
57
57
  tags=[Tags.DATA_ANALYSIS, Tags.DYNAMIC, Tags.MANIFOLD, Tags.SKLEARN, Tags.MODELS],
58
58
  )
59
-
59
+ attributes: AttributesBaseModel
60
60
 
61
61
  def __init__(self, attributes: TemplateAttributes) -> None:
62
62
  super().__init__(attributes)
@@ -89,7 +89,6 @@ class SKLearnManifold(BaseDynamicWrapperTemplate):
89
89
  """
90
90
  return container.data_frames
91
91
 
92
-
93
92
  def process_dataset(self, dataset: list) -> ManifoldResults | None:
94
93
  """
95
94
  Extracts the training data, reshapes it, and applies the
@@ -113,11 +112,12 @@ class SKLearnManifold(BaseDynamicWrapperTemplate):
113
112
  y_train = set.content[self.attributes.target_key]
114
113
  x_train = set.content.pop(self.attributes.target_key)
115
114
 
115
+ if x_train is not None and y_train is not None:
116
+ x_train_reshaped = self.reshape_arrays(x_train)
117
+ x_transformed = self.manifold_model.fit_transform(x_train_reshaped) # ty: ignore[unresolved-attribute]
116
118
 
117
- x_train_reshaped = self.reshape_arrays(x_train)
118
- x_transformed = self.manifold_model.fit_transform(x_train_reshaped)
119
-
120
- return ManifoldResults(labels=y_train, x_transformed=x_transformed)
119
+ return ManifoldResults(labels=y_train, x_transformed=x_transformed)
120
+ return None
121
121
 
122
122
  def execute(self, container: DataContainer) -> DataContainer:
123
123
  """
@@ -143,7 +143,7 @@ class SKLearnManifold(BaseDynamicWrapperTemplate):
143
143
  return container
144
144
 
145
145
 
146
- def __getattr__(name: str) -> Template:
146
+ def __getattr__(name: str) -> type[BaseDynamicWrapperTemplate]:
147
147
  """
148
148
  Only create a template if it's imported, this avoids creating all the base models for all templates
149
149
  and potential import errors due to not available packages.
@@ -1,20 +1,19 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  import joblib
3
- from sinapsis_core.template_base import Template
4
3
  from sinapsis_core.template_base.base_models import UIPropertiesMetadata
5
4
  from sinapsis_core.template_base.dynamic_template import WrapperEntryConfig
6
- from sinapsis_core.template_base.dynamic_template_factory import make_dynamic_template
5
+ from sinapsis_core.template_base.dynamic_template_factory import BaseDynamicWrapperTemplate, make_dynamic_template
7
6
  from sinapsis_core.utils.env_var_keys import SINAPSIS_BUILD_DOCS
8
7
  from sinapsis_data_analysis.helpers.excluded_models import (
8
+ excluded_cluster_models,
9
9
  excluded_linear_models,
10
10
  excluded_neighbors_models,
11
11
  excluded_svm_models,
12
12
  excluded_tree_models,
13
- excluded_cluster_models
14
13
  )
15
14
  from sinapsis_data_analysis.helpers.tags import Tags
16
15
  from sinapsis_data_analysis.templates.training.ml_base_training import MLBaseTraining
17
- from sklearn import linear_model, neighbors, neural_network, svm, tree, cluster
16
+ from sklearn import cluster, linear_model, neighbors, neural_network, svm, tree
18
17
 
19
18
 
20
19
  class SKLearnLinearModelsTrain(MLBaseTraining):
@@ -54,7 +53,7 @@ class SKLearnLinearModelsTrain(MLBaseTraining):
54
53
  category="SKLearn", tags=[Tags.DATA_ANALYSIS, Tags.LINEAR_REGRESSION, Tags.MODELS, Tags.SKLEARN, Tags.TRAINING]
55
54
  )
56
55
 
57
- def _save_model_implementation(self, full_path:str) -> None:
56
+ def _save_model_implementation(self, full_path: str) -> None:
58
57
  """
59
58
  Implements the abstract method from the base class to
60
59
  save the model to the path specified in attributes.
@@ -213,7 +212,6 @@ class SKLearnSVMModelsTrain(SKLearnLinearModelsTrain):
213
212
  )
214
213
 
215
214
 
216
-
217
215
  class SKLearnClusterModelsTrain(SKLearnLinearModelsTrain):
218
216
  """
219
217
  This template dynamically wraps sklearn's svm module,
@@ -249,9 +247,7 @@ class SKLearnClusterModelsTrain(SKLearnLinearModelsTrain):
249
247
  )
250
248
 
251
249
 
252
-
253
-
254
- def __getattr__(name: str) -> Template:
250
+ def __getattr__(name: str) -> type[BaseDynamicWrapperTemplate]:
255
251
  """
256
252
  Only create a template if it's imported, this avoids creating all the base models for all templates
257
253
  and potential import errors due to not available packages.
@@ -277,7 +273,7 @@ __all__ = (
277
273
  + SKLearnNNModelsTrain.WrapperEntry.module_att_names
278
274
  + SKLearnTreeModelsTrain.WrapperEntry.module_att_names
279
275
  + SKLearnSVMModelsTrain.WrapperEntry.module_att_names
280
- + SKLearnClusterModelsTrain.WrapperEntry.module_att_names
276
+ + SKLearnClusterModelsTrain.WrapperEntry.module_att_names
281
277
  )
282
278
 
283
279
 
@@ -1,9 +1,8 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  import xgboost as xgb
3
- from sinapsis_core.template_base import Template
4
3
  from sinapsis_core.template_base.base_models import UIPropertiesMetadata
5
4
  from sinapsis_core.template_base.dynamic_template import WrapperEntryConfig
6
- from sinapsis_core.template_base.dynamic_template_factory import make_dynamic_template
5
+ from sinapsis_core.template_base.dynamic_template_factory import BaseDynamicWrapperTemplate, make_dynamic_template
7
6
  from sinapsis_core.utils.env_var_keys import SINAPSIS_BUILD_DOCS
8
7
  from sinapsis_data_analysis.helpers.tags import Tags
9
8
  from sinapsis_data_analysis.templates.training.sklearn_train import SKLearnLinearModelsTrain
@@ -61,7 +60,7 @@ class XGBoostModelsTraining(SKLearnLinearModelsTrain):
61
60
  )
62
61
 
63
62
 
64
- def __getattr__(name: str) -> Template:
63
+ def __getattr__(name: str) -> type[BaseDynamicWrapperTemplate]:
65
64
  if name in XGBoostModelsTraining.WrapperEntry.module_att_names:
66
65
  return make_dynamic_template(name, XGBoostModelsTraining)
67
66
  raise AttributeError(f"template `{name}` not found in {__name__}")
@@ -0,0 +1,43 @@
1
+ # -*- coding: utf-8 -*-
2
+ import pandas as pd
3
+ from sinapsis_core.data_containers.data_packet import DataContainer, DataFramePacket
4
+ from sinapsis_core.template_base.base_models import TemplateAttributes
5
+ from sinapsis_core.template_base.template import Template
6
+
7
+
8
+ class CategoricalToNumerical(Template):
9
+ class AttributesBaseModel(TemplateAttributes):
10
+ generic_key: str
11
+
12
+ attributes: AttributesBaseModel
13
+
14
+ @staticmethod
15
+ def map_categorical_to_numerical(df: pd.DataFrame | pd.Series) -> tuple:
16
+ if isinstance(df, pd.Series):
17
+ categorical_cols = [df.name] if df.dtype in ["object", "string", "category"] else []
18
+ else:
19
+ categorical_cols = df.select_dtypes(include=["object", "string", "category"]).columns.tolist()
20
+
21
+ category_maps = {}
22
+
23
+ for col in categorical_cols:
24
+ categories = df[col].astype("string").unique()
25
+ category_maps[col] = {cat: idx for idx, cat in enumerate(categories)}
26
+ for col, mapping in category_maps.items():
27
+ df[col] = df[col].map(mapping)
28
+ return df, category_maps
29
+
30
+ @staticmethod
31
+ def unmap_numerical_to_categorical(df: pd.DataFrame | pd.Series, categories: dict) -> pd.DataFrame | pd.Series:
32
+ inverse_maps = {col: {v: k for k, v in mapping.items()} for col, mapping in categories.items()}
33
+
34
+ for col in inverse_maps:
35
+ df[col] = df[col].map(inverse_maps[col])
36
+ return df
37
+
38
+ def execute(self, container: DataContainer) -> DataContainer:
39
+ for data_frame in container.data_frames:
40
+ transformed_dataset, labels = self.map_categorical_to_numerical(data_frame.content)
41
+ container.data_frames.append(DataFramePacket(content=transformed_dataset, generic_data=labels))
42
+
43
+ return container
@@ -2,7 +2,7 @@
2
2
  from enum import Enum
3
3
 
4
4
 
5
- class Tags(Enum):
5
+ class Tags(str, Enum):
6
6
  AUDIO = "audio"
7
7
  COCO = "coco"
8
8
  CSV = "csv"
@@ -17,7 +17,8 @@ from sinapsis_data_readers.templates.audio_readers.base_audio_reader import (
17
17
  )
18
18
 
19
19
  AudioReaderPydubUIProperties = _AudioBaseReader.UIProperties
20
- AudioReaderPydubUIProperties.tags.extend([Tags.PYDUB])
20
+ if AudioReaderPydubUIProperties.tags is not None:
21
+ AudioReaderPydubUIProperties.tags.extend([Tags.PYDUB])
21
22
 
22
23
 
23
24
  class AudioReaderPydub(_AudioBaseReader):
@@ -66,6 +67,7 @@ class AudioReaderPydub(_AudioBaseReader):
66
67
  audio_reader_format: Literal["wav", "raw", "pcm"] | None = None
67
68
 
68
69
  UIProperties = AudioReaderPydubUIProperties
70
+ attributes: AttributesBaseModel
69
71
 
70
72
  def read_file(self) -> AudioPacket | None:
71
73
  """Reads audio data from a file path or bytes and returns an AudioPacket.
@@ -84,9 +86,7 @@ class AudioReaderPydub(_AudioBaseReader):
84
86
  audio_segment = AudioSegment.from_file(io.BytesIO(audio_bytes))
85
87
 
86
88
  else:
87
-
88
89
  audio_file_path = self.get_full_path()
89
- #audio_file_path = os.path.join(self.attributes.root_dir, audio_file_path)
90
90
  if os.path.exists(audio_file_path):
91
91
  audio_segment = AudioSegment.from_file(audio_file_path, format=self.attributes.audio_reader_format)
92
92
 
@@ -138,7 +138,9 @@ class LazyAudioReaderPydub(AudioReaderPydub):
138
138
 
139
139
  class AttributesBaseModel(AudioReaderPydub.AttributesBaseModel):
140
140
  generic_key: str
141
- audio_file_path: str | None = None # type:ignore[assignment]
141
+ audio_file_path: str | None = None
142
+
143
+ attributes: AttributesBaseModel
142
144
 
143
145
  def get_file_path_from_generic_data(self, container: DataContainer) -> None:
144
146
  """Method to retrieve the file path from the genetic data field of DataContainer.
@@ -148,7 +150,8 @@ class LazyAudioReaderPydub(AudioReaderPydub):
148
150
  container (DataContainer): The DataContainer to extract the file path from
149
151
  """
150
152
  if self.attributes.generic_key:
151
- file_path = self._get_generic_data(container, self.attributes.generic_key)
153
+ generic_data = self._get_generic_data(container)
154
+ file_path = getattr(generic_data, self.attributes.generic_key, None)
152
155
  if file_path:
153
156
  self.attributes.audio_file_path = file_path
154
157
  else:
@@ -14,7 +14,8 @@ from sinapsis_data_readers.templates.audio_readers.base_audio_reader import (
14
14
  )
15
15
 
16
16
  AudioReaderSoundfileUIProperties = _AudioBaseReader.UIProperties
17
- AudioReaderSoundfileUIProperties.tags.extend([Tags.SOUNDFILE])
17
+ if AudioReaderSoundfileUIProperties.tags is not None:
18
+ AudioReaderSoundfileUIProperties.tags.extend([Tags.SOUNDFILE])
18
19
 
19
20
 
20
21
  class AudioReaderSoundfile(_AudioBaseReader):
@@ -111,7 +112,9 @@ class LazyAudioReaderSoundfile(AudioReaderSoundfile):
111
112
 
112
113
  class AttributesBaseModel(_AudioBaseReader.AttributesBaseModel):
113
114
  generic_key: str
114
- audio_file_path: str | None = None # type:ignore[assignment]
115
+ audio_file_path: str | None = None
116
+
117
+ attributes: AttributesBaseModel
115
118
 
116
119
  def get_file_path_from_generic_data(self, container: DataContainer) -> None:
117
120
  """Method to retrieve the file path from the genetic data field of DataContainer.
@@ -121,8 +124,9 @@ class LazyAudioReaderSoundfile(AudioReaderSoundfile):
121
124
  container (DataContainer): The DataContainer to extract the file path from
122
125
  """
123
126
  if self.attributes.generic_key:
124
- file_path = self._get_generic_data(container, self.attributes.generic_key)
125
- if file_path:
127
+ generic_data = self._get_generic_data(container)
128
+ file_path = getattr(generic_data, self.attributes.generic_key, None)
129
+ if file_path is not None:
126
130
  self.attributes.audio_file_path = file_path
127
131
  else:
128
132
  self.logger.warning("No audio path in the existing container")
@@ -2,7 +2,6 @@
2
2
 
3
3
  import abc
4
4
  import os
5
- from typing import cast
6
5
  from uuid import uuid4
7
6
 
8
7
  from sinapsis_core.data_containers.data_packet import AudioPacket, DataContainer
@@ -30,11 +29,12 @@ class _AudioBaseReader(_BaseDataReader):
30
29
  The source identifier, defaults to "streamlit".
31
30
  """
32
31
 
33
-
34
32
  root_dir: str | None = None
35
33
  audio_file_path: str
36
34
  source: str = str(uuid4())
37
35
 
36
+ attributes: AttributesBaseModel
37
+
38
38
  @abc.abstractmethod
39
39
  def read_file(self) -> AudioPacket | None:
40
40
  """Abstract method to read the audio data.
@@ -46,9 +46,10 @@ class _AudioBaseReader(_BaseDataReader):
46
46
  Returns:
47
47
  AudioPacket: The audio data wrapped in an AudioPacket.
48
48
  """
49
- def get_full_path(self):
50
- audio_file_path = cast(str, self.attributes.audio_file_path)
51
- full_path = os.path.join(self.attributes.root_dir, audio_file_path)
49
+
50
+ def get_full_path(self) -> str:
51
+ audio_file_path = self.attributes.audio_file_path
52
+ full_path = os.path.join(self.root_dir, audio_file_path)
52
53
  return full_path
53
54
 
54
55
  def has_elements(self) -> bool:
@@ -1,6 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  import abc
3
- from typing import Generator
3
+ from typing import Any, Generator
4
4
 
5
5
  from sinapsis_core.data_containers.data_packet import DataContainer, Packet
6
6
  from sinapsis_core.template_base import Template
@@ -81,7 +81,7 @@ class _BaseDataReader(Template, abc.ABC):
81
81
  __doc__ = f"""
82
82
  {base_attributes_documentation()}
83
83
  """
84
- root_dir : str | None = None
84
+ root_dir: str | None = None
85
85
  data_dir: str
86
86
  pattern: str = "**/*"
87
87
  batch_size: int = 1
@@ -89,17 +89,18 @@ class _BaseDataReader(Template, abc.ABC):
89
89
  samples_to_load: int = -1
90
90
  load_on_init: bool = False
91
91
 
92
+ attributes: AttributesBaseModel
93
+
92
94
  PACKET_ATT_NAME: str
93
95
 
94
96
  def __init__(self, attributes: TemplateAttributeType) -> None:
95
97
  super().__init__(attributes)
96
98
  self.counter = 0
97
- self.attributes.root_dir = self.attributes.root_dir or SINAPSIS_CACHE_DIR
99
+ self.root_dir = self.attributes.root_dir or SINAPSIS_CACHE_DIR
98
100
  self.data_collection = self.make_data_entries()
99
101
 
100
-
101
102
  @abc.abstractmethod
102
- def make_data_entries(self) -> list[Packet]:
103
+ def make_data_entries(self) -> list[Any]:
103
104
  """
104
105
  This method creates the data entries for this template. Each data entry
105
106
  consists of a `Packet` type.
@@ -109,7 +110,7 @@ class _BaseDataReader(Template, abc.ABC):
109
110
  list[Packet]: list of ImagePacket
110
111
  """
111
112
 
112
- def read_packet_content(self, data_packet: Packet) -> None:
113
+ def read_packet_content(self, data_packet: Any) -> None:
113
114
  """
114
115
  Sets the value for data_packet.content where data packets can be ImagePacket|TextPacket...
115
116
 
@@ -142,7 +143,7 @@ class _BaseDataReader(Template, abc.ABC):
142
143
  )
143
144
  yield image_packets
144
145
 
145
- def __next__(self) -> StopIteration | Generator: # type:ignore #the yield method returns the Generator object
146
+ def __next__(self) -> StopIteration | Generator:
146
147
  if not self.has_elements():
147
148
  raise StopIteration("No more data to load")
148
149
  if self.attributes.batch_size == -1:
@@ -11,14 +11,16 @@ from sinapsis_data_readers.helpers.csv_reader import read_file
11
11
 
12
12
  class CSVDatasetReader(Template):
13
13
  class AttributesBaseModel(TemplateAttributes):
14
- root_dir : str | None = None
14
+ root_dir: str | None = None
15
15
  path_to_csv: str
16
16
  store_as_time_series: bool = False
17
17
 
18
+ attributes: AttributesBaseModel
19
+
18
20
  def __init__(self, attributes: TemplateAttributeType) -> None:
19
21
  super().__init__(attributes)
20
- self.attributes.root_dir = self.attributes.root_dir or SINAPSIS_CACHE_DIR
21
- self.csv_file = read_file(os.path.join(self.attributes.root_dir, self.attributes.path_to_csv))
22
+ self.root_dir = self.attributes.root_dir or SINAPSIS_CACHE_DIR
23
+ self.csv_file = read_file(os.path.join(self.root_dir, self.attributes.path_to_csv))
22
24
 
23
25
  def execute(self, container: DataContainer) -> DataContainer:
24
26
  if self.attributes.store_as_time_series:
@@ -17,24 +17,22 @@ class CSVDatasetSplitter(Template):
17
17
 
18
18
  class AttributesBaseModel(TemplateAttributes):
19
19
  target_key: str = "target" # labels
20
- feature_key: str | None = None # arrays
20
+ feature_key: str | None = None # arrays
21
21
  random_state: int = 42
22
22
  train_size: float = 0.2
23
23
 
24
-
25
-
24
+ attributes: AttributesBaseModel
26
25
 
27
26
  def extract_x_y_from_packet(self, data_frame: DataFramePacket) -> tuple[pd.DataFrame, pd.DataFrame]:
28
-
29
-
30
27
  target = data_frame.content.get(self.attributes.target_key)
31
- feature = data_frame.content.get(self.attributes.feature_key) \
32
- if self.attributes.feature_key \
28
+ feature = (
29
+ data_frame.content.get(self.attributes.feature_key)
30
+ if self.attributes.feature_key
33
31
  else data_frame.content.drop(columns=[self.attributes.target_key])
32
+ )
34
33
  return feature, target
35
34
 
36
- def split_dataset(self, x_data:pd.DataFrame, y_data:pd.DataFrame) -> dict:
37
-
35
+ def split_dataset(self, x_data: pd.DataFrame, y_data: pd.DataFrame) -> dict:
38
36
  x_train, x_test, y_train, y_test = train_test_split(
39
37
  x_data,
40
38
  y_data,
@@ -42,14 +40,10 @@ class CSVDatasetSplitter(Template):
42
40
  test_size=1 - self.attributes.train_size,
43
41
  random_state=self.attributes.random_state,
44
42
  )
45
- data_map = {
46
- "x_train": x_train,
47
- "y_train": y_train,
48
- "x_test": x_test,
49
- "y_test": y_test
50
- }
43
+ data_map = {"x_train": x_train, "y_train": y_train, "x_test": x_test, "y_test": y_test}
51
44
  return data_map
52
- def assign_to_dataframe_packets(self,container: DataContainer, source: str, data: pd.DataFrame) -> DataContainer:
45
+
46
+ def assign_to_dataframe_packets(self, container: DataContainer, source: str, data: pd.DataFrame) -> DataContainer:
53
47
  df_packet = DataFramePacket(content=data, source=f"{self.instance_name}_{source}")
54
48
  container.data_frames.append(df_packet)
55
49
  return container
@@ -66,4 +60,3 @@ class CSVDatasetSplitter(Template):
66
60
  for name, data_frame in sample.items():
67
61
  container = self.assign_to_dataframe_packets(container, name, data_frame)
68
62
  return container
69
-