mirror of
				https://github.com/explosion/spaCy.git
				synced 2025-11-04 09:57:26 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			364 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			364 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
//- 💫 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]
 | 
						|
    assert [t.text for t in span] ==  [u'it', u'back', u'!']
 | 
						|
 | 
						|
+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]
 | 
						|
    assert [t.text for t 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-model("vectors")
 | 
						|
 | 
						|
p
 | 
						|
    |  Make a semantic similarity estimate. The default estimate is cosine
 | 
						|
    |  similarity using an average of word vectors.
 | 
						|
 | 
						|
+aside-code("Example").
 | 
						|
    doc = nlp(u'green apples and red oranges')
 | 
						|
    green_apples = doc[:2]
 | 
						|
    red_oranges = doc[3:]
 | 
						|
    apples_oranges = green_apples.similarity(red_oranges)
 | 
						|
    oranges_apples = red_oranges.similarity(green_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
 | 
						|
    +tag-model("parse")
 | 
						|
 | 
						|
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").
 | 
						|
    doc = nlp(u'I like New York in Autumn.')
 | 
						|
    i, like, new, york, in_, autumn, dot = range(len(doc))
 | 
						|
    assert doc[new].head.text == 'York'
 | 
						|
    assert doc[york].head.text == 'like'
 | 
						|
    new_york = doc[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
 | 
						|
    +tag-model("parse")
 | 
						|
 | 
						|
p Tokens that are to the left of the span, whose head is within the span.
 | 
						|
 | 
						|
+aside-code("Example").
 | 
						|
    doc = nlp(u'I like New York in Autumn.')
 | 
						|
    lefts = [t.text for t in doc[3:7].lefts]
 | 
						|
    assert lefts == [u'New']
 | 
						|
 | 
						|
+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
 | 
						|
    +tag-model("parse")
 | 
						|
 | 
						|
p Tokens that are to the right of the span, whose head is within the span.
 | 
						|
 | 
						|
+aside-code("Example").
 | 
						|
    doc = nlp(u'I like New York in Autumn.')
 | 
						|
    rights = [t.text for t in doc[2:4].rights]
 | 
						|
    assert rights == [u'in']
 | 
						|
 | 
						|
+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
 | 
						|
    +tag-model("parse")
 | 
						|
 | 
						|
p Tokens that descend from tokens in the span, but fall outside it.
 | 
						|
 | 
						|
+aside-code("Example").
 | 
						|
    doc = nlp(u'Give it back! He pleaded.')
 | 
						|
    subtree = [t.text for t in doc[:3].subtree]
 | 
						|
    assert subtree == [u'Give', u'it', u'back', u'!']
 | 
						|
 | 
						|
+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-model("vectors")
 | 
						|
 | 
						|
p
 | 
						|
    |  A boolean value indicating whether a word vector is associated with the
 | 
						|
    |  object.
 | 
						|
 | 
						|
+aside-code("Example").
 | 
						|
    doc = nlp(u'I like apples')
 | 
						|
    assert doc[1:].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-model("vectors")
 | 
						|
 | 
						|
p
 | 
						|
    |  A real-valued meaning representation. Defaults to an average of the
 | 
						|
    |  token vectors.
 | 
						|
 | 
						|
+aside-code("Example").
 | 
						|
    doc = nlp(u'I like apples')
 | 
						|
    assert doc[1:].vector.dtype == 'float32'
 | 
						|
    assert doc[1:].vector.shape == (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-model("vectors")
 | 
						|
 | 
						|
p
 | 
						|
    |  The L2 norm of the span's vector representation.
 | 
						|
 | 
						|
+aside-code("Example").
 | 
						|
    doc = nlp(u'I like apples')
 | 
						|
    doc[1:].vector_norm # 4.800883928527915
 | 
						|
    doc[2:].vector_norm # 6.895897646384268
 | 
						|
    assert doc[1:].vector_norm != doc[2:].vector_norm
 | 
						|
 | 
						|
+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 hash value 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.
 |