sequenzo 0.1.21__cp311-cp311-macosx_10_9_x86_64.whl

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.

Potentially problematic release.


This version of sequenzo might be problematic. Click here for more details.

Files changed (260) hide show
  1. sequenzo/__init__.py +240 -0
  2. sequenzo/big_data/__init__.py +12 -0
  3. sequenzo/big_data/clara/__init__.py +26 -0
  4. sequenzo/big_data/clara/clara.py +467 -0
  5. sequenzo/big_data/clara/utils/__init__.py +27 -0
  6. sequenzo/big_data/clara/utils/aggregatecases.py +92 -0
  7. sequenzo/big_data/clara/utils/davies_bouldin.py +91 -0
  8. sequenzo/big_data/clara/utils/get_weighted_diss.cpython-311-darwin.so +0 -0
  9. sequenzo/big_data/clara/utils/wfcmdd.py +205 -0
  10. sequenzo/big_data/clara/visualization.py +88 -0
  11. sequenzo/clustering/KMedoids.py +196 -0
  12. sequenzo/clustering/__init__.py +30 -0
  13. sequenzo/clustering/clustering_c_code.cpython-311-darwin.so +0 -0
  14. sequenzo/clustering/hierarchical_clustering.py +1380 -0
  15. sequenzo/clustering/src/KMedoid.cpp +262 -0
  16. sequenzo/clustering/src/PAM.cpp +236 -0
  17. sequenzo/clustering/src/PAMonce.cpp +234 -0
  18. sequenzo/clustering/src/cluster_quality.cpp +496 -0
  19. sequenzo/clustering/src/cluster_quality.h +128 -0
  20. sequenzo/clustering/src/cluster_quality_backup.cpp +570 -0
  21. sequenzo/clustering/src/module.cpp +228 -0
  22. sequenzo/clustering/src/weightedinertia.cpp +111 -0
  23. sequenzo/clustering/utils/__init__.py +27 -0
  24. sequenzo/clustering/utils/disscenter.py +122 -0
  25. sequenzo/data_preprocessing/__init__.py +20 -0
  26. sequenzo/data_preprocessing/helpers.py +256 -0
  27. sequenzo/datasets/__init__.py +41 -0
  28. sequenzo/datasets/biofam.csv +2001 -0
  29. sequenzo/datasets/biofam_child_domain.csv +2001 -0
  30. sequenzo/datasets/biofam_left_domain.csv +2001 -0
  31. sequenzo/datasets/biofam_married_domain.csv +2001 -0
  32. sequenzo/datasets/chinese_colonial_territories.csv +12 -0
  33. sequenzo/datasets/country_co2_emissions.csv +194 -0
  34. sequenzo/datasets/country_co2_emissions_global_deciles.csv +195 -0
  35. sequenzo/datasets/country_co2_emissions_global_quintiles.csv +195 -0
  36. sequenzo/datasets/country_co2_emissions_local_deciles.csv +195 -0
  37. sequenzo/datasets/country_co2_emissions_local_quintiles.csv +195 -0
  38. sequenzo/datasets/country_gdp_per_capita.csv +194 -0
  39. sequenzo/datasets/mvad.csv +713 -0
  40. sequenzo/datasets/pairfam_family.csv +1867 -0
  41. sequenzo/datasets/polyadic_samplec1.csv +61 -0
  42. sequenzo/datasets/polyadic_samplep1.csv +61 -0
  43. sequenzo/datasets/polyadic_seqc1.csv +61 -0
  44. sequenzo/datasets/polyadic_seqp1.csv +61 -0
  45. sequenzo/define_sequence_data.py +609 -0
  46. sequenzo/dissimilarity_measures/__init__.py +31 -0
  47. sequenzo/dissimilarity_measures/c_code.cpython-311-darwin.so +0 -0
  48. sequenzo/dissimilarity_measures/get_distance_matrix.py +702 -0
  49. sequenzo/dissimilarity_measures/get_substitution_cost_matrix.py +241 -0
  50. sequenzo/dissimilarity_measures/src/DHDdistance.cpp +148 -0
  51. sequenzo/dissimilarity_measures/src/LCPdistance.cpp +114 -0
  52. sequenzo/dissimilarity_measures/src/OMdistance.cpp +247 -0
  53. sequenzo/dissimilarity_measures/src/OMspellDistance.cpp +281 -0
  54. sequenzo/dissimilarity_measures/src/__init__.py +0 -0
  55. sequenzo/dissimilarity_measures/src/dist2matrix.cpp +63 -0
  56. sequenzo/dissimilarity_measures/src/dp_utils.h +160 -0
  57. sequenzo/dissimilarity_measures/src/module.cpp +34 -0
  58. sequenzo/dissimilarity_measures/src/setup.py +30 -0
  59. sequenzo/dissimilarity_measures/src/utils.h +25 -0
  60. sequenzo/dissimilarity_measures/src/xsimd/.github/cmake-test/main.cpp +6 -0
  61. sequenzo/dissimilarity_measures/src/xsimd/benchmark/main.cpp +159 -0
  62. sequenzo/dissimilarity_measures/src/xsimd/benchmark/xsimd_benchmark.hpp +565 -0
  63. sequenzo/dissimilarity_measures/src/xsimd/docs/source/conf.py +37 -0
  64. sequenzo/dissimilarity_measures/src/xsimd/examples/mandelbrot.cpp +330 -0
  65. sequenzo/dissimilarity_measures/src/xsimd/examples/pico_bench.hpp +246 -0
  66. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_arithmetic.hpp +266 -0
  67. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_complex.hpp +112 -0
  68. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_details.hpp +323 -0
  69. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_logical.hpp +218 -0
  70. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_math.hpp +2583 -0
  71. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_memory.hpp +880 -0
  72. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_rounding.hpp +72 -0
  73. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_swizzle.hpp +174 -0
  74. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/common/xsimd_common_trigo.hpp +978 -0
  75. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx.hpp +1924 -0
  76. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx2.hpp +1144 -0
  77. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512bw.hpp +656 -0
  78. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512cd.hpp +28 -0
  79. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512dq.hpp +244 -0
  80. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512er.hpp +20 -0
  81. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512f.hpp +2650 -0
  82. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512ifma.hpp +20 -0
  83. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512pf.hpp +20 -0
  84. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512vbmi.hpp +77 -0
  85. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512vbmi2.hpp +131 -0
  86. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512vnni_avx512bw.hpp +20 -0
  87. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avx512vnni_avx512vbmi2.hpp +20 -0
  88. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_avxvnni.hpp +20 -0
  89. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_common.hpp +24 -0
  90. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_common_fwd.hpp +77 -0
  91. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_constants.hpp +393 -0
  92. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_emulated.hpp +788 -0
  93. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_fma3_avx.hpp +93 -0
  94. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_fma3_avx2.hpp +46 -0
  95. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_fma3_sse.hpp +97 -0
  96. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_fma4.hpp +92 -0
  97. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_i8mm_neon64.hpp +17 -0
  98. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_isa.hpp +142 -0
  99. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_neon.hpp +3142 -0
  100. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_neon64.hpp +1543 -0
  101. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_rvv.hpp +1513 -0
  102. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_scalar.hpp +1260 -0
  103. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sse2.hpp +2024 -0
  104. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sse3.hpp +67 -0
  105. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sse4_1.hpp +339 -0
  106. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sse4_2.hpp +44 -0
  107. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_ssse3.hpp +186 -0
  108. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_sve.hpp +1155 -0
  109. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_vsx.hpp +892 -0
  110. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/arch/xsimd_wasm.hpp +1780 -0
  111. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_arch.hpp +240 -0
  112. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_config.hpp +484 -0
  113. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_cpuid.hpp +269 -0
  114. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/config/xsimd_inline.hpp +27 -0
  115. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/math/xsimd_rem_pio2.hpp +719 -0
  116. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/memory/xsimd_aligned_allocator.hpp +349 -0
  117. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/memory/xsimd_alignment.hpp +91 -0
  118. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_all_registers.hpp +55 -0
  119. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_api.hpp +2765 -0
  120. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx2_register.hpp +44 -0
  121. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512bw_register.hpp +51 -0
  122. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512cd_register.hpp +51 -0
  123. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512dq_register.hpp +51 -0
  124. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512er_register.hpp +51 -0
  125. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512f_register.hpp +77 -0
  126. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512ifma_register.hpp +51 -0
  127. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512pf_register.hpp +51 -0
  128. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512vbmi2_register.hpp +51 -0
  129. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512vbmi_register.hpp +51 -0
  130. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512vnni_avx512bw_register.hpp +54 -0
  131. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx512vnni_avx512vbmi2_register.hpp +53 -0
  132. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avx_register.hpp +64 -0
  133. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_avxvnni_register.hpp +44 -0
  134. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_batch.hpp +1524 -0
  135. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_batch_constant.hpp +300 -0
  136. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_common_arch.hpp +47 -0
  137. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_emulated_register.hpp +80 -0
  138. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_fma3_avx2_register.hpp +50 -0
  139. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_fma3_avx_register.hpp +50 -0
  140. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_fma3_sse_register.hpp +50 -0
  141. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_fma4_register.hpp +50 -0
  142. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_i8mm_neon64_register.hpp +55 -0
  143. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_neon64_register.hpp +55 -0
  144. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_neon_register.hpp +154 -0
  145. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_register.hpp +94 -0
  146. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_rvv_register.hpp +506 -0
  147. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_sse2_register.hpp +59 -0
  148. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_sse3_register.hpp +49 -0
  149. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_sse4_1_register.hpp +48 -0
  150. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_sse4_2_register.hpp +48 -0
  151. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_ssse3_register.hpp +48 -0
  152. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_sve_register.hpp +156 -0
  153. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_traits.hpp +337 -0
  154. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_utils.hpp +536 -0
  155. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_vsx_register.hpp +77 -0
  156. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/types/xsimd_wasm_register.hpp +59 -0
  157. sequenzo/dissimilarity_measures/src/xsimd/include/xsimd/xsimd.hpp +75 -0
  158. sequenzo/dissimilarity_measures/src/xsimd/test/architectures/dummy.cpp +7 -0
  159. sequenzo/dissimilarity_measures/src/xsimd/test/doc/explicit_use_of_an_instruction_set.cpp +13 -0
  160. sequenzo/dissimilarity_measures/src/xsimd/test/doc/explicit_use_of_an_instruction_set_mean.cpp +24 -0
  161. sequenzo/dissimilarity_measures/src/xsimd/test/doc/explicit_use_of_an_instruction_set_mean_aligned.cpp +25 -0
  162. sequenzo/dissimilarity_measures/src/xsimd/test/doc/explicit_use_of_an_instruction_set_mean_arch_independent.cpp +28 -0
  163. sequenzo/dissimilarity_measures/src/xsimd/test/doc/explicit_use_of_an_instruction_set_mean_tag_dispatch.cpp +25 -0
  164. sequenzo/dissimilarity_measures/src/xsimd/test/doc/manipulating_abstract_batches.cpp +7 -0
  165. sequenzo/dissimilarity_measures/src/xsimd/test/doc/manipulating_parametric_batches.cpp +8 -0
  166. sequenzo/dissimilarity_measures/src/xsimd/test/doc/sum.hpp +31 -0
  167. sequenzo/dissimilarity_measures/src/xsimd/test/doc/sum_avx2.cpp +3 -0
  168. sequenzo/dissimilarity_measures/src/xsimd/test/doc/sum_sse2.cpp +3 -0
  169. sequenzo/dissimilarity_measures/src/xsimd/test/doc/writing_vectorized_code.cpp +11 -0
  170. sequenzo/dissimilarity_measures/src/xsimd/test/main.cpp +31 -0
  171. sequenzo/dissimilarity_measures/src/xsimd/test/test_api.cpp +230 -0
  172. sequenzo/dissimilarity_measures/src/xsimd/test/test_arch.cpp +217 -0
  173. sequenzo/dissimilarity_measures/src/xsimd/test/test_basic_math.cpp +183 -0
  174. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch.cpp +1049 -0
  175. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_bool.cpp +508 -0
  176. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_cast.cpp +409 -0
  177. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_complex.cpp +712 -0
  178. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_constant.cpp +286 -0
  179. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_float.cpp +141 -0
  180. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_int.cpp +365 -0
  181. sequenzo/dissimilarity_measures/src/xsimd/test/test_batch_manip.cpp +308 -0
  182. sequenzo/dissimilarity_measures/src/xsimd/test/test_bitwise_cast.cpp +222 -0
  183. sequenzo/dissimilarity_measures/src/xsimd/test/test_complex_exponential.cpp +226 -0
  184. sequenzo/dissimilarity_measures/src/xsimd/test/test_complex_hyperbolic.cpp +183 -0
  185. sequenzo/dissimilarity_measures/src/xsimd/test/test_complex_power.cpp +265 -0
  186. sequenzo/dissimilarity_measures/src/xsimd/test/test_complex_trigonometric.cpp +236 -0
  187. sequenzo/dissimilarity_measures/src/xsimd/test/test_conversion.cpp +248 -0
  188. sequenzo/dissimilarity_measures/src/xsimd/test/test_custom_default_arch.cpp +28 -0
  189. sequenzo/dissimilarity_measures/src/xsimd/test/test_error_gamma.cpp +170 -0
  190. sequenzo/dissimilarity_measures/src/xsimd/test/test_explicit_batch_instantiation.cpp +32 -0
  191. sequenzo/dissimilarity_measures/src/xsimd/test/test_exponential.cpp +202 -0
  192. sequenzo/dissimilarity_measures/src/xsimd/test/test_extract_pair.cpp +92 -0
  193. sequenzo/dissimilarity_measures/src/xsimd/test/test_fp_manipulation.cpp +77 -0
  194. sequenzo/dissimilarity_measures/src/xsimd/test/test_gnu_source.cpp +30 -0
  195. sequenzo/dissimilarity_measures/src/xsimd/test/test_hyperbolic.cpp +167 -0
  196. sequenzo/dissimilarity_measures/src/xsimd/test/test_load_store.cpp +304 -0
  197. sequenzo/dissimilarity_measures/src/xsimd/test/test_memory.cpp +61 -0
  198. sequenzo/dissimilarity_measures/src/xsimd/test/test_poly_evaluation.cpp +64 -0
  199. sequenzo/dissimilarity_measures/src/xsimd/test/test_power.cpp +184 -0
  200. sequenzo/dissimilarity_measures/src/xsimd/test/test_rounding.cpp +199 -0
  201. sequenzo/dissimilarity_measures/src/xsimd/test/test_select.cpp +101 -0
  202. sequenzo/dissimilarity_measures/src/xsimd/test/test_shuffle.cpp +760 -0
  203. sequenzo/dissimilarity_measures/src/xsimd/test/test_sum.cpp +4 -0
  204. sequenzo/dissimilarity_measures/src/xsimd/test/test_sum.hpp +34 -0
  205. sequenzo/dissimilarity_measures/src/xsimd/test/test_traits.cpp +172 -0
  206. sequenzo/dissimilarity_measures/src/xsimd/test/test_trigonometric.cpp +208 -0
  207. sequenzo/dissimilarity_measures/src/xsimd/test/test_utils.hpp +611 -0
  208. sequenzo/dissimilarity_measures/src/xsimd/test/test_wasm/test_wasm_playwright.py +123 -0
  209. sequenzo/dissimilarity_measures/src/xsimd/test/test_xsimd_api.cpp +1460 -0
  210. sequenzo/dissimilarity_measures/utils/__init__.py +16 -0
  211. sequenzo/dissimilarity_measures/utils/get_LCP_length_for_2_seq.py +44 -0
  212. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.cpython-311-darwin.so +0 -0
  213. sequenzo/dissimilarity_measures/utils/seqconc.cpython-311-darwin.so +0 -0
  214. sequenzo/dissimilarity_measures/utils/seqdss.cpython-311-darwin.so +0 -0
  215. sequenzo/dissimilarity_measures/utils/seqdur.cpython-311-darwin.so +0 -0
  216. sequenzo/dissimilarity_measures/utils/seqlength.cpython-311-darwin.so +0 -0
  217. sequenzo/multidomain/__init__.py +23 -0
  218. sequenzo/multidomain/association_between_domains.py +311 -0
  219. sequenzo/multidomain/cat.py +431 -0
  220. sequenzo/multidomain/combt.py +519 -0
  221. sequenzo/multidomain/dat.py +89 -0
  222. sequenzo/multidomain/idcd.py +139 -0
  223. sequenzo/multidomain/linked_polyad.py +292 -0
  224. sequenzo/openmp_setup.py +233 -0
  225. sequenzo/prefix_tree/__init__.py +43 -0
  226. sequenzo/prefix_tree/individual_level_indicators.py +1274 -0
  227. sequenzo/prefix_tree/system_level_indicators.py +465 -0
  228. sequenzo/prefix_tree/utils.py +54 -0
  229. sequenzo/sequence_characteristics/__init__.py +40 -0
  230. sequenzo/sequence_characteristics/complexity_index.py +49 -0
  231. sequenzo/sequence_characteristics/overall_cross_sectional_entropy.py +220 -0
  232. sequenzo/sequence_characteristics/plot_characteristics.py +593 -0
  233. sequenzo/sequence_characteristics/simple_characteristics.py +311 -0
  234. sequenzo/sequence_characteristics/state_frequencies_and_entropy_per_sequence.py +39 -0
  235. sequenzo/sequence_characteristics/turbulence.py +155 -0
  236. sequenzo/sequence_characteristics/variance_of_spell_durations.py +86 -0
  237. sequenzo/sequence_characteristics/within_sequence_entropy.py +43 -0
  238. sequenzo/suffix_tree/__init__.py +48 -0
  239. sequenzo/suffix_tree/individual_level_indicators.py +1638 -0
  240. sequenzo/suffix_tree/system_level_indicators.py +456 -0
  241. sequenzo/suffix_tree/utils.py +56 -0
  242. sequenzo/visualization/__init__.py +29 -0
  243. sequenzo/visualization/plot_mean_time.py +194 -0
  244. sequenzo/visualization/plot_modal_state.py +276 -0
  245. sequenzo/visualization/plot_most_frequent_sequences.py +147 -0
  246. sequenzo/visualization/plot_relative_frequency.py +404 -0
  247. sequenzo/visualization/plot_sequence_index.py +937 -0
  248. sequenzo/visualization/plot_single_medoid.py +153 -0
  249. sequenzo/visualization/plot_state_distribution.py +613 -0
  250. sequenzo/visualization/plot_transition_matrix.py +190 -0
  251. sequenzo/visualization/utils/__init__.py +23 -0
  252. sequenzo/visualization/utils/utils.py +310 -0
  253. sequenzo/with_event_history_analysis/__init__.py +35 -0
  254. sequenzo/with_event_history_analysis/sequence_analysis_multi_state_model.py +850 -0
  255. sequenzo/with_event_history_analysis/sequence_history_analysis.py +283 -0
  256. sequenzo-0.1.21.dist-info/METADATA +308 -0
  257. sequenzo-0.1.21.dist-info/RECORD +254 -0
  258. sequenzo-0.1.21.dist-info/WHEEL +5 -0
  259. sequenzo-0.1.21.dist-info/licenses/LICENSE +28 -0
  260. sequenzo-0.1.21.dist-info/top_level.txt +1 -0
