lobster-transcriptomics 1.2.1__tar.gz → 1.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. {lobster_transcriptomics-1.2.1/lobster_transcriptomics.egg-info → lobster_transcriptomics-1.2.2}/PKG-INFO +1 -1
  2. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/de_analysis_expert.py +20 -16
  3. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2/lobster_transcriptomics.egg-info}/PKG-INFO +1 -1
  4. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/pyproject.toml +1 -1
  5. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/LICENSE +0 -0
  6. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/README.md +0 -0
  7. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/__init__.py +0 -0
  8. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/annotation_expert.py +0 -0
  9. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/config.py +0 -0
  10. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/prompts.py +0 -0
  11. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/py.typed +0 -0
  12. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/shared_tools.py +0 -0
  13. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/state.py +0 -0
  14. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/agents/transcriptomics/transcriptomics_expert.py +0 -0
  15. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/figure_template_providers/sc.py +0 -0
  16. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/analysis/bulk_preprocessing_service.py +0 -0
  17. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/analysis/differential_formula_service.py +0 -0
  18. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/analysis/enhanced_singlecell_service.py +0 -0
  19. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/analysis/pseudobulk_service.py +0 -0
  20. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/metadata/manual_annotation_service.py +0 -0
  21. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/quality/preprocessing_service.py +0 -0
  22. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/quality/quality_service.py +0 -0
  23. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/templates/annotation_templates.py +0 -0
  24. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster/services/visualization/bulk_visualization_service.py +0 -0
  25. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster_transcriptomics.egg-info/SOURCES.txt +0 -0
  26. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster_transcriptomics.egg-info/dependency_links.txt +0 -0
  27. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster_transcriptomics.egg-info/entry_points.txt +0 -0
  28. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster_transcriptomics.egg-info/requires.txt +0 -0
  29. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/lobster_transcriptomics.egg-info/top_level.txt +0 -0
  30. {lobster_transcriptomics-1.2.1 → lobster_transcriptomics-1.2.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lobster-transcriptomics
3
- Version: 1.2.1
3
+ Version: 1.2.2
4
4
  Summary: Transcriptomics agents for Lobster AI - single-cell and bulk RNA-seq analysis
5
5
  Author-email: Omics-OS <info@omics-os.com>
6
6
  License-Expression: AGPL-3.0-or-later
@@ -1109,7 +1109,9 @@ def de_analysis_expert(
1109
1109
  status = (
1110
1110
  "OK"
1111
1111
  if count >= 4
1112
- else "LOW POWER" if count >= 3 else "INSUFFICIENT"
1112
+ else "LOW POWER"
1113
+ if count >= 3
1114
+ else "INSUFFICIENT"
1113
1115
  )
1114
1116
  response += f"\n- {group}: {count} replicates ({status})"
1115
1117
  response += _replicate_summary_text(replicate_validation)
@@ -1459,13 +1461,13 @@ def de_analysis_expert(
1459
1461
 
1460
1462
  **Analysis Results:**
1461
1463
  - Comparison: {group1} ({group1_count} samples) vs {group2} ({group2_count} samples)
1462
- - Method: {de_stats['method']}
1463
- - Genes tested: {de_stats['n_genes_tested']:,}
1464
- - Significant genes (padj < {alpha}): {de_stats['n_significant_genes']:,}
1464
+ - Method: {de_stats["method"]}
1465
+ - Genes tested: {de_stats["n_genes_tested"]:,}
1466
+ - Significant genes (padj < {alpha}): {de_stats["n_significant_genes"]:,}
1465
1467
 
1466
1468
  **Differential Expression Summary:**
1467
- - Upregulated in {group2}: {de_stats['n_upregulated']} genes
1468
- - Downregulated in {group2}: {de_stats['n_downregulated']} genes
1469
+ - Upregulated in {group2}: {de_stats["n_upregulated"]} genes
1470
+ - Downregulated in {group2}: {de_stats["n_downregulated"]} genes
1469
1471
 
1470
1472
  **Top Upregulated Genes:**
1471
1473
  {chr(10).join([f"- {gene}" for gene in de_stats["top_upregulated"][:5]])}
@@ -1925,7 +1927,9 @@ def de_analysis_expert(
1925
1927
  status = (
1926
1928
  "OK"
1927
1929
  if count >= 4
1928
- else "LOW POWER" if count >= 3 else "INSUFFICIENT"
1930
+ else "LOW POWER"
1931
+ if count >= 3
1932
+ else "INSUFFICIENT"
1929
1933
  )
1930
1934
  response += f"- {group}: {count} replicates ({status})\n"
1931
1935
  response += _replicate_summary_text(replicate_validation)
@@ -3117,7 +3121,7 @@ def de_analysis_expert(
3117
3121
  "results_df = results_df.sort_values({{ sort_by | string | repr }})\n"
3118
3122
  "results_df.to_{{ output_format }}({{ output_path | string | repr }}, index=True)"
3119
3123
  ),
3120
- imports=["pandas"],
3124
+ imports=["import pandas as pd"],
3121
3125
  )
3122
3126
 
3123
3127
  data_manager.log_tool_usage(
@@ -3144,8 +3148,8 @@ def de_analysis_expert(
3144
3148
  - Sorted by: {sort_by}
3145
3149
  - Output: {output_path}
3146
3150
 
3147
- **Columns:** {', '.join(results_df.columns.tolist()[:8])}{'...' if len(results_df.columns) > 8 else ''}
3148
- **Filtered only:** {'Yes' if filtered_only else 'No'}"""
3151
+ **Columns:** {", ".join(results_df.columns.tolist()[:8])}{"..." if len(results_df.columns) > 8 else ""}
3152
+ **Filtered only:** {"Yes" if filtered_only else "No"}"""
3149
3153
 
3150
3154
  return response
3151
3155
 
@@ -3331,7 +3335,7 @@ def de_analysis_expert(
3331
3335
  **Method:** DESeq2-like bulk differential expression
3332
3336
 
3333
3337
  **Results:**
3334
- - Genes tested: {de_stats.get('n_genes_tested', 'N/A'):,}
3338
+ - Genes tested: {de_stats.get("n_genes_tested", "N/A"):,}
3335
3339
  - Significant genes (padj < {alpha}): {n_sig:,}
3336
3340
  - Upregulated in {group2}: {n_up:,}
3337
3341
  - Downregulated in {group2}: {n_down:,}
@@ -3540,7 +3544,7 @@ def de_analysis_expert(
3540
3544
  - DE results: {de_results_key}
3541
3545
  - Ranking metric: {ranking_metric}
3542
3546
  - Genes ranked: {len(ranked_df):,}
3543
- - Databases: {', '.join(db_list)}
3547
+ - Databases: {", ".join(db_list)}
3544
3548
  - Organism: {organism}
3545
3549
 
3546
3550
  **Results:**
@@ -3801,7 +3805,7 @@ def de_analysis_expert(
3801
3805
  "results_df = results_df.sort_values('padj')\n"
3802
3806
  "results_df.to_{{ output_format }}({{ output_path | string | repr }}, index=True)"
3803
3807
  ),
3804
- imports=["pandas"],
3808
+ imports=["import pandas as pd"],
3805
3809
  )
3806
3810
 
3807
3811
  data_manager.log_tool_usage(
@@ -3833,10 +3837,10 @@ def de_analysis_expert(
3833
3837
  - Format: {output_format.upper()}
3834
3838
  - Output: {output_path}
3835
3839
 
3836
- **LFC Shrinkage:** {'Applied' if shrinkage_applied else 'Not applied'}
3837
- {f'- Note: {shrinkage_note}' if shrinkage_note else ''}
3840
+ **LFC Shrinkage:** {"Applied" if shrinkage_applied else "Not applied"}
3841
+ {f"- Note: {shrinkage_note}" if shrinkage_note else ""}
3838
3842
 
3839
- **Publication Columns:** {', '.join(pub_cols)}
3843
+ **Publication Columns:** {", ".join(pub_cols)}
3840
3844
 
3841
3845
  **File ready for publication supplementary tables.**"""
3842
3846
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lobster-transcriptomics
3
- Version: 1.2.1
3
+ Version: 1.2.2
4
4
  Summary: Transcriptomics agents for Lobster AI - single-cell and bulk RNA-seq analysis
5
5
  Author-email: Omics-OS <info@omics-os.com>
6
6
  License-Expression: AGPL-3.0-or-later
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "lobster-transcriptomics"
7
- version = "1.2.1"
7
+ version = "1.2.2"
8
8
  description = "Transcriptomics agents for Lobster AI - single-cell and bulk RNA-seq analysis"
9
9
  readme = "README.md"
10
10
  license = "AGPL-3.0-or-later"