sequenzo 0.1.18__cp310-cp310-macosx_10_9_universal2.whl → 0.1.20__cp310-cp310-macosx_10_9_universal2.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 (360) hide show
  1. sequenzo/__init__.py +39 -7
  2. sequenzo/big_data/clara/utils/get_weighted_diss.c +155 -155
  3. sequenzo/big_data/clara/utils/get_weighted_diss.cpython-310-darwin.so +0 -0
  4. sequenzo/clustering/KMedoids.py +39 -0
  5. sequenzo/clustering/hierarchical_clustering.py +108 -6
  6. sequenzo/define_sequence_data.py +10 -1
  7. sequenzo/dissimilarity_measures/get_distance_matrix.py +2 -3
  8. sequenzo/dissimilarity_measures/get_substitution_cost_matrix.py +1 -1
  9. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.c +155 -155
  10. sequenzo/dissimilarity_measures/utils/get_sm_trate_substitution_cost_matrix.cpython-310-darwin.so +0 -0
  11. sequenzo/dissimilarity_measures/utils/seqconc.c +155 -155
  12. sequenzo/dissimilarity_measures/utils/seqconc.cpython-310-darwin.so +0 -0
  13. sequenzo/dissimilarity_measures/utils/seqdss.c +155 -155
  14. sequenzo/dissimilarity_measures/utils/seqdss.cpython-310-darwin.so +0 -0
  15. sequenzo/dissimilarity_measures/utils/seqdur.c +155 -155
  16. sequenzo/dissimilarity_measures/utils/seqdur.cpython-310-darwin.so +0 -0
  17. sequenzo/dissimilarity_measures/utils/seqlength.c +155 -155
  18. sequenzo/dissimilarity_measures/utils/seqlength.cpython-310-darwin.so +0 -0
  19. sequenzo/multidomain/cat.py +0 -53
  20. sequenzo/multidomain/dat.py +11 -3
  21. sequenzo/multidomain/idcd.py +0 -3
  22. sequenzo/multidomain/linked_polyad.py +0 -1
  23. sequenzo/openmp_setup.py +233 -0
  24. sequenzo/visualization/plot_transition_matrix.py +21 -22
  25. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/METADATA +71 -10
  26. sequenzo-0.1.20.dist-info/RECORD +215 -0
  27. sequenzo/dissimilarity_measures/setup.py +0 -35
  28. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LDLT.h +0 -688
  29. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LLT.h +0 -558
  30. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Cholesky/LLT_LAPACKE.h +0 -99
  31. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/CholmodSupport/CholmodSupport.h +0 -682
  32. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h +0 -346
  33. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexSchur.h +0 -462
  34. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +0 -91
  35. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/EigenSolver.h +0 -622
  36. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +0 -418
  37. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +0 -226
  38. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h +0 -374
  39. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +0 -158
  40. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealQZ.h +0 -657
  41. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealSchur.h +0 -558
  42. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +0 -77
  43. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +0 -904
  44. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +0 -87
  45. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Eigenvalues/Tridiagonalization.h +0 -561
  46. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/AlignedBox.h +0 -486
  47. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/AngleAxis.h +0 -247
  48. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/EulerAngles.h +0 -114
  49. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Homogeneous.h +0 -501
  50. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Hyperplane.h +0 -282
  51. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/OrthoMethods.h +0 -235
  52. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/ParametrizedLine.h +0 -232
  53. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Quaternion.h +0 -870
  54. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Rotation2D.h +0 -199
  55. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/RotationBase.h +0 -206
  56. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Scaling.h +0 -188
  57. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Transform.h +0 -1563
  58. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Translation.h +0 -202
  59. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/Umeyama.h +0 -166
  60. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h +0 -168
  61. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/BlockHouseholder.h +0 -110
  62. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/Householder.h +0 -176
  63. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Householder/HouseholderSequence.h +0 -545
  64. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +0 -226
  65. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +0 -212
  66. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +0 -229
  67. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +0 -394
  68. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +0 -453
  69. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +0 -444
  70. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +0 -198
  71. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +0 -117
  72. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/Jacobi/Jacobi.h +0 -483
  73. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/KLUSupport/KLUSupport.h +0 -358
  74. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/Determinant.h +0 -117
  75. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/FullPivLU.h +0 -877
  76. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/InverseImpl.h +0 -432
  77. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/PartialPivLU.h +0 -624
  78. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h +0 -83
  79. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/LU/arch/InverseSize4.h +0 -351
  80. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/MetisSupport/MetisSupport.h +0 -137
  81. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Amd.h +0 -435
  82. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h +0 -1863
  83. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/OrderingMethods/Ordering.h +0 -153
  84. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/PaStiXSupport/PaStiXSupport.h +0 -678
  85. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/PardisoSupport/PardisoSupport.h +0 -545
  86. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/ColPivHouseholderQR.h +0 -674
  87. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +0 -97
  88. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h +0 -635
  89. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/FullPivHouseholderQR.h +0 -713
  90. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/HouseholderQR.h +0 -434
  91. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h +0 -68
  92. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +0 -335
  93. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/BDCSVD.h +0 -1366
  94. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/JacobiSVD.h +0 -812
  95. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h +0 -91
  96. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/SVDBase.h +0 -376
  97. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SVD/UpperBidiagonalization.h +0 -414
  98. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h +0 -697
  99. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +0 -174
  100. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/AmbiVector.h +0 -378
  101. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/CompressedStorage.h +0 -274
  102. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +0 -352
  103. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/MappedSparseMatrix.h +0 -67
  104. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseAssign.h +0 -270
  105. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseBlock.h +0 -571
  106. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseColEtree.h +0 -206
  107. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCompressedBase.h +0 -370
  108. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +0 -722
  109. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +0 -150
  110. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDenseProduct.h +0 -342
  111. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h +0 -138
  112. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseDot.h +0 -98
  113. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseFuzzy.h +0 -29
  114. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMap.h +0 -305
  115. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMatrix.h +0 -1518
  116. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseMatrixBase.h +0 -398
  117. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparsePermutation.h +0 -178
  118. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseProduct.h +0 -181
  119. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseRedux.h +0 -49
  120. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseRef.h +0 -397
  121. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h +0 -659
  122. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSolverBase.h +0 -124
  123. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +0 -198
  124. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseTranspose.h +0 -92
  125. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseTriangularView.h +0 -189
  126. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseUtil.h +0 -186
  127. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseVector.h +0 -478
  128. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/SparseView.h +0 -254
  129. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseCore/TriangularSolver.h +0 -315
  130. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU.h +0 -923
  131. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLUImpl.h +0 -66
  132. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Memory.h +0 -226
  133. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Structs.h +0 -110
  134. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +0 -375
  135. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_Utils.h +0 -80
  136. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_column_bmod.h +0 -181
  137. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_column_dfs.h +0 -179
  138. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +0 -107
  139. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +0 -280
  140. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +0 -126
  141. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +0 -130
  142. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_panel_bmod.h +0 -223
  143. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_panel_dfs.h +0 -258
  144. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_pivotL.h +0 -137
  145. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_pruneL.h +0 -136
  146. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseLU/SparseLU_relax_snode.h +0 -83
  147. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SparseQR/SparseQR.h +0 -758
  148. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdDeque.h +0 -116
  149. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdList.h +0 -106
  150. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/StdVector.h +0 -131
  151. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/StlSupport/details.h +0 -84
  152. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/SuperLUSupport/SuperLUSupport.h +0 -1025
  153. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/UmfPackSupport/UmfPackSupport.h +0 -642
  154. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/Image.h +0 -82
  155. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/Kernel.h +0 -79
  156. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/RealSvd2x2.h +0 -55
  157. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/blas.h +0 -440
  158. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapack.h +0 -152
  159. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapacke.h +0 -16292
  160. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/misc/lapacke_mangling.h +0 -17
  161. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h +0 -358
  162. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h +0 -696
  163. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/BlockMethods.h +0 -1442
  164. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h +0 -115
  165. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/CommonCwiseUnaryOps.h +0 -177
  166. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/IndexedViewMethods.h +0 -262
  167. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h +0 -152
  168. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h +0 -95
  169. sequenzo/dissimilarity_measures/src/eigen/Eigen/src/plugins/ReshapedMethods.h +0 -149
  170. sequenzo/dissimilarity_measures/src/eigen/blas/BandTriangularSolver.h +0 -97
  171. sequenzo/dissimilarity_measures/src/eigen/blas/GeneralRank1Update.h +0 -44
  172. sequenzo/dissimilarity_measures/src/eigen/blas/PackedSelfadjointProduct.h +0 -53
  173. sequenzo/dissimilarity_measures/src/eigen/blas/PackedTriangularMatrixVector.h +0 -79
  174. sequenzo/dissimilarity_measures/src/eigen/blas/PackedTriangularSolverVector.h +0 -88
  175. sequenzo/dissimilarity_measures/src/eigen/blas/Rank2Update.h +0 -57
  176. sequenzo/dissimilarity_measures/src/eigen/blas/common.h +0 -175
  177. sequenzo/dissimilarity_measures/src/eigen/blas/f2c/datatypes.h +0 -24
  178. sequenzo/dissimilarity_measures/src/eigen/blas/level1_cplx_impl.h +0 -155
  179. sequenzo/dissimilarity_measures/src/eigen/blas/level1_impl.h +0 -144
  180. sequenzo/dissimilarity_measures/src/eigen/blas/level1_real_impl.h +0 -122
  181. sequenzo/dissimilarity_measures/src/eigen/blas/level2_cplx_impl.h +0 -360
  182. sequenzo/dissimilarity_measures/src/eigen/blas/level2_impl.h +0 -553
  183. sequenzo/dissimilarity_measures/src/eigen/blas/level2_real_impl.h +0 -306
  184. sequenzo/dissimilarity_measures/src/eigen/blas/level3_impl.h +0 -702
  185. sequenzo/dissimilarity_measures/src/eigen/debug/gdb/__init__.py +0 -1
  186. sequenzo/dissimilarity_measures/src/eigen/debug/gdb/printers.py +0 -314
  187. sequenzo/dissimilarity_measures/src/eigen/lapack/lapack_common.h +0 -29
  188. sequenzo/dissimilarity_measures/src/eigen/scripts/relicense.py +0 -69
  189. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/Tensor.h +0 -554
  190. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorArgMax.h +0 -329
  191. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h +0 -247
  192. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBase.h +0 -1176
  193. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBlock.h +0 -1559
  194. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h +0 -1093
  195. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h +0 -518
  196. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h +0 -377
  197. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h +0 -1023
  198. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionBlocking.h +0 -73
  199. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h +0 -6
  200. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionGpu.h +0 -1413
  201. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionMapper.h +0 -575
  202. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionSycl.h +0 -1650
  203. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h +0 -1679
  204. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConversion.h +0 -456
  205. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h +0 -1132
  206. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorConvolutionSycl.h +0 -544
  207. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorCostModel.h +0 -214
  208. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorCustomOp.h +0 -347
  209. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h +0 -137
  210. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceCuda.h +0 -6
  211. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceDefault.h +0 -104
  212. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceGpu.h +0 -389
  213. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceSycl.h +0 -1048
  214. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDeviceThreadPool.h +0 -409
  215. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDimensionList.h +0 -236
  216. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h +0 -490
  217. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h +0 -236
  218. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h +0 -983
  219. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h +0 -703
  220. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h +0 -388
  221. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFFT.h +0 -669
  222. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h +0 -379
  223. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h +0 -237
  224. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h +0 -191
  225. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h +0 -488
  226. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGenerator.h +0 -302
  227. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGlobalFunctions.h +0 -33
  228. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaDefines.h +0 -99
  229. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorGpuHipCudaUndefines.h +0 -44
  230. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIO.h +0 -79
  231. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorImagePatch.h +0 -603
  232. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIndexList.h +0 -738
  233. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorInflation.h +0 -247
  234. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorInitializer.h +0 -82
  235. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h +0 -263
  236. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorLayoutSwap.h +0 -216
  237. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMacros.h +0 -98
  238. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMap.h +0 -327
  239. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMeta.h +0 -311
  240. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h +0 -1102
  241. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h +0 -708
  242. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h +0 -291
  243. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorRandom.h +0 -322
  244. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h +0 -998
  245. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionCuda.h +0 -6
  246. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionGpu.h +0 -966
  247. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReductionSycl.h +0 -582
  248. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorRef.h +0 -454
  249. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorReverse.h +0 -465
  250. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorScan.h +0 -528
  251. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorScanSycl.h +0 -513
  252. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h +0 -471
  253. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h +0 -161
  254. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h +0 -346
  255. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorTrace.h +0 -303
  256. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h +0 -264
  257. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorUInt128.h +0 -249
  258. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/Tensor/TensorVolumePatch.h +0 -629
  259. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/DynamicSymmetry.h +0 -293
  260. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/StaticSymmetry.h +0 -236
  261. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/Symmetry.h +0 -338
  262. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/TensorSymmetry/util/TemplateGroupTheory.h +0 -669
  263. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/Barrier.h +0 -67
  264. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/EventCount.h +0 -249
  265. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/NonBlockingThreadPool.h +0 -486
  266. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/RunQueue.h +0 -236
  267. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadCancel.h +0 -23
  268. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadEnvironment.h +0 -40
  269. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadLocal.h +0 -301
  270. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadPoolInterface.h +0 -48
  271. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/ThreadPool/ThreadYield.h +0 -20
  272. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/CXX11Meta.h +0 -537
  273. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/CXX11Workarounds.h +0 -88
  274. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/EmulateArray.h +0 -261
  275. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/CXX11/src/util/MaxSizeVector.h +0 -158
  276. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h +0 -108
  277. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h +0 -730
  278. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h +0 -220
  279. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/BVH/BVAlgorithms.h +0 -293
  280. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/BVH/KdBVH.h +0 -223
  281. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h +0 -790
  282. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/EulerAngles/EulerAngles.h +0 -355
  283. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/EulerAngles/EulerSystem.h +0 -305
  284. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/FFT/ei_fftw_impl.h +0 -261
  285. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/FFT/ei_kissfft_impl.h +0 -449
  286. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h +0 -187
  287. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/DGMRES.h +0 -511
  288. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/GMRES.h +0 -335
  289. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IDRS.h +0 -436
  290. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h +0 -90
  291. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/IterationController.h +0 -154
  292. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/MINRES.h +0 -267
  293. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/IterativeSolvers/Scaling.h +0 -193
  294. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h +0 -305
  295. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h +0 -84
  296. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h +0 -202
  297. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h +0 -160
  298. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h +0 -188
  299. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h +0 -396
  300. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h +0 -441
  301. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h +0 -569
  302. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h +0 -373
  303. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h +0 -705
  304. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h +0 -368
  305. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MatrixFunctions/StemFunction.h +0 -117
  306. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/MoreVectorization/MathFunctions.h +0 -95
  307. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h +0 -601
  308. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h +0 -657
  309. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/chkder.h +0 -66
  310. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/covar.h +0 -70
  311. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/dogleg.h +0 -107
  312. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h +0 -79
  313. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/lmpar.h +0 -298
  314. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h +0 -91
  315. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h +0 -30
  316. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/r1updt.h +0 -99
  317. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h +0 -49
  318. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h +0 -130
  319. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/Companion.h +0 -280
  320. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/PolynomialSolver.h +0 -428
  321. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Polynomials/PolynomialUtils.h +0 -143
  322. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h +0 -352
  323. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineMatrix.h +0 -862
  324. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h +0 -212
  325. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineProduct.h +0 -295
  326. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineStorage.h +0 -259
  327. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Skyline/SkylineUtil.h +0 -89
  328. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h +0 -122
  329. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/BlockSparseMatrix.h +0 -1079
  330. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h +0 -404
  331. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/MarketIO.h +0 -282
  332. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h +0 -247
  333. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SparseExtra/RandomSetter.h +0 -349
  334. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsArrayAPI.h +0 -286
  335. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsBFloat16.h +0 -68
  336. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsFunctors.h +0 -357
  337. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsHalf.h +0 -66
  338. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsImpl.h +0 -1959
  339. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/BesselFunctionsPacketMath.h +0 -118
  340. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/HipVectorCompatibility.h +0 -67
  341. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsArrayAPI.h +0 -167
  342. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsBFloat16.h +0 -58
  343. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsFunctors.h +0 -330
  344. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsHalf.h +0 -58
  345. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsImpl.h +0 -2045
  346. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/SpecialFunctionsPacketMath.h +0 -79
  347. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX/BesselFunctions.h +0 -46
  348. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX/SpecialFunctions.h +0 -16
  349. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/BesselFunctions.h +0 -46
  350. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/AVX512/SpecialFunctions.h +0 -16
  351. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/GPU/SpecialFunctions.h +0 -369
  352. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/NEON/BesselFunctions.h +0 -54
  353. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/SpecialFunctions/arch/NEON/SpecialFunctions.h +0 -34
  354. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/Spline.h +0 -507
  355. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/SplineFitting.h +0 -431
  356. sequenzo/dissimilarity_measures/src/eigen/unsupported/Eigen/src/Splines/SplineFwd.h +0 -93
  357. sequenzo-0.1.18.dist-info/RECORD +0 -544
  358. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/WHEEL +0 -0
  359. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/licenses/LICENSE +0 -0
  360. {sequenzo-0.1.18.dist-info → sequenzo-0.1.20.dist-info}/top_level.txt +0 -0