@@ -0,0 +1,4 @@
1
+ #include "test_sum.hpp"
2
+ #if XSIMD_WITH_AVX
3
+ template float sum::operator()(xsimd::avx, float const*, unsigned);
4
+ #endif
@@ -0,0 +1,34 @@
1
+ #ifndef XSIMD_TEST_SUM_HPP
2
+ #define XSIMD_TEST_SUM_HPP
3
+ #include "xsimd/xsimd.hpp"
4
+ #ifndef XSIMD_NO_SUPPORTED_ARCHITECTURE
5
+
6
+ struct sum
7
+ {
8
+ // NOTE: no inline definition here otherwise extern template instantiation
9
+ // doesn't prevent implicit instantiation.
10
+ template <class Arch, class T>
11
+ T operator()(Arch, T const* data, unsigned size);
12
+ };
13
+
14
+ template <class Arch, class T>
15
+ T sum::operator()(Arch, T const* data, unsigned size)
16
+ {
17
+ using batch = xsimd::batch<T, Arch>;
18
+ batch acc(static_cast<T>(0));
19
+ const unsigned n = size / batch::size * batch::size;
20
+ for (unsigned i = 0; i != n; i += batch::size)
21
+ acc += batch::load_unaligned(data + i);
22
+ T star_acc = xsimd::reduce_add(acc);
23
+ for (unsigned i = n; i < size; ++i)
24
+ star_acc += data[i];
25
+ return star_acc;
26
+ }
27
+
28
+ #if XSIMD_WITH_AVX
29
+ extern template float sum::operator()(xsimd::avx, float const*, unsigned);
30
+ #endif
31
+
32
+ #endif
33
+
34
+ #endif
@@ -0,0 +1,172 @@
1
+ /***************************************************************************
2
+ * Copyright (c) Johan Mabille, Sylvain Corlay, Wolf Vollprecht and *
3
+ * Martin Renou *
4
+ * Copyright (c) QuantStack *
5
+ * Copyright (c) Serge Guelton *
6
+ * *
7
+ * Distributed under the terms of the BSD 3-Clause License. *
8
+ * *
9
+ * The full license is in the file LICENSE, distributed with this software. *
10
+ ****************************************************************************/
11
+
12
+ #include "xsimd/xsimd.hpp"
13
+ #ifndef XSIMD_NO_SUPPORTED_ARCHITECTURE
14
+
15
+ #include "test_utils.hpp"
16
+
17
+ template <class B>
18
+ struct traits_test
19
+ {
20
+ using batch_type = B;
21
+ using value_type = typename B::value_type;
22
+
23
+ void test_simd_traits()
24
+ {
25
+ using traits_type = xsimd::simd_traits<value_type>;
26
+ CHECK_EQ(traits_type::size, batch_type::size);
27
+ constexpr bool same_type = std::is_same<B, typename traits_type::type>::value;
28
+ CHECK_UNARY(same_type);
29
+ using batch_bool_type = xsimd::batch_bool<value_type>;
30
+ constexpr bool same_bool_type = std::is_same<batch_bool_type, typename traits_type::bool_type>::value;
31
+ CHECK_UNARY(same_bool_type);
32
+
33
+ using vector_traits_type = xsimd::simd_traits<std::vector<value_type>>;
34
+ CHECK_EQ(vector_traits_type::size, 1);
35
+ constexpr bool vec_same_type = std::is_same<typename vector_traits_type::type, std::vector<value_type>>::value;
36
+ CHECK_UNARY(vec_same_type);
37
+ }
38
+
39
+ void test_revert_simd_traits()
40
+ {
41
+ using traits_type = xsimd::revert_simd_traits<batch_type>;
42
+ CHECK_EQ(traits_type::size, batch_type::size);
43
+ constexpr bool same_type = std::is_same<value_type, typename traits_type::type>::value;
44
+ CHECK_UNARY(same_type);
45
+ }
46
+
47
+ void test_simd_return_type()
48
+ {
49
+ using rtype1 = xsimd::simd_return_type<value_type, float>;
50
+ constexpr bool res1 = std::is_same<rtype1, xsimd::batch<float>>::value;
51
+ CHECK_UNARY(res1);
52
+
53
+ using rtype2 = xsimd::simd_return_type<bool, value_type>;
54
+ constexpr bool res2 = std::is_same<rtype2, xsimd::batch_bool<value_type>>::value;
55
+ CHECK_UNARY(res2);
56
+ }
57
+
58
+ void test_mask_type()
59
+ {
60
+ using mtype0 = xsimd::mask_type_t<batch_type>;
61
+ constexpr bool res0 = std::is_same<mtype0, xsimd::batch_bool<xsimd::scalar_type_t<batch_type>>>::value;
62
+ CHECK_UNARY(res0);
63
+
64
+ using mtype1 = xsimd::mask_type_t<value_type>;
65
+ constexpr bool res1 = std::is_same<mtype1, bool>::value;
66
+ CHECK_UNARY(res1);
67
+ }
68
+ };
69
+
70
+ TEST_CASE_TEMPLATE("[traits]", B, BATCH_TYPES)
71
+ {
72
+ traits_test<B> Test;
73
+
74
+ SUBCASE("simd_traits")
75
+ {
76
+ Test.test_simd_traits();
77
+ }
78
+
79
+ SUBCASE("revert_simd_traits")
80
+ {
81
+ Test.test_revert_simd_traits();
82
+ }
83
+
84
+ SUBCASE("simd_return_type")
85
+ {
86
+ Test.test_simd_return_type();
87
+ }
88
+
89
+ SUBCASE("mask_type")
90
+ {
91
+ Test.test_mask_type();
92
+ }
93
+ }
94
+
95
+ template <class B>
96
+ struct complex_traits_test
97
+ {
98
+ using batch_type = B;
99
+ using value_type = typename B::value_type;
100
+
101
+ void test_simd_traits()
102
+ {
103
+ using traits_type = xsimd::simd_traits<value_type>;
104
+ CHECK_EQ(traits_type::size, batch_type::size);
105
+ constexpr bool same_type = std::is_same<B, typename traits_type::type>::value;
106
+ CHECK_UNARY(same_type);
107
+ using batch_bool_type = xsimd::batch_bool<typename value_type::value_type>;
108
+ constexpr bool same_bool_type = std::is_same<batch_bool_type, typename traits_type::bool_type>::value;
109
+ CHECK_UNARY(same_bool_type);
110
+
111
+ using vector_traits_type = xsimd::simd_traits<std::vector<value_type>>;
112
+ CHECK_EQ(vector_traits_type::size, 1);
113
+ constexpr bool vec_same_type = std::is_same<typename vector_traits_type::type, std::vector<value_type>>::value;
114
+ CHECK_UNARY(vec_same_type);
115
+ }
116
+
117
+ void test_revert_simd_traits()
118
+ {
119
+ using traits_type = xsimd::revert_simd_traits<batch_type>;
120
+ CHECK_EQ(traits_type::size, batch_type::size);
121
+ constexpr bool same_type = std::is_same<value_type, typename traits_type::type>::value;
122
+ CHECK_UNARY(same_type);
123
+ }
124
+
125
+ void test_simd_return_type()
126
+ {
127
+ using rtype1 = xsimd::simd_return_type<value_type, float>;
128
+ constexpr bool res1 = std::is_same<rtype1, xsimd::batch<std::complex<float>>>::value;
129
+ CHECK_UNARY(res1);
130
+
131
+ using rtype2 = xsimd::simd_return_type<bool, value_type>;
132
+ constexpr bool res2 = std::is_same<rtype2, xsimd::batch_bool<typename value_type::value_type>>::value;
133
+ CHECK_UNARY(res2);
134
+ }
135
+
136
+ void test_mask_type()
137
+ {
138
+ using mtype0 = xsimd::mask_type_t<batch_type>;
139
+ constexpr bool res0 = std::is_same<mtype0, xsimd::batch_bool<xsimd::scalar_type_t<typename batch_type::real_batch::value_type>>>::value;
140
+ CHECK_UNARY(res0);
141
+
142
+ using mtype1 = xsimd::mask_type_t<value_type>;
143
+ constexpr bool res1 = std::is_same<mtype1, bool>::value;
144
+ CHECK_UNARY(res1);
145
+ }
146
+ };
147
+
148
+ TEST_CASE_TEMPLATE("[complex traits]", B, BATCH_COMPLEX_TYPES)
149
+ {
150
+ complex_traits_test<B> Test;
151
+
152
+ SUBCASE("simd_traits")
153
+ {
154
+ Test.test_simd_traits();
155
+ }
156
+
157
+ SUBCASE("revert_simd_traits")
158
+ {
159
+ Test.test_revert_simd_traits();
160
+ }
161
+
162
+ SUBCASE("simd_return_type")
163
+ {
164
+ Test.test_simd_return_type();
165
+ }
166
+
167
+ SUBCASE("mask_type")
168
+ {
169
+ Test.test_mask_type();
170
+ }
171
+ }
172
+ #endif
@@ -0,0 +1,208 @@
1
+ /***************************************************************************
2
+ * Copyright (c) Johan Mabille, Sylvain Corlay, Wolf Vollprecht and *
3
+ * Martin Renou *
4
+ * Copyright (c) QuantStack *
5
+ * Copyright (c) Serge Guelton *
6
+ * *
7
+ * Distributed under the terms of the BSD 3-Clause License. *
8
+ * *
9
+ * The full license is in the file LICENSE, distributed with this software. *
10
+ ****************************************************************************/
11
+
12
+ #include "xsimd/xsimd.hpp"
13
+ #ifndef XSIMD_NO_SUPPORTED_ARCHITECTURE
14
+
15
+ #include "test_utils.hpp"
16
+
17
+ template <class B>
18
+ struct trigonometric_test
19
+ {
20
+ using batch_type = B;
21
+ using value_type = typename B::value_type;
22
+ static constexpr size_t size = B::size;
23
+ using vector_type = std::vector<value_type>;
24
+
25
+ size_t nb_input;
26
+ vector_type input;
27
+ vector_type ainput;
28
+ vector_type atan_input;
29
+ vector_type expected;
30
+ vector_type res;
31
+
32
+ trigonometric_test()
33
+ {
34
+ nb_input = size * 10000;
35
+ input.resize(nb_input);
36
+ ainput.resize(nb_input);
37
+ atan_input.resize(nb_input);
38
+ for (size_t i = 0; i < nb_input; ++i)
39
+ {
40
+ input[i] = value_type(0.) + i * value_type(80.) / nb_input;
41
+ ainput[i] = value_type(-1.) + value_type(2.) * i / nb_input;
42
+ atan_input[i] = value_type(-10.) + i * value_type(20.) / nb_input;
43
+ }
44
+ expected.resize(nb_input);
45
+ res.resize(nb_input);
46
+ }
47
+
48
+ void test_trigonometric_functions()
49
+ {
50
+ // sin
51
+ {
52
+ std::transform(input.cbegin(), input.cend(), expected.begin(),
53
+ [](const value_type& v)
54
+ { return std::sin(v); });
55
+ batch_type in, out;
56
+ for (size_t i = 0; i < nb_input; i += size)
57
+ {
58
+ detail::load_batch(in, input, i);
59
+ out = sin(in);
60
+ detail::store_batch(out, res, i);
61
+ }
62
+ size_t diff = detail::get_nb_diff(res, expected);
63
+ INFO("sin");
64
+ CHECK_EQ(diff, 0);
65
+ }
66
+ // cos
67
+ {
68
+ std::transform(input.cbegin(), input.cend(), expected.begin(),
69
+ [](const value_type& v)
70
+ { return std::cos(v); });
71
+ batch_type in, out;
72
+ for (size_t i = 0; i < nb_input; i += size)
73
+ {
74
+ detail::load_batch(in, input, i);
75
+ out = cos(in);
76
+ detail::store_batch(out, res, i);
77
+ }
78
+ size_t diff = detail::get_nb_diff(res, expected);
79
+ INFO("cos");
80
+ CHECK_EQ(diff, 0);
81
+ }
82
+ // sincos
83
+ {
84
+ vector_type expected2(nb_input), res2(nb_input);
85
+ std::transform(input.cbegin(), input.cend(), expected.begin(),
86
+ [](const value_type& v)
87
+ { return std::sin(v); });
88
+ std::transform(input.cbegin(), input.cend(), expected2.begin(),
89
+ [](const value_type& v)
90
+ { return std::cos(v); });
91
+ batch_type in, out1, out2;
92
+ for (size_t i = 0; i < nb_input; i += size)
93
+ {
94
+ detail::load_batch(in, input, i);
95
+ std::tie(out1, out2) = sincos(in);
96
+ detail::store_batch(out1, res, i);
97
+ detail::store_batch(out2, res2, i);
98
+ }
99
+ size_t diff = detail::get_nb_diff(res, expected);
100
+ INFO("sincos(sin)");
101
+ CHECK_EQ(diff, 0);
102
+ diff = detail::get_nb_diff(res2, expected2);
103
+ INFO("sincos(cos)");
104
+ CHECK_EQ(diff, 0);
105
+ }
106
+ // tan
107
+ {
108
+ std::transform(input.cbegin(), input.cend(), expected.begin(),
109
+ [](const value_type& v)
110
+ { return std::tan(v); });
111
+ batch_type in, out;
112
+ for (size_t i = 0; i < nb_input; i += size)
113
+ {
114
+ detail::load_batch(in, input, i);
115
+ out = tan(in);
116
+ detail::store_batch(out, res, i);
117
+ }
118
+ size_t diff = detail::get_nb_diff(res, expected);
119
+ INFO("tan");
120
+ CHECK_EQ(diff, 0);
121
+ }
122
+ }
123
+
124
+ void test_reciprocal_functions()
125
+ {
126
+
127
+ // asin
128
+ {
129
+ std::transform(ainput.cbegin(), ainput.cend(), expected.begin(),
130
+ [](const value_type& v)
131
+ { return std::asin(v); });
132
+ batch_type in, out;
133
+ for (size_t i = 0; i < nb_input; i += size)
134
+ {
135
+ detail::load_batch(in, ainput, i);
136
+ out = asin(in);
137
+ detail::store_batch(out, res, i);
138
+ }
139
+ size_t diff = detail::get_nb_diff(res, expected);
140
+ INFO("asin");
141
+ CHECK_EQ(diff, 0);
142
+ }
143
+ // acos
144
+ {
145
+ std::transform(ainput.cbegin(), ainput.cend(), expected.begin(),
146
+ [](const value_type& v)
147
+ { return std::acos(v); });
148
+ batch_type in, out;
149
+ for (size_t i = 0; i < nb_input; i += size)
150
+ {
151
+ detail::load_batch(in, ainput, i);
152
+ out = acos(in);
153
+ detail::store_batch(out, res, i);
154
+ }
155
+ size_t diff = detail::get_nb_diff(res, expected);
156
+ INFO("acos");
157
+ CHECK_EQ(diff, 0);
158
+ }
159
+ // atan
160
+ {
161
+ std::transform(atan_input.cbegin(), atan_input.cend(), expected.begin(),
162
+ [](const value_type& v)
163
+ { return std::atan(v); });
164
+ batch_type in, out;
165
+ for (size_t i = 0; i < nb_input; i += size)
166
+ {
167
+ detail::load_batch(in, atan_input, i);
168
+ out = atan(in);
169
+ detail::store_batch(out, res, i);
170
+ }
171
+ size_t diff = detail::get_nb_diff(res, expected);
172
+ INFO("atan");
173
+ CHECK_EQ(diff, 0);
174
+ }
175
+ // atan2
176
+ {
177
+ std::transform(atan_input.cbegin(), atan_input.cend(), input.cbegin(), expected.begin(),
178
+ [](const value_type& v, const value_type& r)
179
+ { return std::atan2(v, r); });
180
+ batch_type in, rhs, out;
181
+ for (size_t i = 0; i < nb_input; i += size)
182
+ {
183
+ detail::load_batch(in, atan_input, i);
184
+ detail::load_batch(rhs, input, i);
185
+ out = atan2(in, rhs);
186
+ detail::store_batch(out, res, i);
187
+ }
188
+ size_t diff = detail::get_nb_diff(res, expected);
189
+ INFO("atan2");
190
+ CHECK_EQ(diff, 0);
191
+ }
192
+ }
193
+ };
194
+
195
+ TEST_CASE_TEMPLATE("[trigonometric]", B, BATCH_FLOAT_TYPES)
196
+ {
197
+ trigonometric_test<B> Test;
198
+ SUBCASE("trigonometric")
199
+ {
200
+ Test.test_trigonometric_functions();
201
+ }
202
+
203
+ SUBCASE("reciprocal")
204
+ {
205
+ Test.test_reciprocal_functions();
206
+ }
207
+ }
208
+ #endif