技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
citation-chasing-mapping【数据与研究】Use when identifying seminal papers in a research field, mapping research lineage and intellectual heritage, discovering related work through reference tracking, or finding potential collaborators through co-citation analysis. Maps citation networks to trace research evolution...
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
scripts/main.py.references/ for task-specific guidance.Python: 3.10+. Repository baseline for current packaged skills.Third-party packages: not explicitly version-pinned in this skill package. Add pinned versions if this skill needs stricter environment control.cd "20260318/scientific-skills/Evidence Insight/citation-chasing-mapping"
python -m py_compile scripts/main.py
python scripts/main.py --help
Example run plan:
CONFIG block or documented parameters if the script uses fixed settings.python scripts/main.py with the validated inputs.See ## Workflow above for related details.
scripts/main.py.references/ contains supporting rules, prompts, or checklists.Use this command to verify that the packaged script entry point can be parsed before deeper execution.
python -m py_compile scripts/main.py
Use these concrete commands for validation. They are intentionally self-contained and avoid placeholder paths.
python -m py_compile scripts/main.py
python scripts/main.py --help
from scripts.main import CitationChasingMapping
# Initialize the tool
tool = CitationChasingMapping()
from scripts.citation_mapper import CitationNetworkMapper
mapper = CitationNetworkMapper(data_source="PubMed")
# Build citation network from seed paper
network = mapper.build_network(
seed_paper={
"pmid": "12345678",
"title": "Breakthrough Discovery in Immunotherapy"
},
backward_depth=2, # references of references
forward_depth=2, # citing papers of citing papers
max_papers=500
)
# Identify seminal papers
seminal_papers = mapper.identify_seminal_works(
network=network,
min_citations=100,
centrality_threshold=0.8
)
print(f"Found {len(seminal_papers)} highly influential papers:")
for paper in seminal_papers[:5]:
print(f" - {paper.title} (cited {paper.citation_count} times)")
# Find research clusters
clusters = mapper.identify_research_clusters(
network=network,
algorithm="louvain",
min_cluster_size=10
)
# Generate collaboration map
collaboration_map = mapper.generate_collaboration_network(
network=network,
institution_field="affiliation"
)
# Create visualization
mapper.visualize_network(
network=network,
layout="force_directed",
color_by="publication_year",
size_by="citation_count",
output_file="citation_network.pdf"
)
Construct bidirectional citation graphs from seed papers with configurable depth.
# Build network from multiple seed papers
network = mapper.build_network(
seed_papers=[
{"pmid": "12345678", "title": "Original Discovery"},
{"pmid": "87654321", "title": "Follow-up Study"}
],
backward_depth=3, # References
forward_depth=2, # Citing papers
max_papers=1000,
include_citations=True
)
# Export network for Gephi
mapper.export_network(network, format="gexf", file="network.gexf")
Use centrality metrics to find field-defining papers.
# Calculate centrality metrics
centrality = mapper.calculate_centrality(
network=network,
metrics=["betweenness", "eigenvector", "pagerank"]
)
# Identify seminal papers
seminal = mapper.identify_seminal_works(
centrality=centrality,
min_citations=100,
top_n=20
)
for paper in seminal:
print(f"{paper.title}: {paper.centrality_score}")
Detect communities and emerging research topics.
# Detect research clusters
clusters = mapper.detect_clusters(
network=network,
algorithm="louvain",
resolution=1.0
)
# Analyze cluster topics
for cluster_id, cluster in clusters.items():
topic = mapper.extract_cluster_topic(cluster)
print(f"Cluster {cluster_id}: {topic}")
print(f" Size: {cluster.size} papers")
print(f" Growth rate: {cluster.growth_rate}")
Create publication-ready network visualizations.
# Create interactive visualization
viz = mapper.visualize(
network=network,
layout="force_directed",
node_color="publication_year",
node_size="citation_count",
edge_color="citation_type",
interactive=True
)
# Save as HTML for web
viz.save_html("citation_network.html")
# Save static for publication
viz.save_pdf("figure_1.pdf", dpi=300)
python scripts/main.py --seed-pmid 12345678 --depth 2 --max-papers 500 --output network.json --visualize
Before using this skill, ensure you have:
After using this skill, verify:
references/guide.md - Comprehensive user guidereferences/examples/ - Working code examplesreferences/api-docs/ - Complete API documentationSkill ID: 193 | Version: 1.0 | License: MIT
Every final response should make these items explicit when they are relevant:
scripts/main.py fails, report the failure point, summarize what still can be completed safely, and provide a manual fallback.This skill accepts requests that match the documented purpose of citation-chasing-mapping and include enough context to complete the workflow safely.
Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
citation-chasing-mappingonly handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
Use the following fixed structure for non-trivial requests:
If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.