ir_datasets: NFCorpus (NutritionFacts)"NFCorpus is a full-text English retrieval data set for Medical Information Retrieval. It contains a total of 3,244 natural language queries (written in non-technical English, harvested from the NutritionFacts.org site) with 169,756 automatically extracted relevance judgments for 9,964 medical documents (written in a complex terminology-heavy language), mostly from PubMed."
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  }
}
Official dev set. Queries include both title and combinted "all" text field (titles, descriptions, topics, transcripts and comments)
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev")
for query in dataset.queries_iter():
    query # namedtuple<query_id, title, all>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev queries
[query_id]    [title]    [all]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics('title'))
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.dev.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.dev')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 3.2K | 22.0% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 11K | 74.5% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance, iteration>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev qrels --format tsv
[query_id]    [doc_id]    [relevance]    [iteration]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics('title'),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.dev.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 325
  },
  "qrels": {
    "count": 14589,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 521,
          "2": 10864,
          "1": 3204
        }
      }
    }
  }
}
Official dev set, filtered to exclude queries from topic pages.
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev/nontopic")
for query in dataset.queries_iter():
    query # namedtuple<query_id, text>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev/nontopic queries
[query_id]    [text]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev/nontopic')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics())
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.dev.nontopic.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev/nontopic")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev/nontopic docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev/nontopic')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.dev.nontopic')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 699 | 16.1% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 3.1K | 72.0% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev/nontopic")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev/nontopic qrels --format tsv
[query_id]    [doc_id]    [relevance]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev/nontopic')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics(),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.dev.nontopic.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 144
  },
  "qrels": {
    "count": 4353,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 521,
          "2": 3133,
          "1": 699
        }
      }
    }
  }
}
Official dev set, filtered to only include queries from video pages.
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev/video")
for query in dataset.queries_iter():
    query # namedtuple<query_id, title, desc>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev/video queries
[query_id]    [title]    [desc]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev/video')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics('title'))
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.dev.video.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev/video")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev/video docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev/video')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.dev.video')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 678 | 22.1% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 2.0K | 64.5% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/dev/video")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance>
You can find more details about the Python API here.
ir_datasets export nfcorpus/dev/video qrels --format tsv
[query_id]    [doc_id]    [relevance]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/dev/video')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics('title'),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.dev.video.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 102
  },
  "qrels": {
    "count": 3068,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 411,
          "2": 1979,
          "1": 678
        }
      }
    }
  }
}
Official test set. Queries include both title and combinted "all" text field (titles, descriptions, topics, transcripts and comments)
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test")
for query in dataset.queries_iter():
    query # namedtuple<query_id, title, all>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test queries
[query_id]    [title]    [all]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics('title'))
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.test.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.test')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 3.5K | 22.0% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 12K | 74.3% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance, iteration>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test qrels --format tsv
[query_id]    [doc_id]    [relevance]    [iteration]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics('title'),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.test.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 325
  },
  "qrels": {
    "count": 15820,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 576,
          "1": 3486,
          "2": 11758
        }
      }
    }
  }
}
Official test set, filtered to exclude queries from topic pages.
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test/nontopic")
for query in dataset.queries_iter():
    query # namedtuple<query_id, text>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test/nontopic queries
[query_id]    [text]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test/nontopic')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics())
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.test.nontopic.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test/nontopic")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test/nontopic docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test/nontopic')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.test.nontopic')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 676 | 14.9% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 3.3K | 72.4% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test/nontopic")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test/nontopic qrels --format tsv
[query_id]    [doc_id]    [relevance]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test/nontopic')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics(),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.test.nontopic.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 144
  },
  "qrels": {
    "count": 4540,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 576,
          "1": 676,
          "2": 3288
        }
      }
    }
  }
}
Official test set, filtered to only include queries from video pages.
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test/video")
for query in dataset.queries_iter():
    query # namedtuple<query_id, title, desc>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test/video queries
[query_id]    [title]    [desc]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test/video')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics('title'))
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.test.video.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test/video")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test/video docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test/video')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.test.video')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 610 | 19.6% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 2.0K | 65.4% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/test/video")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance>
You can find more details about the Python API here.
ir_datasets export nfcorpus/test/video qrels --format tsv
[query_id]    [doc_id]    [relevance]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/test/video')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics('title'),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.test.video.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 102
  },
  "qrels": {
    "count": 3108,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 464,
          "2": 2034,
          "1": 610
        }
      }
    }
  }
}
Official train set. Queries include both title and combinted "all" text field (titles, descriptions, topics, transcripts and comments)
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train")
for query in dataset.queries_iter():
    query # namedtuple<query_id, title, all>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train queries
