bulk-wgcna-analysis-with-omicverse
Assist Claude in running PyWGCNA through omicverse—preprocessing expression matrices, constructing co-expression modules, visualising eigengenes, and extracting hub genes.
Install
mkdir -p .claude/skills/bulk-wgcna-analysis-with-omicverse && curl -L -o skill.zip "https://mcp.directory/api/skills/download/8448" && unzip -o skill.zip -d .claude/skills/bulk-wgcna-analysis-with-omicverse && rm skill.zipInstalls to .claude/skills/bulk-wgcna-analysis-with-omicverse
About this skill
Bulk WGCNA analysis with omicverse
Overview
Activate this skill for users who want to reproduce the WGCNA workflow from t_wgcna.ipynb. It guides you through loading expression data, configuring PyWGCNA, constructing weighted gene co-expression networks, and inspecting modules of interest.
Instructions
- Prepare the environment
- Import
omicverse as ov,scanpy as sc,matplotlib.pyplot as plt, andpandas as pd. - Set plotting defaults via
ov.plot_set().
- Import
- Load and filter expression data
- Read expression matrices (e.g., from
expressionList.csv). - Calculate median absolute deviation with
from statsmodels import robustandgene_mad = data.apply(robust.mad). - Keep the top variable genes (e.g.,
data = data.T.loc[gene_mad.sort_values(ascending=False).index[:2000]]).
- Read expression matrices (e.g., from
- Initialise PyWGCNA
- Create
pyWGCNA_5xFAD = ov.bulk.pyWGCNA(name=..., species='mus musculus', geneExp=data.T, outputPath='', save=True). - Confirm
pyWGCNA_5xFAD.geneExprlooks correct before proceeding.
- Create
- Preprocess the dataset
- Run
pyWGCNA_5xFAD.preprocess()to drop low-expression genes and problematic samples.
- Run
- Construct the co-expression network
- Evaluate soft-threshold power:
pyWGCNA_5xFAD.calculate_soft_threshold(). - Build adjacency and TOM matrices via
calculating_adjacency_matrix()andcalculating_TOM_similarity_matrix().
- Evaluate soft-threshold power:
- Detect gene modules
- Generate dendrograms and modules:
calculate_geneTree(),calculate_dynamicMods(kwargs_function={'cutreeHybrid': {...}}). - Derive module eigengenes with
calculate_gene_module(kwargs_function={'moduleEigengenes': {'softPower': 8}}). - Visualise adjacency/TOM heatmaps using
plot_matrix(save=False)if needed.
- Generate dendrograms and modules:
- Inspect specific modules
- Extract genes from modules with
get_sub_module([...], mod_type='module_color'). - Build sub-networks using
get_sub_network(mod_list=[...], mod_type='module_color', correlation_threshold=0.2)and plot them viaplot_sub_network(...).
- Extract genes from modules with
- Update sample metadata for downstream analyses
- Load sample annotations
updateSampleInfo(path='.../sampleInfo.csv', sep=','). - Assign colour maps for metadata categories with
setMetadataColor(...).
- Load sample annotations
- Analyse module–trait relationships
- Run
analyseWGCNA()to compute module–trait statistics. - Plot module eigengene heatmaps and bar charts with
plotModuleEigenGene(module, metadata, show=True)andbarplotModuleEigenGene(...).
- Run
- Find hub genes
- Identify top hubs per module using
top_n_hub_genes(moduleName='lightgreen', n=10).
- Identify top hubs per module using
- Defensive validation
# Before WGCNA: verify enough genes remain after MAD filtering assert data.shape[0] >= 1000, f"Only {data.shape[0]} genes after filtering — WGCNA needs >1000 for meaningful modules" # Verify expression values are numeric and non-negative assert data.dtypes.apply(lambda d: d.kind in 'iuf').all(), "Expression matrix contains non-numeric columns" # Verify enough samples for network construction assert data.shape[1] >= 6, f"Only {data.shape[1]} samples — WGCNA needs >=6 samples for reliable co-expression" - Troubleshooting tips
- Large datasets may require increasing
save=Falseto avoid writing many intermediate files. - If module detection fails, confirm enough genes remain after MAD filtering and adjust
deepSplitorsoftPower. - Ensure metadata categories have assigned colours before plotting eigengene heatmaps.
- Large datasets may require increasing
Examples
- "Build a WGCNA network on the 5xFAD dataset, visualise modules, and extract hub genes from the lightgreen module."
- "Load sample metadata, update colours for sex and genotype, and plot module eigengene heatmaps."
- "Create a sub-network plot for the gold module using a correlation threshold of 0.2."
References
- Tutorial notebook:
t_wgcna.ipynb - Tutorial dataset:
data/5xFAD_paper/ - Quick copy/paste commands:
reference.md
More by Starlitnightly
View all skills by Starlitnightly →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
pdf-to-markdown
aliceisjustplaying
Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.
Related MCP Servers
Browse all serversConnect Blender to Claude AI for seamless 3D modeling. Use AI 3D model generator tools for faster, intuitive, interactiv
Desktop Commander MCP unifies code management with advanced source control, git, and svn support—streamlining developmen
Send and receive WhatsApp messages directly from Claude and other AI assistants. Search conversations, manage contacts,
Integrate Claude Desktop with Neovim for an AI coding assistant that enhances Vim workflows with AI-powered coding help
Mailgun MCP Server lets AI assistants send emails via the Mailgun API and view email delivery analytics for seamless AI
Twilio SMS is a text messaging service for business that offers automated texting and validation, perfect for profession
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.