Starlitnightly / omicverse

A python library for multi omics included bulk, single cell and spatial RNA-seq analysis.
https://starlitnightly.github.io/omicverse/
GNU General Public License v3.0
277 stars 32 forks source link

Import error #12

Closed hywang01 closed 11 months ago

hywang01 commented 12 months ago

Hi there, congrats and thanks for this excellent work! I am stuck with the installation.

When I imported the omicverse package, the error was shown as:

`--------------------------------------------------------------------------- ImportError Traceback (most recent call last) Input In [1], in <cell line: 1>() ----> 1 import omicverse as ov 2 ov.utils.ov_plot_set()

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/omicverse/init.py:11, in 8 from pkg_resources import get_distribution 9 version = lambda name: get_distribution(name).version ---> 11 from . import bulk,single,mofapy2,utils,bulk2single,pp 13 name = "omicverse" 14 version = version(name)

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/omicverse/bulk/init.py:13, in 11 from ._chm13 import get_chm13_gene,find_chm13_gene 12 from ._Deseq2 import pyDEG,deseq2_normalize,estimateSizeFactors,estimateDispersions,Matrix_ID_mapping,data_drop_duplicates_index ---> 13 from ._tcga import pyTCGA

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/omicverse/bulk/_tcga.py:5, in 3 import anndata 4 import numpy as np ----> 5 from lifelines import KaplanMeierFitter 6 from lifelines.statistics import logrank_test 7 import pandas as pd

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/lifelines/init.py:4, in 1 # -- coding: utf-8 -- 2 # pylint: skip-file ----> 4 from lifelines.fitters.weibull_fitter import WeibullFitter 5 from lifelines.fitters.exponential_fitter import ExponentialFitter 6 from lifelines.fitters.nelson_aalen_fitter import NelsonAalenFitter

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/lifelines/fitters/init.py:26, in 22 from scipy import stats 24 import pandas as pd ---> 26 from lifelines.plotting import _plot_estimate, set_kwargs_drawstyle 27 from lifelines.utils.printer import Printer 28 from lifelines import exceptions

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/lifelines/plotting.py:10, in 7 import pandas as pd 8 import numpy as np ---> 10 from lifelines.utils import coalesce, CensoringType, _group_event_table_by_intervals 13 all = [ 14 "add_at_risk_counts", 15 "plot_lifetimes", (...) 20 "loglogs_plot", 21 ] 24 def _iloc(x, i):

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/lifelines/utils/init.py:20, in 16 from scipy import stats 18 import pandas as pd ---> 20 import formulaic 22 from lifelines.utils.concordance import concordance_index 23 from lifelines.exceptions import ConvergenceWarning, ApproximationWarning, ConvergenceError

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/init.py:2, in 1 from .formula import Formula, FormulaSpec ----> 2 from .materializers import FactorValues 3 from .model_matrix import ModelMatrix, ModelMatrices 4 from .model_spec import ModelSpec, ModelSpecs

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/materializers/init.py:1, in ----> 1 from .arrow import ArrowMaterializer 2 from .base import FormulaMaterializer 3 from .pandas import PandasMaterializer

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/materializers/arrow.py:9, in 5 import pandas 6 from interface_meta import override ----> 9 from .pandas import PandasMaterializer 11 if TYPE_CHECKING: # pragma: no cover 12 import pyarrow

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/materializers/pandas.py:11, in 9 import scipy.sparse as spsparse 10 from interface_meta import override ---> 11 from formulaic.utils.cast import as_columns 13 from .base import FormulaMaterializer 14 from .types import NAAction

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/utils/cast.py:8, in 5 import pandas 6 import scipy.sparse ----> 8 from formulaic.materializers.types.factor_values import FactorValues 11 def propagate_metadata(func: Callable) -> Callable: 12 @wraps(func) 13 def wrapper(data, *args, **kwargs): # type: ignore[no-untyped-def]

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/materializers/types/init.py:2, in 1 from .enums import ClusterBy, NAAction ----> 2 from .evaluated_factor import EvaluatedFactor 3 from .factor_values import FactorValues 4 from .scoped_factor import ScopedFactor

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/materializers/types/evaluated_factor.py:9, in 6 from formulaic.parser.types import Factor 7 from formulaic.utils.variables import Variable ----> 9 from .factor_values import FactorValues, FactorValuesMetadata 12 @dataclass 13 class EvaluatedFactor: 14 """ 15 A container for the evaluated state of a Factor object in a given context. 16 (...) 25 drawn. 26 """

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/materializers/types/factor_values.py:22, in 19 import wrapt 21 from formulaic.parser.types import Factor ---> 22 from formulaic.utils.sentinels import MISSING, _MissingType 24 if TYPE_CHECKING: # pragma: no cover 25 from formulaic.model_spec import ModelSpec

File ~/miniconda3/envs/mm/lib/python3.8/site-packages/formulaic/utils/sentinels.py:4, in 1 from future import annotations 3 from typing import Dict ----> 4 from typing_extensions import Self 7 class _MissingType: 8 instance = None

ImportError: cannot import name 'Self' from 'typing_extensions'`

I wonder how I can import it.

Best,