[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DTDQKQMSBXCBMAS4VSQGEE":3,"skill-same:01M6DTDQKQMSBXCBMAS4VSQGEE":125},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":51,"commitSha":52,"skillDirectory":53,"forksCount":54,"repositoryHtmlUrl":55,"repositoryHomepageUrl":56,"ownerHtmlUrl":57,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":58,"install":59,"resources":72},"01M6DTDQKQMSBXCBMAS4VSQGEE","metabolomics-pathway-enrichment",null,"Load when running metabolite-name ORA against an explicit local pathway reference with BH-FDR; bundled pathway sets are for explicit demonstrations only. Skip m\u002Fz annotation (use metabolomics-annotation) and topology analysis or online pathway retrieval (use external mummichog \u002F FELLA or database tools).","TianGzlab\u002FOmicsClaw","TianGzlab","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F150978281?v=4","01M6DT9WNJJ470ADHPSMFAA02Y","01M6DT9WSN09C5K65GB6RK18R9",161,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"metabolomics pathway enrichment","enrichment","metabolomics","pathway","metabolomics pathway","local","fisher","bh-fdr","KEGG","ORA","name","database","database tools","reference","only","use","analysis","Tools","demo","topology","2026-11-10 10:12:30",false,"---\nname: metabolomics-pathway-enrichment\ndescription: Load when running metabolite-name ORA against an explicit local pathway reference with BH-FDR;\n  bundled pathway sets are for explicit demonstrations only. Skip m\u002Fz annotation (use metabolomics-annotation)\n  and topology analysis or online pathway retrieval (use external mummichog \u002F FELLA or database tools).\ntrigger: metabolomics pathway, KEGG, MetaboAnalyst, enrichment, mummichog\ntags:\n- metabolomics\n- pathway\n- enrichment\n- ora\n- fisher\n- demo\n---\n\n# metabolomics-pathway-enrichment\n\n## When to use\n\nRun metabolite-name ORA against explicit pathways or nine demo pathways. External mummichog\u002FFELLA are required for their own methods.\n\n## Use from a step\n\n```python\nimport pandas as pd\nimport json\nfrom pathlib import Path\nfrom skills._sdk.notebook import load_skill, read_input, write_output\nlibrary = load_skill(\"metabolomics-pathway-enrichment\")\ndata = read_input('features.csv', reader=pd.read_csv)\npathways = read_input('pathways.json', reader=lambda path: json.loads(Path(path).read_text()))\nresult = library.enrich(data['metabolite'], pathways=pathways)\nwrite_output(result, 'tables\u002Fresult.csv')\n```\n\n[examples\u002Fexample_step.py](examples\u002Fexample_step.py) runs a seeded synthetic\nexample through the step runner and writes a table and Figure. Computations\nreturn new DataFrames, leave the input unchanged and expose diagnostics through\n`run_info(result)`. Plotting functions write no files.\n\n## API\n\n\u003C!-- api:begin generated from _api.py; regenerate with run.py api \u003Cskill dir> --write -->\n\n### `enrich(data, *, method='ora', pathways=None)`\n\nTest case-insensitive exact metabolite-name overlap by hypergeometric ORA.\n\n:param data: Iterable of metabolite names; duplicates count once in each overlap.\n:param method: CLI default ora, the only implemented method.\n:param pathways: Required mapping of pathway names to metabolites lists and kegg_id labels; use demo_pathways() only for demonstrations.\n:returns: A new table; BH FDR covers pathways with at least one hit, matching the CLI.\n:raises ValueError: A requested method is unimplemented or reference is empty.\n\n### `demo_pathways()`\n\nReturn an independent copy of the nine illustrative pathway sets.\n\n:returns: A mapping for explicit demo use, not a complete pathway database.\n\n### `run_info(data, *, keep=True)`\n\nRead diagnostics attached to a returned table.\n\n:param data: DataFrame returned by this library.\n:param keep: Default True; use False in the CLI to remove diagnostics.\n:returns: An independent dictionary describing the run.\n:raises ValueError: The table carries no run_info.\n\n### `enrichment_figure(data, *, n_top=10)`\n\nPlot the strongest pathway overlaps by adjusted p value.\n\n:param data: Results returned by enrich.\n:param n_top: Default 10; maximum number of pathways shown.\n:returns: A matplotlib Figure.\n:raises KeyError: pathway or fdr is absent.\n\n\u003C!-- api:end -->\n\n## Methods and parameters\n\nMatching is case-insensitive exact name equality, not substring matching. The background is the union of reference members. Hypergeometric survival probabilities and BH correction apply to pathways with at least one hit, matching the legacy CLI.\n\n## Gotchas\n\n- `enrich` requires explicit `pathways=` and implements only ora. Missing reference data and fella\u002Fmummichog requests fail. `demo_pathways()` explicitly selects the nine illustrative sets; never use these as biological evidence.\n- `tables\u002Fpathway_enrichment.csv` has a stable schema even with no overlap. `result.json` records the reference scope in `data.run_info.reference_scope`.\n\n## Inputs and outputs\n\nCSV input; `tables\u002Fpathway_enrichment.csv`, `report.md` and `result.json`. Demo mode also writes its synthetic input CSV at the output root.\nReal input also requires a JSON reference: `{\"pathway name\": {\"kegg_id\": \"identifier\", \"metabolites\": [\"glucose\", \"pyruvate\"]}}`.\nThe function library returns objects; the CLI and step own file writes.\n\n## CLI\n\n```bash\npython skills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Fmet_pathway.py --demo --output \u002Ftmp\u002Fmetabolomics_pathway_enrichment\npython skills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Fmet_pathway.py --input features.csv --pathway-file pathways.json --output \u002Ftmp\u002Fmetabolomics_pathway_real\n```\n\n## See also\n\n- [Parameters](references\u002Fparameters.md)\n- [Methodology](references\u002Fmethodology.md)\n- [Output contract](references\u002Foutput_contract.md)\n\n## Dependencies\n\n`numpy`, `pandas`, `scipy`, `matplotlib`\n","# metabolomics-pathway-enrichment\n\n## When to use\n\nRun metabolite-name ORA against explicit pathways or nine demo pathways. External mummichog\u002FFELLA are required for their own methods.\n\n## Use from a step\n\n```python\nimport pandas as pd\nimport json\nfrom pathlib import Path\nfrom skills._sdk.notebook import load_skill, read_input, write_output\nlibrary = load_skill(\"metabolomics-pathway-enrichment\")\ndata = read_input('features.csv', reader=pd.read_csv)\npathways = read_input('pathways.json', reader=lambda path: json.loads(Path(path).read_text()))\nresult = library.enrich(data['metabolite'], pathways=pathways)\nwrite_output(result, 'tables\u002Fresult.csv')\n```\n\n[examples\u002Fexample_step.py](examples\u002Fexample_step.py) runs a seeded synthetic\nexample through the step runner and writes a table and Figure. Computations\nreturn new DataFrames, leave the input unchanged and expose diagnostics through\n`run_info(result)`. Plotting functions write no files.\n\n## API\n\n\u003C!-- api:begin generated from _api.py; regenerate with run.py api \u003Cskill dir> --write -->\n\n### `enrich(data, *, method='ora', pathways=None)`\n\nTest case-insensitive exact metabolite-name overlap by hypergeometric ORA.\n\n:param data: Iterable of metabolite names; duplicates count once in each overlap.\n:param method: CLI default ora, the only implemented method.\n:param pathways: Required mapping of pathway names to metabolites lists and kegg_id labels; use demo_pathways() only for demonstrations.\n:returns: A new table; BH FDR covers pathways with at least one hit, matching the CLI.\n:raises ValueError: A requested method is unimplemented or reference is empty.\n\n### `demo_pathways()`\n\nReturn an independent copy of the nine illustrative pathway sets.\n\n:returns: A mapping for explicit demo use, not a complete pathway database.\n\n### `run_info(data, *, keep=True)`\n\nRead diagnostics attached to a returned table.\n\n:param data: DataFrame returned by this library.\n:param keep: Default True; use False in the CLI to remove diagnostics.\n:returns: An independent dictionary describing the run.\n:raises ValueError: The table carries no run_info.\n\n### `enrichment_figure(data, *, n_top=10)`\n\nPlot the strongest pathway overlaps by adjusted p value.\n\n:param data: Results returned by enrich.\n:param n_top: Default 10; maximum number of pathways shown.\n:returns: A matplotlib Figure.\n:raises KeyError: pathway or fdr is absent.\n\n\u003C!-- api:end -->\n\n## Methods and parameters\n\nMatching is case-insensitive exact name equality, not substring matching. The background is the union of reference members. Hypergeometric survival probabilities and BH correction apply to pathways with at least one hit, matching the legacy CLI.\n\n## Gotchas\n\n- `enrich` requires explicit `pathways=` and implements only ora. Missing reference data and fella\u002Fmummichog requests fail. `demo_pathways()` explicitly selects the nine illustrative sets; never use these as biological evidence.\n- `tables\u002Fpathway_enrichment.csv` has a stable schema even with no overlap. `result.json` records the reference scope in `data.run_info.reference_scope`.\n\n## Inputs and outputs\n\nCSV input; `tables\u002Fpathway_enrichment.csv`, `report.md` and `result.json`. Demo mode also writes its synthetic input CSV at the output root.\nReal input also requires a JSON reference: `{\"pathway name\": {\"kegg_id\": \"identifier\", \"metabolites\": [\"glucose\", \"pyruvate\"]}}`.\nThe function library returns objects; the CLI and step own file writes.\n\n## CLI\n\n```bash\npython skills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Fmet_pathway.py --demo --output \u002Ftmp\u002Fmetabolomics_pathway_enrichment\npython skills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Fmet_pathway.py --input features.csv --pathway-file pathways.json --output \u002Ftmp\u002Fmetabolomics_pathway_real\n```\n\n## See also\n\n- [Parameters](references\u002Fparameters.md)\n- [Methodology](references\u002Fmethodology.md)\n- [Output contract](references\u002Foutput_contract.md)\n\n## Dependencies\n\n`numpy`, `pandas`, `scipy`, `matplotlib`\n",{"name":5,"tags":48,"trigger":50,"description":7},[25,26,24,49,29,41],"ora","metabolomics pathway, KEGG, MetaboAnalyst, enrichment, mummichog","main","90a3bec3e6549bc33dddbf67e4b23869736c49d1","skills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment",27,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw","https:\u002F\u002FTianGzlab.github.io\u002FOmicsClaw\u002F","https:\u002F\u002Fgithub.com\u002FTianGzlab","2026-10-08 01:36:11",{"source":8,"skillName":5,"commands":60,"prompt":70,"zipAvailable":71},[61,64,67],{"tool":62,"command":63},"npx","npx skills add TianGzlab\u002FOmicsClaw --skill metabolomics-pathway-enrichment",{"tool":65,"command":66},"bunx","bunx skills add TianGzlab\u002FOmicsClaw --skill metabolomics-pathway-enrichment",{"tool":68,"command":69},"pnpm","pnpm dlx skills add TianGzlab\u002FOmicsClaw --skill metabolomics-pathway-enrichment","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002FSKILL.md",true,[73,79,83,87,93,97,101,105,109,113,117,121],{"path":74,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":77,"sourceHtmlUrl":78},"_api.py","SCRIPT","脚本",3173,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002F_api.py",{"path":80,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":81,"sourceHtmlUrl":82},"examples\u002Fexample_step.py",533,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Fexamples\u002Fexample_step.py",{"path":84,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":85,"sourceHtmlUrl":86},"met_pathway.py",6323,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Fmet_pathway.py",{"path":88,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":91,"sourceHtmlUrl":92},"references\u002Fmethodology.md","REFERENCE","参考文档",539,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Freferences\u002Fmethodology.md",{"path":94,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":95,"sourceHtmlUrl":96},"references\u002Foutput_contract.md",502,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Freferences\u002Foutput_contract.md",{"path":98,"resourceType":89,"resourceTypeDesc":90,"sizeBytes":99,"sourceHtmlUrl":100},"references\u002Fparameters.md",759,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Freferences\u002Fparameters.md",{"path":102,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":103,"sourceHtmlUrl":104},"scripts\u002Fcdp.ts",11034,"https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fcontent-creation-publisher\u002Fbaoyu-url-to-markdown\u002Fscripts\u002Fcdp.ts",{"path":106,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":107,"sourceHtmlUrl":108},"scripts\u002Fconstants.ts",544,"https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fcontent-creation-publisher\u002Fbaoyu-url-to-markdown\u002Fscripts\u002Fconstants.ts",{"path":110,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":111,"sourceHtmlUrl":112},"scripts\u002Fhtml-to-markdown.ts",24710,"https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fcontent-creation-publisher\u002Fbaoyu-url-to-markdown\u002Fscripts\u002Fhtml-to-markdown.ts",{"path":114,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":115,"sourceHtmlUrl":116},"scripts\u002Fmain.ts",6145,"https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fcontent-creation-publisher\u002Fbaoyu-url-to-markdown\u002Fscripts\u002Fmain.ts",{"path":118,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":119,"sourceHtmlUrl":120},"scripts\u002Fpaths.ts",1093,"https:\u002F\u002Fgithub.com\u002Fagency-black\u002FSkills\u002Fblob\u002Fmain\u002Fcontent-creation-publisher\u002Fbaoyu-url-to-markdown\u002Fscripts\u002Fpaths.ts",{"path":122,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":123,"sourceHtmlUrl":124},"tests\u002Ftest_api.py",3146,"https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fmetabolomics\u002Fmetabolomics-pathway-enrichment\u002Ftests\u002Ftest_api.py",[126,141,153,170,196,219],{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":135,"publishedAt":43},"01M6DTP4X225Q92RMY8XXHPCTT","demo-skill","A fixture skill for the skill environment tests. Use it for nothing else.","https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Ftests\u002Fskillenv\u002Ffixtures\u002Fskills\u002Fdemo\u002Fdemo-skill\u002FSKILL.md",[132],{"categoryNo":133,"categoryName":134,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",[136,41,137,138,139,38,140],"demo skill","tests","fixture","fixture skill","environment",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":147,"publishedAt":43},"01M6DTP28JTWQK3HHXDNQV8BBV","fake-domains","Test fixture for the golden deployment in tests\u002Fentry. Load never; it has no script.","https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Ftests\u002Fentry\u002Ffake_skills\u002Fspatial\u002Ffake-domains\u002FSKILL.md",[],[148,149,150,137,138,151,152],"domains","fake domains","deployment","never","test",{"skillNo":154,"name":155,"nameZh":6,"description":156,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":157,"categories":158,"keywords":160,"publishedAt":43},"01M6DTNZ4AMWKTME1T18K5C643","replace-me-skill","Load when copying this directory to bootstrap a new OmicsClaw skill. Skip when an existing skill already covers the request.","https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Ftemplates\u002Fskill\u002FSKILL.md",[159],{"categoryNo":133,"categoryName":134,"taxonomyType":20,"taxonomyTypeDesc":21},[161,162,163,164,165,166,167,168,169],"me","replace me skill","template","directory","skill template","existing skill","new skill","bootstrap","scaffold",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":176,"publishedAt":43},"01M6DTNV63MTD0Q6YRC52F0B1Y","spatial-velocity","Load when estimating RNA velocity on a spatial AnnData with `layers[\"spliced\"]` + `layers[\"unspliced\"]` via scVelo (stochastic \u002F deterministic \u002F dynamical) or veloVI (deep generative). Skip when input lacks the spliced\u002Funspliced layers (must be quantified upstream by velocyto \u002F kb-python \u002F STARsolo); non-spatial scRNA velocity (use sc-velocity).","https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fspatial\u002Fspatial-velocity\u002FSKILL.md",[],[177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,38,194,195],"velocity","spatial velocity","Spatial","scvelo","input","starsolo","time","deep","RNA","kb-python","via","velocyto","rna-velocity","velovi","dynamics","upstream","kb","python","deterministic",{"skillNo":197,"name":198,"nameZh":6,"description":199,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":200,"categories":201,"keywords":202,"publishedAt":43},"01M6DTNPMR227NAT8QFY620YDW","spatial-trajectory","Load when inferring pseudotime \u002F lineage trajectories on a preprocessed spatial AnnData via DPT (default — diffusion pseudotime), CellRank (terminal-state + fate-probability), or Palantir (waypoint branch probabilities). Skip when the data has spliced\u002Funspliced layers and you want velocity-driven dynamics (use spatial-velocity); non-spatial scRNA pseudotime (use sc-pseudotime).","https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fspatial\u002Fspatial-trajectory\u002FSKILL.md",[],[179,203,204,205,206,207,208,209,187,210,211,212,213,214,177,215,38,216,217,218],"trajectory","spatial trajectory","state","terminal","lineage","diffusion","cellrank","palantir","dpt","pseudotime","probability","cell","default","branch","anndata","data",{"skillNo":220,"name":221,"nameZh":6,"description":222,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":223,"categories":224,"keywords":225,"publishedAt":43},"01M6DTNJEYFT33P84DGHDNXW95","spatial-statistics","Load when running spatial autocorrelation \u002F hotspot \u002F co-occurrence \u002F neighbourhood-enrichment \u002F Ripley K stats on a clustered spatial AnnData via squidpy. Skip when ranking spatially variable genes (use spatial-genes); tissue domain detection (use spatial-domains).","https:\u002F\u002Fgithub.com\u002FTianGzlab\u002FOmicsClaw\u002Fblob\u002Fmain\u002Fskills\u002Fspatial\u002Fspatial-statistics\u002FSKILL.md",[],[226,227,179,187,228,229,230,231,232,233,148,234,235,28,236,38,217,237,24,238],"spatial statistics","statistics","nhood-enrichment","co-occurrence","ripley","geary","moran","neighbourhood","ranking","autocorrelation","domain","detection","stats"]