Class: Spacy::Lexeme

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby-spacy.rb

Overview

See also spaCy Python API document for [‘Lexeme`](spacy.io/api/lexeme).

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(py_lexeme) ⇒ Lexeme

It is recommended to use Spacy::Language#vocab or Token#lexeme methods to create tokens. There is no way to generate a lexeme from scratch but relying on a pre-exising Python Spacy::Lexeme object.

Parameters:

  • Python ‘Lexeme` object



978
979
980
981
# File 'lib/ruby-spacy.rb', line 978

def initialize(py_lexeme)
  @py_lexeme = py_lexeme
  @text = @py_lexeme.text
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args) ⇒ Object

Methods defined in Python but not wrapped in ruby-spacy can be called by this dynamic method handling mechanism.



1033
1034
1035
# File 'lib/ruby-spacy.rb', line 1033

def method_missing(name, *args)
  @py_lexeme.send(name, *args)
end

Instance Attribute Details

#py_lexemeObject (readonly)

Returns a Python ‘Lexeme` instance accessible via `PyCall`.

Returns:

  • a Python ‘Lexeme` instance accessible via `PyCall`



970
971
972
# File 'lib/ruby-spacy.rb', line 970

def py_lexeme
  @py_lexeme
end

#textString (readonly)

Returns a string representing the token.

Returns:

  • a string representing the token



973
974
975
# File 'lib/ruby-spacy.rb', line 973

def text
  @text
end

Instance Method Details

#langString

Returns the language by calling ‘lang_’ of ‘@py_lexeme` object

Returns:



1003
1004
1005
# File 'lib/ruby-spacy.rb', line 1003

def lang
  @py_lexeme.lang_
end

#lowerString

Returns the lowercase form by calling ‘lower_’ of ‘@py_lexeme` object

Returns:



991
992
993
# File 'lib/ruby-spacy.rb', line 991

def lower
  @py_lexeme.lower_
end

#normString

Returns the lexemes’s norm, i.e. a normalized form of the lexeme calling ‘norm_’ of ‘@py_lexeme` object

Returns:



1021
1022
1023
# File 'lib/ruby-spacy.rb', line 1021

def norm
  @py_lexeme.norm_
end

#prefixString

Returns the length-N substring from the start of the word by calling ‘prefix_’ of ‘@py_lexeme` object

Returns:



1009
1010
1011
# File 'lib/ruby-spacy.rb', line 1009

def prefix
  @py_lexeme.prefix_
end

#respond_to_missing?(sym, *args) ⇒ Boolean

Returns:



1037
1038
1039
# File 'lib/ruby-spacy.rb', line 1037

def respond_to_missing?(sym, *args)
  sym ? true : super
end

#shapeString

Returns the shape (e.g. “Xxxxx”) by calling ‘shape_’ of ‘@py_lexeme` object

Returns:



997
998
999
# File 'lib/ruby-spacy.rb', line 997

def shape
  @py_lexeme.shape_
end

#similarity(other) ⇒ Float

Returns a semantic similarity estimate.

Parameters:

  • the other lexeme to which a similarity estimation is made

Returns:



1028
1029
1030
# File 'lib/ruby-spacy.rb', line 1028

def similarity(other)
  @py_lexeme.similarity(other.py_lexeme)
end

#suffixString

Returns the length-N substring from the end of the word by calling ‘suffix_’ of ‘@py_lexeme` object

Returns:



1015
1016
1017
# File 'lib/ruby-spacy.rb', line 1015

def suffix
  @py_lexeme.suffix_
end

#to_sString

String representation of the token.

Returns:



985
986
987
# File 'lib/ruby-spacy.rb', line 985

def to_s
  @text
end