Comments (10)
Yeah, I'm thinking something like pytometry. That work is really great and lightweight, and the scanpy/scverse workflow is fantastic.
I see three areas I would like to work on in my spare time:
- A Document-Object model for mapping AnnData objects to a NoSQL database like MongoDB to make life easier working in a cloud environment and working on multiple devices
- A standalone gating application that interfaces with AnnData objects and the above MongoDB approach - I want this to be really lightweight and just focus on manual/semi-auto/auto gating
- I would like to update CytoCluster to work with the scverse ecosystem
You'll notice from my GitHub profile that after CytoPy I slowly started extracting elements into other packages - CytoCluster, CytoTools, CytoPlots
CytoPy's biggest issue is it was too ambitious and was trying to do everything. I hope CytoPy inspires some innovation in this space but ultimately, it crumbles under its own weight.
Unfortunately, I've not been able to continue an academic career that would afford me the luxury to work on these ideas full-time, but I'm hoping over the next year I will find some time to flush this all out.
If you're working in this space its worth being aware that the world is moving fast. Generative AI is probably going to revolutionise how we analyse single cell data e.g. scGPT, FlowFormer and scyan.
from cytopy.
A Document-Object model for mapping AnnData objects to a NoSQL database like MongoDB to make life easier working in a cloud environment and working on multiple devices
You might also be interested in the CZI-backed TileDB-SOMA project which implements TileDB as a backend for AnnData. TileDB is nice because it allows to efficiently slice matrices on the DB side.
I would like to update CytoCluster to work with the scverse ecosystem
that sounds fantastic! Make sure to chat with @mbuttner for integration with pytometry and join the scverse zulip chat for more general scverse-related discussion :)
from cytopy.
Glad to be put in contact with you @mbuttner, I think we spoke on Twitter before, but I never got around to following up. Great work with pytometry! I'm jealous of the name, I wish I had thought of that.
I can save you a job and I would say pytometry is the right direction. Working in the scverse is the way forward. At a high level, I think the following are missing from scverse that are needed specifically for cytometry data analysis:
- Cytometry specific pre-processing steps like compensation and gating; there is an opportunity to extract what is in CytoPy, FlowLearn, OpenCyto etc into a standalone application that inserts annotations into an AnnData obj to achieve this
- Cytometry-specific clustering algorithms (especially FlowSOM); CytoCluster achieves this and provides an ensemble clustering algorithm but the code is very academic and needs adapting to use AnnData objects
I welcome all efforts and collaborations in this space.
from cytopy.
Hi, I appear to have a similar issue:
when trying to install cytopy, I get the following error:
ERROR: Cannot install cytopy==2.0 and cytopy==2.0.1 because these package versions have conflicting dependencies.
The conflict is caused by:
cytopy 2.0.1 depends on KDEpy==1.0.10
cytopy 2.0 depends on KDEpy==1.0.10
I then tried to to install KDEpy version 1.0.10 directly, but got the following error:
pip install KDEpy==1.0.10
ERROR: Could not find a version that satisfies the requirement KDEpy==1.0.10 (from versions: 0.1, 0.2, 0.3, 0.4, 0.5, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.5.6, 0.6, 0.6.9, 0.6.10, 0.6.11, 1.0.2, 1.1.3)
ERROR: No matching distribution found for KDEpy==1.0.10
I am using an apple silicone macbook pro
from cytopy.
Hi both,
Sorry you've hit these errors. CytoPy is no longer funded, and therefore I can only contribute in my spare time to fix issues.
It looks like KDEpy 1.0.10 has been pulled from pypi. In the meantime (until I've pushed a fix) you can edit the pyproject.toml file (https://github.com/burtonrj/CytoPy/blob/master/pyproject.toml) and replace KDEpy = "1.0.10"
on line 20 with KDEpy = "1.0.2"
Hopefully, this solves the issues for you.
In the next year CytoPy will likely be depreciated as I move to replace it with a more robust library that is compatible with the scverse.
Thanks,
Ross
from cytopy.
In the next year CytoPy will likely be depreciated as I move to replace it with a more robust library that is compatible with the scverse.
Are you talking about pytometry or something entirely different? I just started working with pytometry and it nicely bridges flow cytometry analysis with the scanpy/scverse workflow, but it would definitlely benefit from some of the functionality (e.g. manual gating, more clustering algorithms) that are already implemented in CytoPy.
from cytopy.
thanks @grst for connecting us. Happy to join forces. I have a comparison of CytoPy and pytometry on my list, but did not find the time to do it, yet.
from cytopy.
TileDB is new to me! Looks great and probably saves me a job! Thank you for sharing.
from cytopy.
Hi @burtonrj
happy to finally start the discussion and thanks for the flowers 💐
I'll PM you to take the discussion elsewhere. On a different note for @grst, we could discuss to integrate pytometry into the scverse compendium and extend to the realm of flow cytometry data.
from cytopy.
Please submit it to the list of ecosystem packages :)
We are currently reluctant to add more "core" packages because of the additional maintenance burden. I'm not saying this is impossible, but it requires more discussion with the entire scverse core team. Another option is to put it in the scverse github org, but as a "community-maintained" package, but we are also still figuring out guidelines for that.
from cytopy.
Related Issues (20)
- AssertionError: Invalid sample: <sample name> not associated with this experiment HOT 11
- Pip backtracking - pip is looking at multiple versions of... HOT 5
- Issue at installation stage HOT 9
- Update docker documentation HOT 2
- Problem with the feature selection method HOT 4
- Error in plotting gates if not all children are labelled HOT 1
- Edit gate not modifying Population HOT 2
- Error in creating ref sample HOT 3
- Improve EllipseGate
- Improve PolygonGate with alphashape
- FlowUtils update HOT 1
- Performance problems of multi process implementation of a block of code HOT 3
- Unable to install with Python 3.8.5 HOT 3
- Issues with saving new project to local database HOT 7
- Unable to install because of KDEpy version conflict HOT 14
- Saving clusters takes forever HOT 1
- Questions about fcs files read and write
- Dataset link is broken
- Numba issue in the CytoPy HOT 1
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 cytopy.