[query_id]    [title]    [all]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics('title'))
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.train.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.train')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 29K | 20.6% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 106K | 76.3% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance, iteration>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train qrels --format tsv
[query_id]    [doc_id]    [relevance]    [iteration]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics('title'),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.train.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 2594
  },
  "qrels": {
    "count": 139350,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 4279,
          "2": 106296,
          "1": 28775
        }
      }
    }
  }
}
Official train set, filtered to exclude queries from topic pages.
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train/nontopic")
for query in dataset.queries_iter():
    query # namedtuple<query_id, text>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train/nontopic queries
[query_id]    [text]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train/nontopic')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics())
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.train.nontopic.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train/nontopic")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train/nontopic docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train/nontopic')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.train.nontopic')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 6.7K | 18.0% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 26K | 70.6% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train/nontopic")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train/nontopic qrels --format tsv
[query_id]    [doc_id]    [relevance]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train/nontopic')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics(),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.train.nontopic.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 1141
  },
  "qrels": {
    "count": 37383,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 4279,
          "2": 26384,
          "1": 6720
        }
      }
    }
  }
}
Official train set, filtered to only include queries from video pages.
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train/video")
for query in dataset.queries_iter():
    query # namedtuple<query_id, title, desc>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train/video queries
[query_id]    [title]    [desc]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train/video')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pipeline(dataset.get_topics('title'))
You can find more details about PyTerrier retrieval here.
from datamaestro import prepare_dataset
topics = prepare_dataset('irds.nfcorpus.train.video.queries')  # AdhocTopics
for topic in topics.iter():
    print(topic)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocTopics.
Inherits docs from nfcorpus
Language: en
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train/video")
for doc in dataset.docs_iter():
    doc # namedtuple<doc_id, url, title, abstract>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train/video docs
[doc_id]    [url]    [title]    [abstract]
...
You can find more details about the CLI here.
import pyterrier as pt
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train/video')
# Index nfcorpus
indexer = pt.IterDictIndexer('./indices/nfcorpus')
index_ref = indexer.index(dataset.get_corpus_iter(), fields=['url', 'title', 'abstract'])
You can find more details about PyTerrier indexing here.
from datamaestro import prepare_dataset
dataset = prepare_dataset('irds.nfcorpus.train.video')
for doc in dataset.iter_documents():
    print(doc)  # an AdhocDocumentStore
    break
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocDocumentStore
Relevance levels
| Rel. | Definition | Count | % | 
|---|---|---|---|
| 0 | Marginally relevant, based on topic containment. | 0 | 0.0% | 
| 1 | A link exists from the query to another query that directly links to the document. | 6.3K | 22.8% | 
| 2 | A direct link from the query to the document the cited sources section of a page. | 18K | 64.3% | 
Examples:
import ir_datasets
dataset = ir_datasets.load("nfcorpus/train/video")
for qrel in dataset.qrels_iter():
    qrel # namedtuple<query_id, doc_id, relevance>
You can find more details about the Python API here.
ir_datasets export nfcorpus/train/video qrels --format tsv
[query_id]    [doc_id]    [relevance]
...
You can find more details about the CLI here.
import pyterrier as pt
from pyterrier.measures import *
pt.init()
dataset = pt.get_dataset('irds:nfcorpus/train/video')
index_ref = pt.IndexRef.of('./indices/nfcorpus') # assumes you have already built an index
pipeline = pt.BatchRetrieve(index_ref, wmodel='BM25')
# (optionally other pipeline components)
pt.Experiment(
    [pipeline],
    dataset.get_topics('title'),
    dataset.get_qrels(),
    [MAP, nDCG@20]
)
You can find more details about PyTerrier experiments here.
from datamaestro import prepare_dataset
qrels = prepare_dataset('irds.nfcorpus.train.video.qrels')  # AdhocAssessments
for topic_qrels in qrels.iter():
    print(topic_qrels)  # An AdhocTopic
This examples requires that experimaestro-ir be installed. For more information about the returned object, see the documentation about AdhocAssessments.
Bibtex:
@inproceedings{Boteva2016Nfcorpus, title="A Full-Text Learning to Rank Dataset for Medical Information Retrieval", author = "Vera Boteva and Demian Gholipour and Artem Sokolov and Stefan Riezler", booktitle = "Proceedings of the European Conference on Information Retrieval ({ECIR})", location = "Padova, Italy", publisher = "Springer", year = 2016 }{
  "docs": {
    "count": 5371,
    "fields": {
      "doc_id": {
        "max_len": 8,
        "common_prefix": "MED-"
      }
    }
  },
  "queries": {
    "count": 812
  },
  "qrels": {
    "count": 27465,
    "fields": {
      "relevance": {
        "counts_by_value": {
          "3": 3536,
          "2": 17669,
          "1": 6260
        }
      }
    }
  }
}