[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-scverse--anndata":3,"tool-scverse--anndata":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",151918,2,"2026-04-12T11:33:05",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":72,"owner_avatar_url":73,"owner_bio":74,"owner_company":75,"owner_location":75,"owner_email":75,"owner_twitter":76,"owner_website":77,"owner_url":78,"languages":79,"stars":84,"forks":85,"last_commit_at":86,"license":87,"difficulty_score":88,"env_os":89,"env_gpu":89,"env_ram":89,"env_deps":90,"category_tags":100,"github_topics":102,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":108,"updated_at":109,"faqs":110,"releases":138},6886,"scverse\u002Fanndata","anndata","Annotated data.","anndata 是一个专为处理“带注释数据矩阵”设计的 Python 库，在功能定位上巧妙填补了 pandas 与 xarray 之间的空白。它主要解决了生物信息学等领域中，大规模数据集（如单细胞测序数据）在内存与磁盘间高效流转的难题，让用户既能轻松管理复杂的元数据注释，又能流畅地进行计算分析。\n\n这款工具特别适合生物数据研究人员、数据科学家以及需要处理高维稀疏矩阵的开发者使用。作为 scverse 生态系统的核心组件，anndata 最初便是为著名的单细胞分析工具 Scanpy 量身打造，如今已成为该领域的标准数据格式。\n\n其独特的技术亮点在于卓越的性能优化：原生支持稀疏数据存储，大幅节省内存占用；提供懒加载（lazy operations）机制，允许用户在不将整个数据集读入内存的情况下处理超出内存容量的大型文件；此外，它还提供了便捷的 PyTorch 接口，无缝衔接深度学习工作流。无论是进行探索性数据分析还是构建大规模计算管道，anndata 都能以简洁的 API 提供强大而灵活的支持，是处理现代高通量生物数据的得力助手。","[![Tests](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Factions\u002Fworkflows\u002Ftest-cpu.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Factions)\n[![Conda](https:\u002F\u002Fimg.shields.io\u002Fconda\u002Fvn\u002Fconda-forge\u002Fanndata.svg)](https:\u002F\u002Fanaconda.org\u002Fconda-forge\u002Fanndata)\n[![Coverage](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fscverse\u002Fanndata\u002Fbranch\u002Fmain\u002Fgraph\u002Fbadge.svg?token=IN1mJN1Wi8)](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fscverse\u002Fanndata)\n[![Docs](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_13d664e1afd7.png)](https:\u002F\u002Fanndata.readthedocs.io)\n[![PyPI](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fanndata.svg)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fanndata)\n[![Downloads](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_08d74b83d284.png)](https:\u002F\u002Fpepy.tech\u002Fproject\u002Fanndata)\n[![Downloads](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_b4320b4ee28c.png)](https:\u002F\u002Fpepy.tech\u002Fproject\u002Fanndata)\n[![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fscverse\u002Fanndata?style=flat&logo=github&color=yellow)](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Fstargazers)\n[![Powered by NumFOCUS](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpowered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](http:\u002F\u002Fnumfocus.org)\n\n\u003Cimg\n  src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fscverse\u002Fanndata\u002Fmain\u002Fdocs\u002F_static\u002Fimg\u002Fanndata_schema.svg\"\n  class=\"dark-light\" align=\"right\" width=\"350\" alt=\"image\"\n\u002F>\n\n# anndata - Annotated data\n\nanndata is a Python package for handling annotated data matrices in memory and on disk, positioned between pandas and xarray. anndata offers a broad range of computationally efficient features including, among others, sparse data support, lazy operations, and a PyTorch interface.\n\n- Discuss development on [GitHub](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata).\n- Read the [documentation](https:\u002F\u002Fanndata.readthedocs.io).\n- Ask questions on the [scverse Discourse](https:\u002F\u002Fdiscourse.scverse.org).\n- Install via `pip install anndata` or `conda install anndata -c conda-forge`.\n- See [Scanpy's documentation](https:\u002F\u002Fscanpy.readthedocs.io\u002F) for usage related to single cell data. anndata was initially built for Scanpy.\n\n[\u002F\u002F]: # (numfocus-fiscal-sponsor-attribution)\n\nanndata is part of the scverse® project ([website](https:\u002F\u002Fscverse.org), [governance](https:\u002F\u002Fscverse.org\u002Fabout\u002Froles)) and is fiscally sponsored by [NumFOCUS](https:\u002F\u002Fnumfocus.org\u002F).\nIf you like scverse® and want to support our mission, please consider making a tax-deductible [donation](https:\u002F\u002Fnumfocus.org\u002Fdonate-to-scverse) to help the project pay for developer time, professional services, travel, workshops, and a variety of other needs.\n\n\u003Cdiv align=\"center\">\n\u003Ca href=\"https:\u002F\u002Fnumfocus.org\u002Fproject\u002Fscverse\">\n  \u003Cimg\n    src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_4ec43cc1a7a4.png\"\n    width=\"200\"\n  >\n\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n## Public API\n\nOur public API is documented in the [API section][] of these docs.\nWe cannot guarantee the stability of our internal APIs, whether it's the location of a function, its arguments, or something else.\nIn other words, we do not officially support (or encourage users to do) something like `from anndata._core import AnnData` as `_core` is both not documented and contains a [leading underscore][].\nHowever, we are aware that [many users do use these internal APIs][] and thus encourage them to [open an issue][] or migrate to the public API.\nThat is, if something is missing from our public API as documented, for example a feature you wish to be exported publicly, please open an issue.\n\n[api section]: https:\u002F\u002Fanndata.readthedocs.io\u002Fen\u002Fstable\u002Fapi.html\n[leading underscore]: https:\u002F\u002Fpeps.python.org\u002Fpep-0008\u002F#public-and-internal-interfaces\n[many users do use these internal APIs]: https:\u002F\u002Fgithub.com\u002Fsearch?q=%22anndata._io%22&type=code\n[open an issue]: https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Fissues\u002Fnew\u002Fchoose\n\n\n## Citation\n\nIf you use `anndata` in your work, please cite the `anndata` publication as follows:\n\n> **anndata: Annotated data**\n>\n> Isaac Virshup, Sergei Rybakov, Fabian J. Theis, Philipp Angerer, F. Alexander Wolf\n>\n> _JOSS_ 2024 Sep 16. doi: [10.21105\u002Fjoss.04371](https:\u002F\u002Fdoi.org\u002F10.21105\u002Fjoss.04371).\n\nYou can cite the scverse publication as follows:\n\n> **The scverse project provides a computational ecosystem for single-cell omics data analysis**\n>\n> Isaac Virshup, Danila Bredikhin, Lukas Heumos, Giovanni Palla, Gregor Sturm, Adam Gayoso, Ilia Kats, Mikaela Koutrouli, Scverse Community, Bonnie Berger, Dana Pe’er, Aviv Regev, Sarah A. Teichmann, Francesca Finotello, F. Alexander Wolf, Nir Yosef, Oliver Stegle & Fabian J. Theis\n>\n> _Nat Biotechnol._ 2023 Apr 10. doi: [10.1038\u002Fs41587-023-01733-8](https:\u002F\u002Fdoi.org\u002F10.1038\u002Fs41587-023-01733-8).\n","[![测试](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Factions\u002Fworkflows\u002Ftest-cpu.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Factions)\n[![Conda](https:\u002F\u002Fimg.shields.io\u002Fconda\u002Fvn\u002Fconda-forge\u002Fanndata.svg)](https:\u002F\u002Fanaconda.org\u002Fconda-forge\u002Fanndata)\n[![覆盖率](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fscverse\u002Fanndata\u002Fbranch\u002Fmain\u002Fgraph\u002Fbadge.svg?token=IN1mJN1Wi8)](https:\u002F\u002Fcodecov.io\u002Fgh\u002Fscverse\u002Fanndata)\n[![文档](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_13d664e1afd7.png)](https:\u002F\u002Fanndata.readthedocs.io)\n[![PyPI](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fanndata.svg)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fanndata)\n[![月下载量](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_08d74b83d284.png)](https:\u002F\u002Fpepy.tech\u002Fproject\u002Fanndata)\n[![总下载量](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_b4320b4ee28c.png)](https:\u002F\u002Fpepy.tech\u002Fproject\u002Fanndata)\n[![星标](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fscverse\u002Fanndata?style=flat&logo=github&color=yellow)](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Fstargazers)\n[![由 NumFOCUS 赞助](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fpowered%20by-NumFOCUS-orange.svg?style=flat&colorA=E1523D&colorB=007D8A)](http:\u002F\u002Fnumfocus.org)\n\n\u003Cimg\n  src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fscverse\u002Fanndata\u002Fmain\u002Fdocs\u002F_static\u002Fimg\u002Fanndata_schema.svg\"\n  class=\"dark-light\" align=\"right\" width=\"350\" alt=\"image\"\n\u002F>\n\n# anndata - 注释数据\n\nanndata 是一个 Python 软件包，用于在内存和磁盘上处理注释数据矩阵，介于 pandas 和 xarray 之间。anndata 提供了广泛的计算高效功能，包括稀疏数据支持、惰性操作以及 PyTorch 接口等。\n\n- 在 [GitHub](https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata) 上讨论开发。\n- 阅读 [文档](https:\u002F\u002Fanndata.readthedocs.io)。\n- 在 [scverse Discourse](https:\u002F\u002Fdiscourse.scverse.org) 上提问。\n- 可通过 `pip install anndata` 或 `conda install anndata -c conda-forge` 安装。\n- 关于单细胞数据的使用，请参阅 [Scanpy 的文档](https:\u002F\u002Fscanpy.readthedocs.io\u002F)。anndata 最初就是为 Scanpy 构建的。\n\n[\u002F\u002F]: # (numfocus-fiscal-sponsor-attribution)\n\nanndata 是 scverse® 项目的一部分（[官网](https:\u002F\u002Fscverse.org)，[治理结构](https:\u002F\u002Fscverse.org\u002Fabout\u002Froles)），并由 [NumFOCUS](https:\u002F\u002Fnumfocus.org\u002F) 提供财政赞助。如果您喜欢 scverse® 并希望支持我们的使命，请考虑向其进行可抵税的 [捐赠](https:\u002F\u002Fnumfocus.org\u002Fdonate-to-scverse)，以帮助项目支付开发人员时间、专业服务、差旅、研讨会以及其他各种需求。\n\n\u003Cdiv align=\"center\">\n\u003Ca href=\"https:\u002F\u002Fnumfocus.org\u002Fproject\u002Fscverse\">\n  \u003Cimg\n    src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_readme_4ec43cc1a7a4.png\"\n    width=\"200\"\n  >\n\u003C\u002Fa>\n\u003C\u002Fdiv>\n\n## 公开 API\n\n我们的公开 API 在本文档的 [API 部分][] 中有详细说明。我们无法保证内部 API 的稳定性，无论是函数的位置、参数还是其他方面。换句话说，我们并不正式支持（也不鼓励用户这样做）类似 `from anndata._core import AnnData` 的用法，因为 `_core` 既未被文档化，又带有 [前导下划线][]。然而，我们意识到 [许多用户确实使用这些内部 API][]，因此鼓励他们 [提交问题][] 或迁移到公开 API。也就是说，如果我们在公开 API 文档中遗漏了某些内容，例如您希望公开提供的功能，请提交一个问题。\n\n[api section]: https:\u002F\u002Fanndata.readthedocs.io\u002Fen\u002Fstable\u002Fapi.html\n[leading underscore]: https:\u002F\u002Fpeps.python.org\u002Fpep-0008\u002F#public-and-internal-interfaces\n[many users do use these internal APIs]: https:\u002F\u002Fgithub.com\u002Fsearch?q=%22anndata._io%22&type=code\n[open an issue]: https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Fissues\u002Fnew\u002Fchoose\n\n\n## 引用\n\n如果您在工作中使用了 `anndata`，请按照以下方式引用 anndata 的相关论文：\n\n> **anndata：注释数据**\n>\n> Isaac Virshup, Sergei Rybakov, Fabian J. Theis, Philipp Angerer, F. Alexander Wolf\n>\n> _JOSS_ 2024 年 9 月 16 日。doi: [10.21105\u002Fjoss.04371](https:\u002F\u002Fdoi.org\u002F10.21105\u002Fjoss.04371)。\n\n您也可以引用 scverse 的相关论文：\n\n> **scverse 项目为单细胞组学数据分析提供了一个计算生态系统**\n>\n> Isaac Virshup, Danila Bredikhin, Lukas Heumos, Giovanni Palla, Gregor Sturm, Adam Gayoso, Ilia Kats, Mikaela Koutrouli, Scverse 社区, Bonnie Berger, Dana Pe’er, Aviv Regev, Sarah A. Teichmann, Francesca Finotello, F. Alexander Wolf, Nir Yosef, Oliver Stegle & Fabian J. Theis\n>\n> _Nat Biotechnol._ 2023 年 4 月 10 日。doi: [10.1038\u002Fs41587-023-01733-8](https:\u002F\u002Fdoi.org\u002F10.1038\u002Fs41587-023-01733-8)。","# anndata 快速上手指南\n\n`anndata` 是一个用于处理内存和磁盘中带注释数据矩阵的 Python 包，定位介于 `pandas` 和 `xarray` 之间。它广泛应用于单细胞测序数据分析（如 Scanpy），支持稀疏数据、惰性操作及 PyTorch 接口。\n\n## 环境准备\n\n- **操作系统**：Linux, macOS, Windows\n- **Python 版本**：建议 Python 3.9 或更高版本\n- **前置依赖**：\n  - `numpy`\n  - `pandas`\n  - `scipy` (用于稀疏矩阵支持)\n  - `h5py` (用于磁盘存储)\n  \n> 注：安装时通常会自动解决上述依赖。\n\n## 安装步骤\n\n推荐使用国内镜像源加速安装。\n\n### 方式一：使用 pip (推荐)\n\n```bash\npip install anndata -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n### 方式二：使用 conda\n\n```bash\nconda install anndata -c conda-forge\n```\n*注：conda-forge 源若下载缓慢，可配置清华或中科大镜像通道。*\n\n## 基本使用\n\n以下是最简单的创建和操作 `AnnData` 对象的示例：\n\n```python\nimport numpy as np\nimport pandas as pd\nfrom anndata import AnnData\n\n# 1. 准备数据\n# X: 观测值矩阵 (例如：细胞 x 基因)\nX = np.random.rand(100, 2000) \n# obs: 观测值注释 (行注释，例如：细胞类型、批次)\nobs = pd.DataFrame({\n    'cell_type': ['A'] * 50 + ['B'] * 50,\n    'batch': ['batch1'] * 100\n}, index=[f\"Cell_{i}\" for i in range(100)])\n# var: 变量注释 (列注释，例如：基因名)\nvar = pd.DataFrame({\n    'gene_name': [f\"Gene_{i}\" for i in range(2000)]\n}, index=[f\"ENSG{i}\" for i in range(2000)])\n\n# 2. 创建 AnnData 对象\nadata = AnnData(X=X, obs=obs, var=var)\n\n# 3. 基本操作\nprint(adata)\n# 输出示例：AnnData object with n_obs × n_vars = 100 × 2000\n\n# 访问前 5 行数据\nprint(adata.X[:5, :5])\n\n# 筛选特定细胞类型的数据\nadata_subset = adata[adata.obs['cell_type'] == 'A']\nprint(adata_subset)\n\n# 4. 保存数据到磁盘 (h5ad 格式)\nadata.write('my_data.h5ad')\n\n# 5. 从磁盘读取数据\nadata_loaded = AnnData.read_h5ad('my_data.h5ad')\n```","某生物信息学家正在处理包含百万级细胞的高通量单细胞测序数据，需要在内存中高效整合基因表达矩阵与复杂的细胞元数据。\n\n### 没有 anndata 时\n- **内存爆炸**：直接使用 Pandas 或 NumPy 存储稀疏的表达矩阵时，数据被强制转换为稠密格式，导致几十 GB 的内存瞬间被占满，普通工作站直接崩溃。\n- **数据割裂**：表达矩阵、细胞注释（如组织来源、批次）和基因特征分散在不同的 DataFrame 或字典中，手动对齐索引极易出错，一旦顺序错位整个分析作废。\n- **操作低效**：无法原生支持“惰性加载”，每次分析都必须将全部数据读入内存，无法对存储在硬盘上的大规模数据集进行快速切片或子集提取。\n- **生态断层**：缺乏统一的数据结构标准，自定义的数据格式难以与 Scanpy 等主流下游分析工具无缝对接，需要编写大量繁琐的转换代码。\n\n### 使用 anndata 后\n- **极致压缩**：anndata 原生支持稀疏矩阵存储，仅记录非零值，将原本需要几十 GB 内存的数据压缩至几百 MB，轻松在笔记本上运行。\n- **一体管理**：通过 `AnnData` 对象将主数据矩阵（X）、行\u002F列观测数据（obs\u002Fvar）及多层级注释（obsm\u002Fvarm）逻辑绑定，确保索引自动对齐，彻底杜绝数据错位。\n- **按需读取**：利用 backed 模式实现惰性加载，无需全量读入即可直接对磁盘上的 HDF5\u002FZarr 文件进行随机访问和子集计算，大幅降低资源门槛。\n- **生态互通**：作为 scverse 生态的核心标准，anndata 对象可直接传入 Scanpy、scvi-tools 等工具链，实现从预处理到深度学习建模的零摩擦流转。\n\nanndata 通过统一的带注释数据模型，解决了单细胞领域大规模稀疏数据“存不下、对不齐、跑不动”的核心痛点。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fscverse_anndata_f50457a0.png","scverse","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fscverse_49e94440.png","Foundational tools for omics data in the life sciences",null,"scverse_team","https:\u002F\u002Fscverse.org","https:\u002F\u002Fgithub.com\u002Fscverse",[80],{"name":81,"color":82,"percentage":83},"Python","#3572A5",100,729,187,"2026-04-09T22:12:27","BSD-3-Clause",1,"未说明",{"notes":91,"python":89,"dependencies":92},"该工具是一个用于处理内存和磁盘上注释数据矩阵的 Python 包，定位介于 pandas 和 xarray 之间。支持稀疏数据、惰性操作，并提供 PyTorch 接口。可通过 pip 或 conda (conda-forge) 安装。虽然提及有 PyTorch 接口，但 README 中未列出具体 GPU 或 PyTorch 版本强制要求，通常意味着 GPU 为可选加速项而非运行必需项。",[93,94,95,96,97,98,99],"pandas","xarray","numpy","scipy","h5py","natsort","packaging",[15,16,101,14],"其他",[103,104,105,106,107,72,64],"scanpy","data-science","transcriptomics","bioinformatics","machine-learning","2026-03-27T02:49:30.150509","2026-04-12T21:59:37.056124",[111,116,121,126,130,134],{"id":112,"question_zh":113,"answer_zh":114,"source_url":115},31035,"如何在 AnnData 中存储和处理多模态数据（如 CITE-seq 的蛋白表达或细胞哈希 HTO 数据）？","对于多模态数据（如同时包含基因表达和蛋白\u002F哈希计数），推荐使用基于 AnnData 构建的多模态数据类型 `MuData`。MuData 将不同模态存储在 `.mod` 属性中（例如 `mdata.mod[\"rna\"]`），同时保留了类似 AnnData 的接口（如 `.obs`, `.var`, `.obsm`）。这解决了在单一 AnnData 对象中难以优雅地存储额外计数矩阵及其对应名称（如蛋白名或样本名）的问题。相关教程可参考 Muon 框架文档。","https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Fissues\u002F237",{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},31036,"在 AnnData 0.7+ 版本中，切片操作（slicing）性能显著下降，如何优化读取速度？","在 AnnData 0.7.1 及更高版本中，直接对 `adata.X` 进行切片（如 `adata.X[0:10, :]`）比通过 AnnData 对象切片（如 `adata[0:10, :].X`）快得多（在某些情况下快数万倍）。这是因为对象切片涉及视图创建和元数据检查等开销。为了获得最佳性能，特别是在处理大型内存数据集时，建议直接对底层数组进行切片操作：使用 `adata.X[row_indices, col_indices]` 而不是 `adata[row_indices, col_indices].X`。","https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Fissues\u002F317",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},31037,"AnnData v0.7 版本引入了哪些主要的破坏性变更（Breaking Changes）？","v0.7 的主要破坏性变更包括：1. 通过视图（view）就地修改稀疏 `.X` 矩阵的行为已改变；2. 对 AnnData 对象进行索引操作时，不再自动降低包含数组的维度（即结果始终保持二维，修复了之前降维导致的不一致问题）。此外，官方鼓励用户迁移使用新的 `obsp` 和 `varp` 属性来存储成对度量数据，替代以前存放在 `.uns` 中的方阵方式，并提供了 `update_anndata` 工具辅助迁移。","https:\u002F\u002Fgithub.com\u002Fscverse\u002Fanndata\u002Fissues\u002F171",{"id":127,"question_zh":128,"answer_zh":129,"source_url":120},31038,"如何处理以前存储在 `.uns` 中的成对矩阵（如邻居图 connectivities\u002Fdistances）以符合新标准？","在新版 AnnData 和 Scanpy 中，成对矩阵（如邻居信息）应存储在 `obsp` 属性中，而不是 `.uns`。如果数据集中仍将这些大型稀疏矩阵（形状为 n_obs x n_obs）保留在 `adata.uns['neighbors']` 等位置，可能会导致性能问题或不符合规范。建议使用 Scanpy 提供的更新机制或手动将这些矩阵移动到 `adata.obsp`，并清理 `.uns` 中不再需要的旧格式数据。Scanpy 现已默认使用 `obsp` 存储此类数据。",{"id":131,"question_zh":132,"answer_zh":133,"source_url":125},31039,"AnnData 是否支持在 `.obsm`, `.varm`, `.layers` 等属性中存储稀疏矩阵和 DataFrame？","是的，从 v0.7 版本开始，AnnData 增强了对数据类型的支持。现在允许在 `.obsm`（观测值多维注释）、`.varm`（变量多维注释）、`.layers`（额外数据层）以及 `.uns`（非结构化注释）中直接存储稀疏矩阵（sparse matrices）和 pandas DataFrame。这一改进使得存储复杂的多模态注释数据更加灵活和高效，无需再进行繁琐的类型转换。",{"id":135,"question_zh":136,"answer_zh":137,"source_url":120},31040,"为什么直接切片 `adata.X` 比通过 `adata` 对象切片快那么多？","通过 `adata[...]` 进行切片时，AnnData 会创建一个“视图”（View）对象，该过程涉及维护元数据一致性、处理索引映射以及可能的延迟加载逻辑，因此开销较大。而直接访问 `adata.X` 并进行切片（`adata.X[...]`）则是直接对底层的 numpy 或 scipy 稀疏矩阵进行操作，绕过了 AnnData 的对象封装逻辑，因此在处理大规模数据时速度有数量级的提升。对于仅需提取数值矩阵的场景，推荐直接使用后者。",[139,144,149,154,159,164,169,174,179,184,189,194,198,202,206,210,214,218,222,226],{"id":140,"version":141,"summary_zh":142,"released_at":143},222947,"0.12.10","https:\u002F\u002Fanndata.readthedocs.io\u002Fzh_CN\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-10","2026-02-06T14:01:55",{"id":145,"version":146,"summary_zh":147,"released_at":148},222948,"0.12.9","https:\u002F\u002Fanndata.readthedocs.io\u002Fzh_CN\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-9","2026-01-29T12:21:08",{"id":150,"version":151,"summary_zh":152,"released_at":153},222949,"0.12.8","https:\u002F\u002Fanndata.readthedocs.io\u002Fzh_CN\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-8","2026-01-27T11:12:37",{"id":155,"version":156,"summary_zh":157,"released_at":158},222950,"0.12.7","https:\u002F\u002Fanndata.readthedocs.io\u002Fen\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-7","2025-12-16T13:46:47",{"id":160,"version":161,"summary_zh":162,"released_at":163},222951,"0.12.6","https:\u002F\u002Fanndata.readthedocs.io\u002Fzh_CN\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-6","2025-11-06T17:55:08",{"id":165,"version":166,"summary_zh":167,"released_at":168},222952,"0.12.5","https:\u002F\u002Fanndata.readthedocs.io\u002Fzh_CN\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-5","2025-11-03T14:55:46",{"id":170,"version":171,"summary_zh":172,"released_at":173},222953,"0.12.4","https:\u002F\u002Fanndata.readthedocs.io\u002Fzh_CN\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-4","2025-10-27T19:28:41",{"id":175,"version":176,"summary_zh":177,"released_at":178},222954,"0.12.3","https:\u002F\u002Fanndata.readthedocs.io\u002Fen\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-3","2025-10-16T08:34:00",{"id":180,"version":181,"summary_zh":182,"released_at":183},222955,"0.12.2","https:\u002F\u002Fanndata.readthedocs.io\u002Fen\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-2","2025-08-11T07:19:41",{"id":185,"version":186,"summary_zh":187,"released_at":188},222956,"0.12.1","https:\u002F\u002Fanndata.readthedocs.io\u002Fen\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-1","2025-07-23T11:52:45",{"id":190,"version":191,"summary_zh":192,"released_at":193},222957,"0.12.0","https:\u002F\u002Fanndata.readthedocs.io\u002Fen\u002Fstable\u002Frelease-notes\u002Findex.html#v0-12-0","2025-07-16T11:53:35",{"id":195,"version":196,"summary_zh":75,"released_at":197},222958,"0.12.0rc4","2025-06-18T11:44:58",{"id":199,"version":200,"summary_zh":75,"released_at":201},222959,"0.12.0rc3","2025-05-20T15:38:25",{"id":203,"version":204,"summary_zh":75,"released_at":205},222960,"0.12.0rc2","2025-05-15T11:34:53",{"id":207,"version":208,"summary_zh":75,"released_at":209},222961,"0.12.0rc1","2025-04-09T12:41:45",{"id":211,"version":212,"summary_zh":75,"released_at":213},222962,"0.11.4","2025-03-26T11:38:27",{"id":215,"version":216,"summary_zh":75,"released_at":217},222963,"0.11.3","2025-01-10T20:17:22",{"id":219,"version":220,"summary_zh":75,"released_at":221},222964,"0.11.2","2025-01-07T14:49:04",{"id":223,"version":224,"summary_zh":75,"released_at":225},222965,"0.11.1","2024-11-12T19:15:57",{"id":227,"version":228,"summary_zh":75,"released_at":229},222966,"0.11.0","2024-11-07T13:05:05"]