pandaspgs


Namepandaspgs JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/tianzelab/pandaspgs
SummaryA Python package for easy retrieval of PGS Catalog data
upload_time2024-06-14 02:40:47
maintainerNone
docs_urlNone
authorCao Tianze
requires_python>=3.11
licenseMIT
keywords pgs genomics snp bioinformatics pandas
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pandasPGS: a Python package for easy retrieval of PGS Catalog data

## Installation
`pip install pandaspgs`
## Documentation
See [pandasPGS Documentation](https://tianzelab.github.io/pandaspgs/)
## Licensing information
### Source code
MIT License
### Data from PGS Catalog
The PGS Catalog and all its contents are available under the general terms of use for EMBL-EBI services
## Example 1. Investigating trends in diabetes-related polygenic risk scores
### Step 1
```Python
from pandaspgs import *
from plotnine import*
```
### Step 2
```Python
traits = get_traits(term='diabetes')
traits
# Trait is running in fat mode. It has 6 DataFrames with hierarchical dependencies.
# traits: 6 rows
# |
#  -associated_pgs_ids: 186 rows
# |
#  -child_associated_pgs_ids:265 rows
# |
#  -trait_categories: 13 rows
# |
#  -trait_mapped_terms: 57 rows
# |
#  -trait_synonyms: 66 rows
```
### Step 3
```Python
traits.traits
#         id                  label                                description                                          url                     
# 0    EFO_0000400            diabetes mellitus  A metabolic disorder characterized by abnormal...          http://www.ebi.ac.uk/efo/EFO_0000400
# 1    EFO_0006842  diabetes mellitus biomarker                                                             http://www.ebi.ac.uk/efo/EFO_0006842
# 2    EFO_0003770         diabetic retinopathy  A chronic, pathological complication associate...          http://www.ebi.ac.uk/efo/EFO_0003770
# 3    EFO_0004593         gestational diabetes  Carbohydrate intolerance first diagnosed durin...          http://www.ebi.ac.uk/efo/EFO_0004593
# 4  MONDO_0005147     type 1 diabetes mellitus  A chronic condition characterized by minimal o...  http://purl.obolibrary.org/obo/MONDO_0005147
# 5  MONDO_0005148     type 2 diabetes mellitus  A type of diabetes mellitus that is characteri...  http://purl.obolibrary.org/obo/MONDO_0005148
```
### Step 4
```Python
score1 = get_scores(trait_id='EFO_0000400')
score2 = get_scores(trait_id='EFO_0006842')
score3 = get_scores(trait_id='EFO_0003770')
score4 = get_scores(trait_id='EFO_0004593')
score5 = get_scores(trait_id='MONDO_0005147')
score6 = get_scores(trait_id='MONDO_0005148')
diabetes_score = score1+score2+score3+score4+score5+score6
diabetes_score
# Score is running in fat mode. It has 7 DataFrames with hierarchical dependencies.
# scores:186 rows
# |
#  -samples_variants: 253 rows
#   |
#    -samples_variants_cohorts: 386 rows
# |
#  -samples_training: 107 rows
#   |
#    -samples_training_cohorts: 97 rows
# |
#  -trait_efo: 195 rows
# |
#  -ancestry_distribution: 447 rows
```
### Step 5
```Python
pic=ggplot(diabetes_score.trait_efo)+geom_bar(aes(x='label'))+coord_flip()
pic.save(filename='Additional file 1.png',dpi=300)
```
## Example 2: Investigating polygenic risk scores for gestational diabetes
### Step 1
```Python
from pandaspgs import *
```
### Step 2
```Python
traits = get_traits(term='gestational diabetes')
traits.traits
#        id              label                            description                                      url                 
# 0  EFO_0004593  gestational diabetes  Carbohydrate intolerance first diagnosed durin...  http://www.ebi.ac.uk/efo/EFO_0004593
traits.traits['id'][0]
# 'EFO_0004593'
traits.traits['description'][0]
# 'Carbohydrate intolerance first diagnosed during pregnancy. [NCIT: P378]'
```
### Step 3
```Python
gd_pgs = get_scores(trait_id='EFO_0004593')
gd_pgs.scores
#       id        name                    ftp_scoring_file                   matches_publication                   trait_reported                  trait_additional            method_name            method_params  variants_number  variants_interactions variants_genomebuild weight_type date_release                      license                       publication.id                 publication.title                        publication.doi        publication.PMID  publication.journal  publication.firstauthor publication.date_publication   ftp_harmonized_scoring_files.GRCh38.positions      ftp_harmonized_scoring_files.GRCh37.positions   
# 0  PGS002256  GRS4_GDM  https://ftp.ebi.ac.uk/pub/databases/spot/pgs/s...         True          Gestational diabetes mellitus in early pregnancy       None        Genome-wide significant variants    p < 0.05           4                   0                    NR             log(OR)   2022-02-16   PGS obtained from the Catalog should be cited ...    PGP000282    An early prediction model for gestational diab...  10.1186/s13098-022-00788-y      35073990      Diabetol Metab Syndr           Wu Q                   2022-01-24           https://ftp.ebi.ac.uk/pub/databases/spot/pgs/s...  https://ftp.ebi.ac.uk/pub/databases/spot/pgs/s...
gd_pgs.scores['id'][0]
# PGS002256
gd_pgs.scores['name'][0]
# 'GRS4_GDM'
gd_pgs.scores['matches_publication'][0]
# True
gd_pgs.scores['trait_reported'][0]
# 'Gestational diabetes mellitus in early pregnancy'
gd_pgs.scores['variants_number'][0]
# 4
```
### Step 4
```Python
gd_pgs.scores['publication.id'][0]
# PGP000282
gd_pgs.scores['publication.PMID'][0]
# 35073990
gd_pgs.scores['publication.date_publication'][0]
# '2022-01-24'
gd_pgs.scores['publication.journal'][0]
# 'Diabetol Metab Syndr'
gd_pgs.scores['publication.title'][0]
# 'An early prediction model for gestational diabetes mellitus based on genetic variants and clinical characteristics in China.'
open_in_pubmed(gd_pgs.scores['publication.PMID'][0])
```
### Step 5
```Python
gd_pgs.samples_variants
#    sample_number  sample_cases  sample_controls  sample_percent_male sample_age phenotyping_free followup_time ancestry_broad ancestry_free ancestry_country ancestry_additional source_GWAS_catalog source_PMID source_DOI cohorts_additional  id  score_id   followup_time.estimate_type  followup_time.estimate  followup_time.interval.type  followup_time.interval.lower  followup_time.interval.upper  followup_time.variability_type  followup_time.variability  followup_time.unit
# 0       671            332            339                0.0            None          None            None       East Asian       Chinese         China              None                None            None       None           None          0  PGS002256             NaN                        NaN                       NaN                           NaN                           NaN                            NaN                          NaN                     NaN              
gd_pgs.samples_variants['sample_number'][0]
# 671
gd_pgs.samples_variants['ancestry_broad'][0]
# 'East Asian'
```
### Step 6
```Python
gd_file = read_scoring_file('PGS002256')
gd_file
#       rsID    effect_allele other_allele  effect_weight hm_source   hm_rsID    hm_chr   hm_pos   hm_inferOtherAllele
# 0  rs10830963        G            C           1.327       ENSEMBL  rs10830963    11    92708710         NaN         
# 1   rs1436953        T            C           1.292       ENSEMBL   rs1436953    15    62414014         NaN         
# 2   rs7172432        G            A           1.283       ENSEMBL   rs7172432    15    62396389         NaN         
# 3  rs16955379        C            T           1.220       ENSEMBL  rs16955379    16    81489373         NaN 
```
### Step 7
```Python
snp1=gd_file[['rsID','effect_allele','other_allele','effect_weight']].loc[0]
snp1
# rsID             rs10830963
# effect_allele             G
# other_allele              C
# effect_weight         1.327
# Name: 0, dtype: object  
from pandaspgs.file_operation import genotype_weighted_score
genotype_weighted_score(snp1)
#   rs10830963_genotype  rs10830963_weighted_score
# 0          G/G                   2.654          
# 1          G/C                   1.327          
# 2          C/C                   0.000 
```
### Step 8
```Python
df_list = [] 
for x in range(len(gd_file)):
    snp_x = gd_file[['rsID','effect_allele','other_allele','effect_weight']].loc[x]
    df_x = genotype_weighted_score(snp_x)
    df_x['key'] = 1
    df_list.append(df_x)
from functools import reduce
combination_df = reduce(lambda x, y: x.merge(y,on='key'), df_list)
del combination_df['key']
combination_df
#    rs10830963_genotype  rs10830963_weighted_score rs1436953_genotype  rs1436953_weighted_score rs7172432_genotype  rs7172432_weighted_score rs16955379_genotype  rs16955379_weighted_score
# 0           G/G                   2.654                   T/T                   2.584                  G/G                   2.566                   C/C                   2.44           
# 1           G/G                   2.654                   T/T                   2.584                  G/G                   2.566                   C/T                   1.22           
# 2           G/G                   2.654                   T/T                   2.584                  G/G                   2.566                   T/T                   0.00           
# 3           G/G                   2.654                   T/T                   2.584                  G/A                   1.283                   C/C                   2.44           
# 4           G/G                   2.654                   T/T                   2.584                  G/A                   1.283                   C/T                   1.22           
# ..                 ...                        ...                ...                       ...                ...                       ...                 ...                        ...
# 76          C/C                   0.000                   C/C                   0.000                  G/A                   1.283                   C/T                   1.22           
# 77          C/C                   0.000                   C/C                   0.000                  G/A                   1.283                   T/T                   0.00           
# 78          C/C                   0.000                   C/C                   0.000                  A/A                   0.000                   C/C                   2.44           
# 79          C/C                   0.000                   C/C                   0.000                  A/A                   0.000                   C/T                   1.22           
# 80          C/C                   0.000                   C/C                   0.000                  A/A                   0.000                   T/T                   0.00           
# [81 rows x 8 columns]
```
### Step 9
```Python
combination_df['genotypes']=combination_df['rs10830963_genotype']+"-"+combination_df['rs1436953_genotype']+"-"+combination_df['rs7172432_genotype']+"-"+combination_df['rs16955379_genotype']
combination_df['scores']= combination_df['rs10830963_weighted_score']+combination_df['rs1436953_weighted_score']+combination_df['rs7172432_weighted_score']+combination_df['rs16955379_weighted_score']
combination_df[['genotypes','scores']].sort_values(by='scores', ascending=False)
#       genotypes      scores
# 0   G/G-T/T-G/G-C/C  10.244
# 1   G/G-T/T-G/G-C/T   9.024
# 3   G/G-T/T-G/A-C/C   8.961
# 9   G/G-T/C-G/G-C/C   8.952
# 27  G/C-T/T-G/G-C/C   8.917
# ..              ...     ...
# 53  G/C-C/C-A/A-T/T   1.327
# 71  C/C-T/C-A/A-T/T   1.292
# 77  C/C-C/C-G/A-T/T   1.283
# 79  C/C-C/C-A/A-C/T   1.220
# 80  C/C-C/C-A/A-T/T   0.000
# 
# [81 rows x 2 columns]
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/tianzelab/pandaspgs",
    "name": "pandaspgs",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "pgs, genomics, snp, bioinformatics, pandas",
    "author": "Cao Tianze",
    "author_email": "hnrcao@qq.com",
    "download_url": "https://files.pythonhosted.org/packages/29/44/257dca731de8152a69e38d52da96e5f42786b6dac2e2db82a2827335d007/pandaspgs-0.1.0.tar.gz",
    "platform": null,
    "description": "# pandasPGS: a Python package for easy retrieval of PGS Catalog data\r\n\r\n## Installation\r\n`pip install pandaspgs`\r\n## Documentation\r\nSee [pandasPGS Documentation](https://tianzelab.github.io/pandaspgs/)\r\n## Licensing information\r\n### Source code\r\nMIT License\r\n### Data from PGS Catalog\r\nThe PGS Catalog and all its contents are available under the general terms of use for EMBL-EBI services\r\n## Example 1. Investigating trends in diabetes-related polygenic risk scores\r\n### Step 1\r\n```Python\r\nfrom pandaspgs import *\r\nfrom plotnine import*\r\n```\r\n### Step 2\r\n```Python\r\ntraits = get_traits(term='diabetes')\r\ntraits\r\n# Trait is running in fat mode. It has 6 DataFrames with hierarchical dependencies.\r\n# traits: 6 rows\r\n# |\r\n#  -associated_pgs_ids: 186 rows\r\n# |\r\n#  -child_associated_pgs_ids:265 rows\r\n# |\r\n#  -trait_categories: 13 rows\r\n# |\r\n#  -trait_mapped_terms: 57 rows\r\n# |\r\n#  -trait_synonyms: 66 rows\r\n```\r\n### Step 3\r\n```Python\r\ntraits.traits\r\n#         id                  label                                description                                          url                     \r\n# 0    EFO_0000400            diabetes mellitus  A metabolic disorder characterized by abnormal...          http://www.ebi.ac.uk/efo/EFO_0000400\r\n# 1    EFO_0006842  diabetes mellitus biomarker                                                             http://www.ebi.ac.uk/efo/EFO_0006842\r\n# 2    EFO_0003770         diabetic retinopathy  A chronic, pathological complication associate...          http://www.ebi.ac.uk/efo/EFO_0003770\r\n# 3    EFO_0004593         gestational diabetes  Carbohydrate intolerance first diagnosed durin...          http://www.ebi.ac.uk/efo/EFO_0004593\r\n# 4  MONDO_0005147     type 1 diabetes mellitus  A chronic condition characterized by minimal o...  http://purl.obolibrary.org/obo/MONDO_0005147\r\n# 5  MONDO_0005148     type 2 diabetes mellitus  A type of diabetes mellitus that is characteri...  http://purl.obolibrary.org/obo/MONDO_0005148\r\n```\r\n### Step 4\r\n```Python\r\nscore1 = get_scores(trait_id='EFO_0000400')\r\nscore2 = get_scores(trait_id='EFO_0006842')\r\nscore3 = get_scores(trait_id='EFO_0003770')\r\nscore4 = get_scores(trait_id='EFO_0004593')\r\nscore5 = get_scores(trait_id='MONDO_0005147')\r\nscore6 = get_scores(trait_id='MONDO_0005148')\r\ndiabetes_score = score1+score2+score3+score4+score5+score6\r\ndiabetes_score\r\n# Score is running in fat mode. It has 7 DataFrames with hierarchical dependencies.\r\n# scores:186 rows\r\n# |\r\n#  -samples_variants: 253 rows\r\n#   |\r\n#    -samples_variants_cohorts: 386 rows\r\n# |\r\n#  -samples_training: 107 rows\r\n#   |\r\n#    -samples_training_cohorts: 97 rows\r\n# |\r\n#  -trait_efo: 195 rows\r\n# |\r\n#  -ancestry_distribution: 447 rows\r\n```\r\n### Step 5\r\n```Python\r\npic=ggplot(diabetes_score.trait_efo)+geom_bar(aes(x='label'))+coord_flip()\r\npic.save(filename='Additional file 1.png',dpi=300)\r\n```\r\n## Example 2: Investigating polygenic risk scores for gestational diabetes\r\n### Step 1\r\n```Python\r\nfrom pandaspgs import *\r\n```\r\n### Step 2\r\n```Python\r\ntraits = get_traits(term='gestational diabetes')\r\ntraits.traits\r\n#        id              label                            description                                      url                 \r\n# 0  EFO_0004593  gestational diabetes  Carbohydrate intolerance first diagnosed durin...  http://www.ebi.ac.uk/efo/EFO_0004593\r\ntraits.traits['id'][0]\r\n# 'EFO_0004593'\r\ntraits.traits['description'][0]\r\n# 'Carbohydrate intolerance first diagnosed during pregnancy. [NCIT: P378]'\r\n```\r\n### Step 3\r\n```Python\r\ngd_pgs = get_scores(trait_id='EFO_0004593')\r\ngd_pgs.scores\r\n#       id        name                    ftp_scoring_file                   matches_publication                   trait_reported                  trait_additional            method_name            method_params  variants_number  variants_interactions variants_genomebuild weight_type date_release                      license                       publication.id                 publication.title                        publication.doi        publication.PMID  publication.journal  publication.firstauthor publication.date_publication   ftp_harmonized_scoring_files.GRCh38.positions      ftp_harmonized_scoring_files.GRCh37.positions   \r\n# 0  PGS002256  GRS4_GDM  https://ftp.ebi.ac.uk/pub/databases/spot/pgs/s...         True          Gestational diabetes mellitus in early pregnancy       None        Genome-wide significant variants    p < 0.05           4                   0                    NR             log(OR)   2022-02-16   PGS obtained from the Catalog should be cited ...    PGP000282    An early prediction model for gestational diab...  10.1186/s13098-022-00788-y      35073990      Diabetol Metab Syndr           Wu Q                   2022-01-24           https://ftp.ebi.ac.uk/pub/databases/spot/pgs/s...  https://ftp.ebi.ac.uk/pub/databases/spot/pgs/s...\r\ngd_pgs.scores['id'][0]\r\n# PGS002256\r\ngd_pgs.scores['name'][0]\r\n# 'GRS4_GDM'\r\ngd_pgs.scores['matches_publication'][0]\r\n# True\r\ngd_pgs.scores['trait_reported'][0]\r\n# 'Gestational diabetes mellitus in early pregnancy'\r\ngd_pgs.scores['variants_number'][0]\r\n# 4\r\n```\r\n### Step 4\r\n```Python\r\ngd_pgs.scores['publication.id'][0]\r\n# PGP000282\r\ngd_pgs.scores['publication.PMID'][0]\r\n# 35073990\r\ngd_pgs.scores['publication.date_publication'][0]\r\n# '2022-01-24'\r\ngd_pgs.scores['publication.journal'][0]\r\n# 'Diabetol Metab Syndr'\r\ngd_pgs.scores['publication.title'][0]\r\n# 'An early prediction model for gestational diabetes mellitus based on genetic variants and clinical characteristics in China.'\r\nopen_in_pubmed(gd_pgs.scores['publication.PMID'][0])\r\n```\r\n### Step 5\r\n```Python\r\ngd_pgs.samples_variants\r\n#    sample_number  sample_cases  sample_controls  sample_percent_male sample_age phenotyping_free followup_time ancestry_broad ancestry_free ancestry_country ancestry_additional source_GWAS_catalog source_PMID source_DOI cohorts_additional  id  score_id   followup_time.estimate_type  followup_time.estimate  followup_time.interval.type  followup_time.interval.lower  followup_time.interval.upper  followup_time.variability_type  followup_time.variability  followup_time.unit\r\n# 0       671            332            339                0.0            None          None            None       East Asian       Chinese         China              None                None            None       None           None          0  PGS002256             NaN                        NaN                       NaN                           NaN                           NaN                            NaN                          NaN                     NaN              \r\ngd_pgs.samples_variants['sample_number'][0]\r\n# 671\r\ngd_pgs.samples_variants['ancestry_broad'][0]\r\n# 'East Asian'\r\n```\r\n### Step 6\r\n```Python\r\ngd_file = read_scoring_file('PGS002256')\r\ngd_file\r\n#       rsID    effect_allele other_allele  effect_weight hm_source   hm_rsID    hm_chr   hm_pos   hm_inferOtherAllele\r\n# 0  rs10830963        G            C           1.327       ENSEMBL  rs10830963    11    92708710         NaN         \r\n# 1   rs1436953        T            C           1.292       ENSEMBL   rs1436953    15    62414014         NaN         \r\n# 2   rs7172432        G            A           1.283       ENSEMBL   rs7172432    15    62396389         NaN         \r\n# 3  rs16955379        C            T           1.220       ENSEMBL  rs16955379    16    81489373         NaN \r\n```\r\n### Step 7\r\n```Python\r\nsnp1=gd_file[['rsID','effect_allele','other_allele','effect_weight']].loc[0]\r\nsnp1\r\n# rsID             rs10830963\r\n# effect_allele             G\r\n# other_allele              C\r\n# effect_weight         1.327\r\n# Name: 0, dtype: object  \r\nfrom pandaspgs.file_operation import genotype_weighted_score\r\ngenotype_weighted_score(snp1)\r\n#   rs10830963_genotype  rs10830963_weighted_score\r\n# 0          G/G                   2.654          \r\n# 1          G/C                   1.327          \r\n# 2          C/C                   0.000 \r\n```\r\n### Step 8\r\n```Python\r\ndf_list = [] \r\nfor x in range(len(gd_file)):\r\n    snp_x = gd_file[['rsID','effect_allele','other_allele','effect_weight']].loc[x]\r\n    df_x = genotype_weighted_score(snp_x)\r\n    df_x['key'] = 1\r\n    df_list.append(df_x)\r\nfrom functools import reduce\r\ncombination_df = reduce(lambda x, y: x.merge(y,on='key'), df_list)\r\ndel combination_df['key']\r\ncombination_df\r\n#    rs10830963_genotype  rs10830963_weighted_score rs1436953_genotype  rs1436953_weighted_score rs7172432_genotype  rs7172432_weighted_score rs16955379_genotype  rs16955379_weighted_score\r\n# 0           G/G                   2.654                   T/T                   2.584                  G/G                   2.566                   C/C                   2.44           \r\n# 1           G/G                   2.654                   T/T                   2.584                  G/G                   2.566                   C/T                   1.22           \r\n# 2           G/G                   2.654                   T/T                   2.584                  G/G                   2.566                   T/T                   0.00           \r\n# 3           G/G                   2.654                   T/T                   2.584                  G/A                   1.283                   C/C                   2.44           \r\n# 4           G/G                   2.654                   T/T                   2.584                  G/A                   1.283                   C/T                   1.22           \r\n# ..                 ...                        ...                ...                       ...                ...                       ...                 ...                        ...\r\n# 76          C/C                   0.000                   C/C                   0.000                  G/A                   1.283                   C/T                   1.22           \r\n# 77          C/C                   0.000                   C/C                   0.000                  G/A                   1.283                   T/T                   0.00           \r\n# 78          C/C                   0.000                   C/C                   0.000                  A/A                   0.000                   C/C                   2.44           \r\n# 79          C/C                   0.000                   C/C                   0.000                  A/A                   0.000                   C/T                   1.22           \r\n# 80          C/C                   0.000                   C/C                   0.000                  A/A                   0.000                   T/T                   0.00           \r\n# [81 rows x 8 columns]\r\n```\r\n### Step 9\r\n```Python\r\ncombination_df['genotypes']=combination_df['rs10830963_genotype']+\"-\"+combination_df['rs1436953_genotype']+\"-\"+combination_df['rs7172432_genotype']+\"-\"+combination_df['rs16955379_genotype']\r\ncombination_df['scores']= combination_df['rs10830963_weighted_score']+combination_df['rs1436953_weighted_score']+combination_df['rs7172432_weighted_score']+combination_df['rs16955379_weighted_score']\r\ncombination_df[['genotypes','scores']].sort_values(by='scores', ascending=False)\r\n#       genotypes      scores\r\n# 0   G/G-T/T-G/G-C/C  10.244\r\n# 1   G/G-T/T-G/G-C/T   9.024\r\n# 3   G/G-T/T-G/A-C/C   8.961\r\n# 9   G/G-T/C-G/G-C/C   8.952\r\n# 27  G/C-T/T-G/G-C/C   8.917\r\n# ..              ...     ...\r\n# 53  G/C-C/C-A/A-T/T   1.327\r\n# 71  C/C-T/C-A/A-T/T   1.292\r\n# 77  C/C-C/C-G/A-T/T   1.283\r\n# 79  C/C-C/C-A/A-C/T   1.220\r\n# 80  C/C-C/C-A/A-T/T   0.000\r\n# \r\n# [81 rows x 2 columns]\r\n```\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Python package for easy retrieval of PGS Catalog data",
    "version": "0.1.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/tianzelab/pandaspgs/issues",
        "Homepage": "https://github.com/tianzelab/pandaspgs"
    },
    "split_keywords": [
        "pgs",
        " genomics",
        " snp",
        " bioinformatics",
        " pandas"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8119f1fe9945ffcef771d955ed3998107fe5f862c935e658d8418013b27639b4",
                "md5": "4acf2d75c5a120b191bdc92e8e7aa416",
                "sha256": "3133faa34f4d3fbceb6c69c92f5be36d0a2aacf2b42a35dcd440f5dfd96cdb2a"
            },
            "downloads": -1,
            "filename": "pandaspgs-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4acf2d75c5a120b191bdc92e8e7aa416",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 39917,
            "upload_time": "2024-06-14T02:40:45",
            "upload_time_iso_8601": "2024-06-14T02:40:45.563837Z",
            "url": "https://files.pythonhosted.org/packages/81/19/f1fe9945ffcef771d955ed3998107fe5f862c935e658d8418013b27639b4/pandaspgs-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2944257dca731de8152a69e38d52da96e5f42786b6dac2e2db82a2827335d007",
                "md5": "426223fab15eb6c7825aa582c59b7e78",
                "sha256": "bde8d2b35c30aefc0e966e5f996a1169784906c685a13b31f096dc1d6a8fd16b"
            },
            "downloads": -1,
            "filename": "pandaspgs-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "426223fab15eb6c7825aa582c59b7e78",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 29300,
            "upload_time": "2024-06-14T02:40:47",
            "upload_time_iso_8601": "2024-06-14T02:40:47.714784Z",
            "url": "https://files.pythonhosted.org/packages/29/44/257dca731de8152a69e38d52da96e5f42786b6dac2e2db82a2827335d007/pandaspgs-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-14 02:40:47",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "tianzelab",
    "github_project": "pandaspgs",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pandaspgs"
}
        
Elapsed time: 3.15888s