//- 💫 DOCS > API > SPAN include ../../_includes/_mixins p A slice from a #[+api("doc") #[code Doc]] object. +h(2, "init") Span.__init__ +tag method p Create a Span object from the #[code slice doc[start : end]]. +aside-code("Example"). doc = nlp(u'Give it back! He pleaded.') span = doc[1:4] print([token.text for token in span]) # ['it', 'back', '!'] +table(["Name", "Type", "Description"]) +row +cell #[code doc] +cell #[code Doc] +cell The parent document. +row +cell #[code start] +cell int +cell The index of the first token of the span. +row +cell #[code end] +cell int +cell The index of the first token after the span. +row +cell #[code label] +cell int +cell A label to attach to the span, e.g. for named entities. +row +cell #[code vector] +cell #[code numpy.ndarray[ndim=1, dtype='float32']] +cell A meaning representation of the span. +footrow +cell returns +cell #[code Span] +cell The newly constructed object. +h(2, "getitem") Span.__getitem__ +tag method p Get a #[code Token] object. +aside-code("Example"). doc = nlp(u'Give it back! He pleaded.') span = doc[1:4] assert span[1].text == 'back' +table(["Name", "Type", "Description"]) +row +cell #[code i] +cell int +cell The index of the token within the span. +footrow +cell returns +cell #[code Token] +cell The token at #[code span[i]]. p Get a #[code Span] object. +aside-code("Example"). doc = nlp(u'Give it back! He pleaded.') span = doc[1:4] assert span[1:3].text == 'back!' +table(["Name", "Type", "Description"]) +row +cell #[code start_end] +cell tuple +cell The slice of the span to get. +footrow +cell returns +cell #[code Span] +cell The span at #[code span[start : end]]. +h(2, "iter") Span.__iter__ +tag method p Iterate over #[code Token] objects. +aside-code("Example"). doc = nlp(u'Give it back! He pleaded.') span = doc[1:4] print([token.text for token in span]) # ['it', 'back', '!'] +table(["Name", "Type", "Description"]) +footrow +cell yields +cell #[code Token] +cell A #[code Token] object. +h(2, "len") Span.__len__ +tag method p Get the number of tokens in the span. +aside-code("Example"). doc = nlp(u'Give it back! He pleaded.') span = doc[1:4] assert len(span) == 3 +table(["Name", "Type", "Description"]) +footrow +cell returns +cell int +cell The number of tokens in the span. +h(2, "similarity") Span.similarity +tag method +tag requires model p | Make a semantic similarity estimate. The default estimate is cosine | similarity using an average of word vectors. +aside-code("Example"). apples, and, oranges = nlp(u'apples and oranges') apples_oranges = apples.similarity(oranges) oranges_apples = oranges.similarity(apples) assert apples_oranges == oranges_apples +table(["Name", "Type", "Description"]) +row +cell #[code other] +cell - +cell | The object to compare with. By default, accepts #[code Doc], | #[code Span], #[code Token] and #[code Lexeme] objects. +footrow +cell returns +cell float +cell A scalar similarity score. Higher is more similar. +h(2, "merge") Span.merge +tag method p Retokenize the document, such that the span is merged into a single token. +table(["Name", "Type", "Description"]) +row +cell #[code **attributes] +cell - +cell | Attributes to assign to the merged token. By default, attributes | are inherited from the syntactic root token of the span. +footrow +cell returns +cell #[code Token] +cell The newly merged token. +h(2, "root") Span.root +tag property p | The token within the span that's highest in the parse tree. If there's a | tie, the earlist is prefered. +aside-code("Example"). tokens = nlp(u'I like New York in Autumn.') i, like, new, york, in_, autumn, dot = range(len(tokens)) assert tokens[new].head.text == 'York' assert tokens[york].head.text == 'like' new_york = tokens[new:york+1] assert new_york.root.text == 'York' +table(["Name", "Type", "Description"]) +footrow +cell returns +cell #[code Token] +cell The root token. +h(2, "lefts") Span.lefts +tag property p Tokens that are to the left of the span, whose head is within the span. +table(["Name", "Type", "Description"]) +footrow +cell yields +cell #[code Token] +cell A left-child of a token of the span. +h(2, "rights") Span.rights +tag property p Tokens that are to the right of the span, whose head is within the span. +table(["Name", "Type", "Description"]) +footrow +cell yields +cell #[code Token] +cell A right-child of a token of the span. +h(2, "subtree") Span.subtree +tag property p Tokens that descend from tokens in the span, but fall outside it. +table(["Name", "Type", "Description"]) +footrow +cell yields +cell #[code Token] +cell A descendant of a token within the span. +h(2, "has_vector") Span.has_vector +tag property +tag requires model p | A boolean value indicating whether a word vector is associated with the | object. +aside-code("Example"). apple = nlp(u'apple') assert apple.has_vector +table(["Name", "Type", "Description"]) +footrow +cell returns +cell bool +cell Whether the span has a vector data attached. +h(2, "vector") Span.vector +tag property +tag requires model p | A real-valued meaning representation. Defaults to an average of the | token vectors. +aside-code("Example"). apple = nlp(u'apple') (apple.vector.dtype, apple.vector.shape) # (dtype('float32'), (300,)) +table(["Name", "Type", "Description"]) +footrow +cell returns +cell #[code numpy.ndarray[ndim=1, dtype='float32']] +cell A 1D numpy array representing the span's semantics. +h(2, "vector_norm") Span.vector_norm +tag property +tag requires model p | The L2 norm of the span's vector representation. +table(["Name", "Type", "Description"]) +footrow +cell returns +cell float +cell The L2 norm of the vector representation. +h(2, "attributes") Attributes +table(["Name", "Type", "Description"]) +row +cell #[code doc] +cell #[code Doc] +cell The parent document. +row +cell #[code sent] +cell #[code Span] +cell The sentence span that this span is a part of. +row +cell #[code start] +cell int +cell The token offset for the start of the span. +row +cell #[code end] +cell int +cell The token offset for the end of the span. +row +cell #[code start_char] +cell int +cell The character offset for the start of the span. +row +cell #[code end_char] +cell int +cell The character offset for the end of the span. +row +cell #[code text] +cell unicode +cell A unicode representation of the span text. +row +cell #[code text_with_ws] +cell unicode +cell | The text content of the span with a trailing whitespace character | if the last token has one. +row +cell #[code label] +cell int +cell The span's label. +row +cell #[code label_] +cell unicode +cell The span's label. +row +cell #[code lemma_] +cell unicode +cell The span's lemma. +row +cell #[code ent_id] +cell int +cell The integer ID of the named entity the token is an instance of. +row +cell #[code ent_id_] +cell unicode +cell The string ID of the named entity the token is an instance of.