Quickstart guide ===================== Installation ------------ This library requires Python 3.10+ and can be installed with pip: .. code:: shell pip install proffer Basic Usage ----------- After installation, you can run the ``proffer`` CLI tool: .. code:: shell proffer data/percolator.txt --format tsv You can also load results directly from any URI supported by `fsspec `_: .. code:: shell # HTTP(S) proffer https://github.com/seerbio/proffer/raw/refs/heads/main/data/percolator.txt --format tsv # S3 pip install proffer[s3] # ensure libraries for S3 support are installed proffer s3://bucket/key/results.parquet --format parquet Basic support is included for thresholding peptide identifications before inference: .. code:: shell proffer data/percolator.txt --format tsv --qvalue-threshold 0.01 By default output is written in JSON format to stdout. Alternatively, the ``-o`` flag can be used to write results to Parquet: .. code:: shell proffer data/percolator.txt --output proffer-results.parquet It is possible to configure the column names used, as well as the approach used to pick protein groups. To learn more about the available options you can run: .. code:: shell proffer --help Python usage ------------ To use Proffer in your Python code, call :py:func:`proffer.infer() ` with a Polars DataFrame: .. code:: python import proffer result_frame = proffer.infer(polars_frame) It is possible to configure the column names used, as well as the approach used to pick protein groups. To learn more about the available options see :py:func:`proffer.infer() ` or run: .. code:: shell python -c 'import proffer; help(proffer.infer)' Usage with Fulcrum Pipeline --------------------------- Utilities for working with Spark-based datasets can be found in :py:mod:`proffer.spark`. These use interfaces from `wheely-mammoth `_ (compatible with `Fulcrum Pipelineā„¢ `_) to efficiently read peptide and protein information and compute inference. For typical use cases, it will be easiest to employ a pre-built Fulcrum workflow that uses Proffer for inference, rather than call these utilities directly. By default, installing Proffer will not install Spark dependencies; to use Proffer in an environment where these are not already installed, run: .. code:: shell pip install 'proffer[spark]'