Skip to main content

Pipeline inline inspection data as CSV file.

Project description

PipelineCsv library

GitHub Workflow Status GitHub Workflow Status Codacy Badge Codacy Badge

In Russian

The free, open source PipelineCsv library is designed to work with the results of analysis of in-line flaw detection data in the form of a CSV file.

The library provides a set of high-level operations with CSV file.

Data can be

  • mirrored
  • glued together from several CSV files
  • stretched/compressed along the distance according to a given set of intermediate points
  • interpreted as an iterable sequence of pipes with geodata
  • get statistics about objects in a CSV file
  • calculate the degree of danger of defects using various methods

Installation

pip install pipeline-csv

Usage

It is necessary to define the sets of defects and markers used in your project. To do this, you need to define your class for CSV row by deriving it from the pipeline_csv.csvfile.row.Row class and override two methods of this class: defekts_dict and lineobj_dict.

from pipeline_csv.csvfile.row import Row

class TypeMarker:
    VALVE = 0
    CASE_START = 1
    CASE_END = 2

class TypeDefekt:
    CORROZ = 0
    DENT = 1
    FACTORY = 2

class MyRow(Row):

    @staticmethod
    def defekts_dict():
        return {
          TypeDefekt.CORROZ: "Corrosion",
          TypeDefekt.DENT: "Dent",
          TypeDefekt.FACTORY: "Manufacturing defect",
        }

    @staticmethod
    def lineobj_dict():
        return {
          TypeMarker.VALVE: "Valve",
          TypeMarker.CASE_START: "Casing start",
          TypeMarker.CASE_END: "Casing end",
        }

For the data mirroring operation, you need to override the markers_reverse method, which returns a dictionary that specifies the rules for replacing when mirroring.

class MyRow(Row):

    @staticmethod
    def markers_reverse():
        return {
          TypeMarker.CASE_START: TypeMarker.CASE_END,
          TypeMarker.CASE_END: TypeMarker.CASE_START,
        }

Further, the MyRow class can be used in operations with data of CSV files.

Development

git clone git@github.com:vb64/pipeline.csv.git
cd pipeline.csv
make setup PYTHON_BIN=/path/to/python3
make tests

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pipeline_csv-1.25.tar.gz (32.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pipeline_csv-1.25-py3-none-any.whl (39.2 kB view details)

Uploaded Python 3

File details

Details for the file pipeline_csv-1.25.tar.gz.

File metadata

  • Download URL: pipeline_csv-1.25.tar.gz
  • Upload date:
  • Size: 32.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pipeline_csv-1.25.tar.gz
Algorithm Hash digest
SHA256 48c2964e38b86bb5233534e50fbe1be56a8900bb0be388831a30adba331d7744
MD5 c6a0731ad3008cff47e1beff79529cc2
BLAKE2b-256 85cbcace0732b0371300f4f830dbfb4dc92917c7856111d992ede31133be6c30

See more details on using hashes here.

File details

Details for the file pipeline_csv-1.25-py3-none-any.whl.

File metadata

  • Download URL: pipeline_csv-1.25-py3-none-any.whl
  • Upload date:
  • Size: 39.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for pipeline_csv-1.25-py3-none-any.whl
Algorithm Hash digest
SHA256 1ba45cc374cf482521ec0277d1f97c6b0a5dc85a2063f819d760f317bca81f3f
MD5 f37b31fa44f9ec066c166937c013f858
BLAKE2b-256 ec1dea9d2a320ae0d8cff48763ee4be0543d561684a3ea7b19074be4c81a664e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page