@@ -412,7 +412,6 @@ def compute_cat_distance_matrix(channels: List[SequenceData],
412
412
  with contextlib.redirect_stdout(io.StringIO()):
413
413
  newseqdata_seq = SequenceData(newseqdata_df,
414
414
  time=md_cnames,
415
- time_type=channels[0].time_type,
416
415
  states=states_space,
417
416
  labels=md_labels,
418
417
  id_col=channels[0].id_col)
@@ -430,55 +429,3 @@ def compute_cat_distance_matrix(channels: List[SequenceData],
430
429
 
431
430
  diss_matrix = pd.DataFrame(diss_matrix, index=channels[0].ids, columns=channels[0].ids)
432
431
  return diss_matrix
433
-
434
-
435
- if __name__ == '__main__':
436
- # from sequenzo import *
437
- #
438
- # # df = pd.read_csv("D:/college/research/QiQi/sequenzo/files/sampled_data_sets/broad_data/sampled_30000_data.csv")
439
- # # df = pd.read_csv("D:/college/research/QiQi/sequenzo/files/orignal data/detailed_sequence_10_work_years_df.csv")
440
- # # df = pd.read_csv("D:/college/research/QiQi/sequenzo/seqdef/sampled_data_1000.csv")
441
- # df = pd.read_csv("D:/college/research/QiQi/sequenzo/files/sampled_data_sets/detailed_data/sampled_1000_data.csv")
442
- #
443
- # # df = pd.read_csv("D:/country_co2_emissions_missing.csv")
444
- #
445
- # time = list(df.columns)[4:]
446
- # # time = list(df.columns)[1:]
447
- #
448
- # # states = ['Very Low', 'Low', 'Middle', 'High', 'Very High']
449
- # states = ['data', 'data & intensive math', 'hardware', 'research', 'software', 'software & hardware', 'support & test']
450
- # # states = ['Non-computing', 'Non-technical computing', 'Technical computing']
451
- #
452
- # sequence_data = SequenceData(df[['worker_id', 'C1', 'C2', 'C3', 'C4', 'C5', 'C6', 'C7', 'C8', 'C9', 'C10']],
453
- # time_type="age", time=time, id_col="worker_id", states=states)
454
- # # sequence_data = SequenceData(df, time_type="age", time=time, id_col="country", states=states)
455
- #
456
- # sequence_data = [sequence_data, sequence_data]
457
- #
458
- # MD = seqMD(sequence_data, method="OM", sm=["TRATE"], indel="auto", what="diss", link="mean")
459
- # print(MD)
460
- #
461
- # print("================")
462
-
463
- from sequenzo import *
464
-
465
- left_df = load_dataset('biofam_left_domain')
466
- children_df = load_dataset('biofam_child_domain')
467
- married_df = load_dataset('biofam_married_domain')
468
-
469
- time_cols = [col for col in children_df.columns if col.startswith("age_")]
470
-
471
- seq_left = SequenceData(data=left_df, time_type="age", time=time_cols, states=[0, 1],
472
- labels=["At home", "Left home"])
473
- seq_child = SequenceData(data=children_df, time_type="age", time=time_cols, states=[0, 1],
474
- labels=["No child", "Child"])
475
- seq_marr = SequenceData(data=married_df, time_type="age", time=time_cols, states=[0, 1],
476
- labels=["Not married", "Married"])
477
-
478
- sequence_data = [seq_left, seq_child, seq_marr]
479
-
480
- cat_distance_matrix = compute_cat_distance_matrix(sequence_data, method="OM", sm=["TRATE"], indel=[2, 1, 1], what="diss", link="sum")
481
-
482
- print(cat_distance_matrix)
483
-
484
- print("================")
@@ -1,3 +1,11 @@
1
+ '''
2
+ Author: Yuqi Liang dawson1900@live.com
3
+ Date: 2025-09-25 08:46:49
4
+ LastEditors: Yuqi Liang dawson1900@live.com
5
+ LastEditTime: 2025-10-07 20:38:10
6
+ FilePath: /Sequenzo-main/sequenzo/multidomain/dat.py
7
+ Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
8
+ '''
1
9
  """
2
10
  @Author : Yuqi Liang 梁彧祺
3
11
  @File : dat.py
@@ -60,11 +68,11 @@ if __name__ == '__main__':
60
68
 
61
69
  time_cols = [col for col in children_df.columns if col.startswith("age_")]
62
70
 
63
- seq_left = SequenceData(data=left_df, time_type="age", time=time_cols, states=[0, 1],
71
+ seq_left = SequenceData(data=left_df, time=time_cols, states=[0, 1],
64
72
  labels=["At home", "Left home"])
65
- seq_child = SequenceData(data=children_df, time_type="age", time=time_cols, states=[0, 1],
73
+ seq_child = SequenceData(data=children_df, time=time_cols, states=[0, 1],
66
74
  labels=["No child", "Child"])
67
- seq_marr = SequenceData(data=married_df, time_type="age", time=time_cols, states=[0, 1],
75
+ seq_marr = SequenceData(data=married_df, time=time_cols, states=[0, 1],
68
76
  labels=["Not married", "Married"])
69
77
 
70
78
  domains_seq_list = [seq_left, seq_child, seq_marr]
@@ -75,7 +75,6 @@ def _generate_combined_sequence_from_csv(csv_paths: List[str],
75
75
  def create_idcd_sequence_from_csvs(
76
76
  csv_paths: List[str],
77
77
  time_cols: List[str],
78
- time_type: str = "year",
79
78
  id_col: str = "id",
80
79
  domain_state_labels: List[Dict] = None
81
80
  ) -> SequenceData:
@@ -86,7 +85,6 @@ def create_idcd_sequence_from_csvs(
86
85
  Parameters:
87
86
  - csv_paths: List of paths to domain CSVs
88
87
  - time_cols: List of time column names to use
89
- - time_type: 'year' or 'age'
90
88
  - id_col: ID column name
91
89
  - domain_state_labels: List of dictionaries mapping raw state values to labels for each domain
92
90
 
@@ -130,7 +128,6 @@ def create_idcd_sequence_from_csvs(
130
128
 
131
129
  return SequenceData(
132
130
  data=combined_df,
133
- time_type=time_type,
134
131
  time=time_cols,
135
132
  states=observed_states.index.tolist(),
136
133
  labels=pretty_labels,
@@ -190,7 +190,6 @@ def linked_polyadic_sequence_analysis(seqlist: List[SequenceData],
190
190
  seq_shuffled = SequenceData(
191
191
  data=shuffled,
192
192
  time=merged_seqdata.time,
193
- time_type=merged_seqdata.time_type,
194
193
  states=merged_seqdata.states,
195
194
  labels=merged_seqdata.labels,
196
195
  id_col="__id__"
@@ -0,0 +1,233 @@
1
+ #!/usr/bin/env python3
2
+ """
3
+ @Author : Yuqi Liang 梁彧祺
4
+ @File : openmp_setup.py
5
+ @Time : 07/10/2025 10:42
6
+ @Desc :
7
+
8
+ OpenMP Setup for Apple Silicon Macs
9
+
10
+ This module provides automatic OpenMP dependency management for Apple Silicon Macs.
11
+ It ensures that libomp is available for parallel computation without requiring
12
+ manual user intervention.
13
+ """
14
+
15
+ import sys
16
+ import os
17
+ import subprocess
18
+ import platform
19
+ import ctypes
20
+ from pathlib import Path
21
+
22
+
23
+ def check_libomp_availability():
24
+ """
25
+ Check if libomp is available on the system.
26
+
27
+ Returns:
28
+ bool: True if libomp is available, False otherwise
29
+ """
30
+ try:
31
+ # Try to load libomp directly
32
+ ctypes.CDLL('libomp.dylib')
33
+ return True
34
+ except OSError:
35
+ pass
36
+
37
+ # Try common Homebrew paths
38
+ homebrew_paths = [
39
+ '/opt/homebrew/lib/libomp.dylib', # Apple Silicon
40
+ '/usr/local/lib/libomp.dylib', # Intel Mac
41
+ ]
42
+
43
+ for path in homebrew_paths:
44
+ if os.path.exists(path):
45
+ try:
46
+ ctypes.CDLL(path)
47
+ return True
48
+ except OSError:
49
+ continue
50
+
51
+ return False
52
+
53
+
54
+ def check_homebrew_available():
55
+ """
56
+ Check if Homebrew is available on the system.
57
+
58
+ Returns:
59
+ bool: True if Homebrew is available, False otherwise
60
+ """
61
+ try:
62
+ subprocess.run(['brew', '--version'],
63
+ stdout=subprocess.DEVNULL,
64
+ stderr=subprocess.DEVNULL,
65
+ check=True)
66
+ return True
67
+ except (subprocess.CalledProcessError, FileNotFoundError):
68
+ return False
69
+
70
+
71
+ def install_libomp_via_homebrew():
72
+ """
73
+ Install libomp via Homebrew.
74
+
75
+ Returns:
76
+ bool: True if installation successful, False otherwise
77
+ """
78
+ try:
79
+ print("🔧 Installing libomp via Homebrew...")
80
+ result = subprocess.run(['brew', 'install', 'libomp'],
81
+ check=True,
82
+ stdout=subprocess.PIPE,
83
+ stderr=subprocess.PIPE)
84
+ print("[>] libomp installed successfully!")
85
+ return True
86
+ except subprocess.CalledProcessError as e:
87
+ print(f"[>] libomp installation failed: {e}")
88
+ return False
89
+ except Exception as e:
90
+ print(f"[>] Error during installation: {e}")
91
+ return False
92
+
93
+
94
+ def setup_openmp_environment():
95
+ """
96
+ Set up OpenMP environment variables for Apple Silicon.
97
+
98
+ Returns:
99
+ bool: True if setup successful, False otherwise
100
+ """
101
+ try:
102
+ # Get Homebrew prefix
103
+ result = subprocess.run(['brew', '--prefix'],
104
+ capture_output=True, text=True, check=True)
105
+ homebrew_prefix = result.stdout.strip()
106
+
107
+ # Set environment variables
108
+ lib_path = f"{homebrew_prefix}/lib"
109
+ include_path = f"{homebrew_prefix}/include"
110
+
111
+ os.environ['DYLD_LIBRARY_PATH'] = f"{lib_path}:{os.environ.get('DYLD_LIBRARY_PATH', '')}"
112
+ os.environ['LDFLAGS'] = f"-L{lib_path} {os.environ.get('LDFLAGS', '')}"
113
+ os.environ['CPPFLAGS'] = f"-I{include_path} {os.environ.get('CPPFLAGS', '')}"
114
+
115
+ print(f"[>] OpenMP environment variables set")
116
+ print(f" - Library path: {lib_path}")
117
+ print(f" - Include path: {include_path}")
118
+ return True
119
+
120
+ except Exception as e:
121
+ print(f"[>] Failed to set environment variables: {e}")
122
+ return False
123
+
124
+
125
+ def ensure_openmp_support():
126
+ """
127
+ Ensure OpenMP support is available on Apple Silicon Macs.
128
+ This function handles the complete setup process.
129
+
130
+ Returns:
131
+ bool: True if OpenMP is available, False otherwise
132
+ """
133
+ # Only run on macOS
134
+ if sys.platform != 'darwin':
135
+ return True
136
+
137
+ # Only run on Apple Silicon
138
+ if platform.machine() != 'arm64':
139
+ return True
140
+
141
+ # Check if we're in a conda environment (don't interfere)
142
+ if os.environ.get('CONDA_DEFAULT_ENV'):
143
+ print("[>] Detected Conda environment, skipping OpenMP auto-setup")
144
+ return True
145
+
146
+ print("[>] Detected Apple Silicon Mac, checking OpenMP support...")
147
+
148
+ # Check if libomp is already available
149
+ if check_libomp_availability():
150
+ print("[>] OpenMP support is available")
151
+ return True
152
+
153
+ # Check if Homebrew is available
154
+ if not check_homebrew_available():
155
+ print("""
156
+ [>] OpenMP Dependency Detection
157
+
158
+ On Apple Silicon Mac, Sequenzo requires OpenMP support for parallel computation.
159
+
160
+ Please run the following command to install OpenMP support:
161
+ brew install libomp
162
+
163
+ If you don't have Homebrew installed, please visit https://brew.sh to install Homebrew first.
164
+ """)
165
+ return False
166
+
167
+ # Check if libomp is already installed via Homebrew
168
+ try:
169
+ subprocess.run(['brew', 'list', 'libomp'],
170
+ stdout=subprocess.DEVNULL,
171
+ stderr=subprocess.DEVNULL,
172
+ check=True)
173
+ print("[>] libomp is already installed via Homebrew")
174
+
175
+ # Set up environment variables
176
+ setup_openmp_environment()
177
+ return True
178
+ except subprocess.CalledProcessError:
179
+ pass # libomp not installed, continue with installation
180
+
181
+ # Attempt to install libomp automatically
182
+ if install_libomp_via_homebrew():
183
+ # Set up environment variables after installation
184
+ setup_openmp_environment()
185
+ return True
186
+ else:
187
+ print("""
188
+ [>] Automatic OpenMP installation failed
189
+
190
+ Please manually run the following command:
191
+ brew install libomp
192
+
193
+ After installation, please restart Python or re-import sequenzo.
194
+ """)
195
+ return False
196
+
197
+
198
+ def get_openmp_status():
199
+ """
200
+ Get the current OpenMP status and provide helpful information.
201
+
202
+ Returns:
203
+ dict: Status information about OpenMP support
204
+ """
205
+ status = {
206
+ 'platform': sys.platform,
207
+ 'architecture': platform.machine(),
208
+ 'is_apple_silicon': sys.platform == 'darwin' and platform.machine() == 'arm64',
209
+ 'libomp_available': check_libomp_availability(),
210
+ 'homebrew_available': check_homebrew_available(),
211
+ 'conda_environment': bool(os.environ.get('CONDA_DEFAULT_ENV')),
212
+ }
213
+
214
+ return status
215
+
216
+
217
+ if __name__ == "__main__":
218
+ # Run the setup when called directly
219
+ success = ensure_openmp_support()
220
+ if success:
221
+ print("[>] OpenMP support is ready!")
222
+ else:
223
+ print("[>] OpenMP support unavailable, will use serial computation")
224
+
225
+ # Print status information
226
+ status = get_openmp_status()
227
+ print(f"\n[>] System Status:")
228
+ print(f" - Platform: {status['platform']}")
229
+ print(f" - Architecture: {status['architecture']}")
230
+ print(f" - Apple Silicon: {status['is_apple_silicon']}")
231
+ print(f" - libomp available: {status['libomp_available']}")
232
+ print(f" - Homebrew available: {status['homebrew_available']}")
233
+ print(f" - Conda environment: {status['conda_environment']}")
@@ -1,5 +1,5 @@
1
1
  """
2
- @Author : Yuqi Liang 梁彧祺
2
+ @Author : Yuqi Liang 梁彧祺, Sebastian Daza
3
3
  @File : plot_transition_matrix.py
4
4
  @Time : 13/02/2025 12:39
5
5
  @Desc :
@@ -32,12 +32,12 @@ def compute_transition_matrix(seqdata: SequenceData, with_missing: bool = False,
32
32
  # Process weights
33
33
  if isinstance(weights, str) and weights == "auto":
34
34
  weights = getattr(seqdata, "weights", None)
35
-
35
+
36
36
  if weights is not None:
37
37
  weights = np.asarray(weights, dtype=float).reshape(-1)
38
38
  if len(weights) != len(seqdata.values):
39
39
  raise ValueError("Length of weights must equal number of sequences.")
40
-
40
+
41
41
  num_states = len(seqdata.states)
42
42
  A = seqdata.to_dataframe().to_numpy()
43
43
  n, T = A.shape
@@ -52,19 +52,19 @@ def compute_transition_matrix(seqdata: SequenceData, with_missing: bool = False,
52
52
  nxt = A[:, 1:].flatten()
53
53
  w_pair = np.repeat(w, T-1) # Each sequence weight replicated (T-1) times
54
54
 
55
- # Filter valid transitions
56
- valid = (current >= 0) & (current < num_states) & (nxt >= 0) & (nxt < num_states)
55
+ # Filter valid transitions (states are encoded as 1, 2, 3, ..., num_states)
56
+ valid = (current >= 1) & (current <= num_states) & (nxt >= 1) & (nxt <= num_states)
57
57
  current, nxt, w_pair = current[valid], nxt[valid], w_pair[valid]
58
58
 
59
59
  # Compute weighted transition counts
60
60
  # Create mapping from state codes to matrix indices
61
61
  state_codes = sorted(set(current) | set(nxt))
62
62
  code_to_idx = {code: idx for idx, code in enumerate(state_codes)}
63
-
63
+
64
64
  # Use only the actual number of unique states for matrix size
65
65
  actual_num_states = len(state_codes)
66
66
  trans = np.zeros((actual_num_states, actual_num_states), dtype=float)
67
-
67
+
68
68
  for c, n2, ww in zip(current, nxt, w_pair):
69
69
  trans[code_to_idx[int(c)], code_to_idx[int(n2)]] += ww
70
70
 
@@ -75,7 +75,7 @@ def compute_transition_matrix(seqdata: SequenceData, with_missing: bool = False,
75
75
 
76
76
  # Create a properly sized matrix with correct mapping to original states
77
77
  final_matrix = np.zeros((num_states, num_states), dtype=float)
78
-
78
+
79
79
  # Map back to the original state positions
80
80
  for i, from_code in enumerate(state_codes):
81
81
  for j, to_code in enumerate(state_codes):
@@ -92,7 +92,7 @@ def print_transition_matrix(seqdata: SequenceData, transition_rates: np.ndarray)
92
92
  :param seqdata: SequenceData object containing state information
93
93
  :param transition_rates: numpy array containing transition rates
94
94
  """
95
- state_labels = seqdata.states
95
+ state_labels = seqdata.labels
96
96
 
97
97
  # Calculate max width needed for state labels
98
98
  max_label_width = max(len(s) for s in state_labels) + 3 # +3 for arrow
@@ -127,45 +127,45 @@ def print_transition_matrix(seqdata: SequenceData, transition_rates: np.ndarray)
127
127
 
128
128
  def plot_transition_matrix(seqdata: SequenceData,
129
129
  weights="auto",
130
- title: Optional[str] = None,
130
+ title: str = "State Transition Rate Matrix",
131
131
  fontsize: int = 12,
132
132
  save_as: Optional[str] = None,
133
- dpi: int = 200) -> None:
133
+ dpi: int = 200,
134
+ format: str = "%.2f") -> None:
134
135
  """
135
136
  Plot state transition rate matrix as a heatmap.
136
137
 
137
138
  :param seqdata: SequenceData object containing sequence information
138
139
  :param weights: (np.ndarray or "auto") Weights for sequences. If "auto", uses seqdata.weights if available
139
140
  :param title: optional title for the plot
141
+ :param fontsize: base font size for labels
140
142
  :param save_as: optional file path to save the plot
141
143
  :param dpi: resolution of the saved plot
144
+ :param format: format string for annotations (default "%.2f")
142
145
  """
146
+
143
147
  # Compute transition matrix with weights
144
148
  transition_matrix = compute_transition_matrix(seqdata, weights=weights)
145
149
  transition_matrix = np.array(transition_matrix)
146
150
 
147
- # Create upper triangle mask (show diagonal)
148
- mask = np.triu(np.ones(transition_matrix.shape, dtype=bool), k=1)
149
-
150
151
  # Set figure size
151
152
  plt.figure(figsize=(12, 10))
152
153
 
153
154
  # Use fresh color scheme
154
155
  cmap = sns.color_palette("light:#5A9", as_cmap=True)
155
156
 
156
- # Generate heatmap
157
+ # Generate heatmap using pre-formatted annotation strings
157
158
  ax = sns.heatmap(
158
159
  transition_matrix,
159
- mask=mask,
160
- annot=True,
161
- fmt=".2f",
160
+ fmt=format,
162
161
  cmap=cmap,
163
162
  xticklabels=seqdata.labels,
164
163
  yticklabels=seqdata.labels,
165
164
  linewidths=0.5,
166
165
  linecolor="gray",
167
166
  cbar_kws={"shrink": 0.8},
168
- square=True
167
+ square=True,
168
+ annot_kws={"fontsize": fontsize - 2}
169
169
  )
170
170
 
171
171
  # Show all the borderlines
@@ -175,7 +175,7 @@ def plot_transition_matrix(seqdata: SequenceData,
175
175
  # Adjust format
176
176
  if title:
177
177
  show_plot_title(plt.gca(), title, show=True, fontsize=fontsize+2, fontweight='bold', pad=20)
178
- # plt.title("State Transition Rate Matrix", fontsize=14, fontweight='bold', pad=20)
178
+
179
179
  plt.xlabel("State at t + 1", fontsize=fontsize, labelpad=10)
180
180
  plt.ylabel("State at t", fontsize=fontsize, labelpad=10)
181
181
 
@@ -186,5 +186,4 @@ def plot_transition_matrix(seqdata: SequenceData,
186
186
  # Adjust layout
187
187
  plt.tight_layout()
188
188
 
189
- save_and_show_results(save_as, dpi=200)
190
-
189
+ save_and_show_results(save_as, dpi=dpi)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sequenzo
3
- Version: 0.1.18
3
+ Version: 0.1.20
4
4
  Summary: A fast, scalable and intuitive Python package for social sequence analysis.
5
5
  Author-email: Yuqi Liang <yuqi.liang.1900@gmail.com>, Xinyi Li <1836724126@qq.com>, Jan Heinrich Ernst Meyerhoff-Liang <jan.meyerhoff1@gmail.com>
6
6
  License: BSD 3-Clause License
@@ -54,11 +54,15 @@ Requires-Dist: cython>=0.29.21
54
54
  Requires-Dist: scipy>=1.6.3
55
55
  Requires-Dist: scikit-learn>=0.24.2
56
56
  Requires-Dist: fastcluster>=1.2.6
57
+ Requires-Dist: rpy2>=3.5.12; python_version >= "3.12"
58
+ Requires-Dist: rpy2>=3.5.6; python_version == "3.11"
59
+ Requires-Dist: rpy2>=3.5.6; python_version == "3.10"
60
+ Requires-Dist: rpy2>=3.5.6; python_version == "3.9"
57
61
  Requires-Dist: joblib>=1.0.1
58
62
  Requires-Dist: docutils>=0.17
59
63
  Requires-Dist: tqdm<5.0.0,>=4.62.3
60
64
  Requires-Dist: missingno<0.6.0,>=0.5.2
61
- Requires-Dist: rpy2
65
+ Requires-Dist: cffi>=1.15.0
62
66
  Provides-Extra: dev
63
67
  Requires-Dist: pytest>=6.2.5; extra == "dev"
64
68
  Requires-Dist: flake8>=3.9.2; extra == "dev"
@@ -97,6 +101,11 @@ Sequenzo outperforms traditional R-based tools in social sequence analysis, deli
97
101
  >
98
102
  > 📖 Available in **English and Chinese**, our docs are written to be approachable, practical, and easy to follow.
99
103
 
104
+ ## ✨ Be part of the Sequenzo community
105
+ Join our Discord channel to iscuss ideas, get help, and hear about upcoming Sequenzo versions, tutorials, and workshops first.
106
+
107
+ ➡️ https://discord.gg/3bMDKRHW
108
+
100
109
  ## Target Users
101
110
 
102
111
  Sequenzo is designed for:
@@ -172,6 +181,50 @@ If you have some issues with the installation, it might because you have both Py
172
181
  pip3 install sequenzo
173
182
  ```
174
183
 
184
+ ### ⚠️ Having Installation or Import Issues?
185
+
186
+ **Error:** `ImportError: numpy.core.multiarray failed to import`
187
+
188
+ **Most likely cause:** NumPy version mismatch (you have NumPy 1.x, but need 2.x)
189
+
190
+ **Quick Fix** (copy-paste these commands):
191
+ ```bash
192
+ # Check your NumPy version first
193
+ python -c "import numpy; print(f'NumPy: {numpy.__version__}')"
194
+
195
+ # If you see 1.x.x, upgrade to 2.x:
196
+ pip install --upgrade "numpy>=2.0.0"
197
+ pip uninstall sequenzo -y
198
+ pip install --no-cache-dir sequenzo
199
+ ```
200
+
201
+ 📖 **Still having issues?**
202
+ 1. Run our diagnostic tool to identify the problem:
203
+ ```bash
204
+ curl -O https://raw.githubusercontent.com/Liang-Team/Sequenzo/main/diagnose.py
205
+ python diagnose.py
206
+ ```
207
+ 2. See our detailed guides:
208
+ - **[QUICK_FIX.md](QUICK_FIX.md)** - Simple step-by-step solutions
209
+ - **[TROUBLESHOOTING.md](TROUBLESHOOTING.md)** - Comprehensive troubleshooting
210
+ - **[docs/WHY_IMPORT_FAILS.md](docs/WHY_IMPORT_FAILS.md)** - Technical explanation
211
+
212
+ ### Optional R Integration
213
+
214
+ Sequenzo now checks the system environment variables before running ward.D hierarchical clustering.
215
+
216
+ If R is missing, a relevant prompt will be displayed along with specific installation instructions. If `fastcluster` is missing, Sequenzo will automatically download `fastcluster`.
217
+
218
+ Before automatically downloading `fastcluster`, Sequenzo checks whether R is available; if R is not installed, sequenzo will not automatically download fastcluster.
219
+
220
+ Sequenzo supports advanced Ward clustering methods that require R integration. If you need to use the `ward_d` clustering method, install with R support:
221
+
222
+ ```
223
+ pip install sequenzo[r]
224
+ ```
225
+
226
+ This will install the optional `rpy2` dependency, which provides Python-R interoperability. Note that R must also be installed on your system for `rpy2` to work.
227
+
175
228
  For more information about the latest stable release and required dependencies, please refer to [PyPI](https://pypi.org/project/sequenzo/).
176
229
 
177
230
  ## Documentation
@@ -209,7 +262,7 @@ Check out our [contribution guide]() for more details (work in progress).
209
262
  If you're contributing or debugging, use:
210
263
 
211
264
  ```bash
212
- pip install -r requirements-3.10.txt # Or matching your Python version
265
+ pip install -r requirements/requirements-3.10.txt # Or matching your Python version
213
266
  ```
214
267
 
215
268
  For standard installation, use:
@@ -222,23 +275,31 @@ pip install . # Uses pyproject.toml
222
275
 
223
276
  **Paper Authors**
224
277
  * [Yuqi Liang, University of Oxford](https://www.yuqi-liang.tech/)
225
- * [Xinyi Li, Heilongjiang University](https://github.com/Fantasy201)
278
+ * [Xinyi Li, Northeastern University](https://github.com/Fantasy201)
226
279
  * [Jan Heinrich Ernst Meyerhoff-Liang, Institute for New Economic Thinking Oxford](https://www.inet.ox.ac.uk/people/jan-meyerhoff-liang)
227
280
 
228
281
  **Package Contributors**
229
- * [Liangxingyun He, Stockholm School of Economics (Sweden)](https://www.linkedin.com/in/liangxingyun-he-6aa128304/)
230
- * [Yukun Ming, Universidad Carlos III de Madrid (Spain)](www.linkedin.com/in/yukun)
231
- * [Ziting Yang, Rochester Wniversity (US)](www.linkedin.com/in/ziting-yang-7b33832bb)
282
+
283
+ Coding contributors:
284
+ * [Sebastian Daza](https://sdaza.com/)
285
+ * [Cheng Deng](https://github.com/de-de-de-de-de)
286
+ * [Liangxingyun He, Stockholm School of Economics, Sweden](https://www.linkedin.com/in/liangxingyun-he-6aa128304/)
287
+
288
+ Documentation contributors:
289
+ * [Liangxingyun He, Stockholm School of Economics, Sweden](https://www.linkedin.com/in/liangxingyun-he-6aa128304/)
290
+ * [Yukun Ming, Universidad Carlos III de Madrid (Spain)](https://www.linkedin.com/in/yukun)
232
291
  * [Sizhu Qu, Northeastern University (US)](https://www.linkedin.com/in/sizhuq)
292
+ * [Ziting Yang, Rochester Wniversity (US)](https://www.linkedin.com/in/ziting-yang-7b33832bb)
293
+
294
+ Others
233
295
  * With special thanks to our initial testers (alphabetically ordered): [Joji Chia](https://sociology.illinois.edu/directory/profile/jbchia2), [Kass Gonzalez](https://www.linkedin.com/in/kass-gonzalez-72a778276/), [Sinyee Lu](https://sociology.illinois.edu/directory/profile/qianyil4), [Sohee Shin](https://sociology.illinois.edu/directory/profile/sohees2)
234
296
  * Website and related technical support: [Mactavish](https://github.com/mactavishz)
235
- * PAM clustering algorithm implementation: Cheng Deng
236
297
  * Sequence data sources compilation - History: Jingrui Chen
237
298
  * Visual design consultant: Changyu Yi
238
299
 
239
300
  **Acknowledgements**
240
301
 
241
- * Methodological advisor in sequence analysis: [Professor Tim Liao, University of Illinois Urbana-Champaign](https://sociology.illinois.edu/directory/profile/tfliao)
242
- * Yuqi's PhD advisor: [Professor Ridhi Kashyap, University of Oxford](https://www.nuffield.ox.ac.uk/people/profiles/ridhi-kashyap/)
302
+ * Methodological advisor in sequence analysis: [Professor Tim Liao (University of Illinois Urbana-Champaign)](https://sociology.illinois.edu/directory/profile/tfliao)
303
+ * Yuqi's PhD advisor [Professor Ridhi Kashyap (University of Oxford)](https://www.nuffield.ox.ac.uk/people/profiles/ridhi-kashyap/), and mentor [Charles Rahal (University of Oxford)](https://crahal.com/)
243
304
  * Yuqi's original programming mentor: [JiangHuShiNian](https://github.com/jianghushinian)
244
305