Comments (2)
Hi @SimonDMurray,
Currently, the CellPhoneDB accessible via LIANA will be CellPhoneDBv2, as while it's imported via OmniPath, the database in LIANA+ is versioned independently. If you wish to use CellPhoneDBv4 - you can directly obtain it via OmniPath's python (https://github.com/saezlab/omnipath) or R API and then just feed it to LIANA as a dataframe.
I plan to update it also in LIANA, but this also includes some infrastructural changes which we're currently working on (#9).
from liana-py.
Hi @SimonDMurray,
A bit delayed but I was checking the new CPDB resource and one can get it the following way:
import pandas as pd
import numpy as np
import requests
import io
# read csv from link
# https://github.com/ventolab/cellphonedb-data/blob/master/data/interaction_input.csv
resource = requests.get('https://raw.githubusercontent.com/ventolab/cellphonedb-data/master/data/interaction_input.csv').content
resource = io.StringIO(resource.decode('utf-8'))
resource = pd.read_csv(resource, sep=',')
# keep only PPIs
resource = resource[resource['is_ppi']][['interactors']]
# replace + with _
resource['interactors'] = resource['interactors'].apply(lambda x: x.replace('+', '_'))
# if interactors contains two '-' replace the first one with '&
resource['interactors'] = resource['interactors'].apply(lambda x: x.replace('-', '&', 1) if x.count('-') == 2 else x)
# split by - and expand
resource = resource['interactors'].str.split('-', expand=True)
# replace & with - in the first column
resource[0] = resource[0].apply(lambda x: x.replace('&', '-'))
resource.columns = ['ligand', 'receptor']
Then it's as simple as passing the resource
to the resource
parameter to any liana function you would like to use.
from liana-py.
Related Issues (20)
- By default do not convert views to `csr_matrix` when building `MistyData`. HOT 1
- AttributeError: module 'liana.method' has no attribute 'build_prior_network' HOT 4
- AttributeError: module 'corneto.methods.carnival' has no attribute 'select_mip_solver' HOT 11
- Help understanding causal network output HOT 1
- li.multi.df_to_lr function gave gene Value error HOT 4
- Additional metadata in results dataframe HOT 2
- ValueError: Observations annot. `var` must have as many rows as `X` has columns... HOT 3
- Add bumpversion + metadata
- External + GPU-enabled MISTy models
- Should we exclude CellTalkDB from curated resources list? HOT 4
- The mouse resource are missing important interactions that should be possible to convert HOT 4
- Trouble with liana: 'liana.resource' has no attribute 'explode_complexes' HOT 4
- Implement GPU to speed up the CCC caculation in process of rank_aggregate method (CellChat part)? HOT 1
- Error in function documentation / vignette HOT 2
- Difference on dotplot when running Steady-state Ligand-Receptor inference vignette from the Rank Aggregate section HOT 3
- Generate Union of Causal Net Predictions
- move LIANA+ plots to matplotlib and seaborn? [User Opinons Welcome]
- Getting an error in liana multi df_to_lr HOT 15
- Frequency Chord diagram and Heatmap in Python HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from liana-py.