class Markov::TransitionTable(LinkType)
- Markov::TransitionTable(LinkType)
- Hash(LinkType, Markov::TransitionMatrix(LinkType))
- Reference
- Object
Overview
A TransitionTable represents a mapping of keys to TransitionMatrix's.
Defined in:
Constructors
-
.new(pull : JSON::PullParser)
Makes it possible to use
#to_jsonand#from_json(see Crystal docs) -
.new
Creates a new empty
TransitionMatrix.
Instance Method Summary
-
#add(key : LinkType)
Inserts
keyinto last addedkey'sTransitionMatrix, if applicable, and creates newTransitionMatrixforkeyif not already there. -
#fill(table_with sample : Array(LinkType))
Sequentially fills
TransitionTablewith values in givenArrayusing#addmethod. -
#probable(after key : LinkType) : LinkType
Returns probable transition from the
TransitionMatrixassociated with key provided. -
#probable?(after key : LinkType) : LinkType?
Returns probable transition from the
TransitionMatrixassociated with key provided. -
#random_key : LinkType
Returns random key.
-
#random_matrix : TransitionMatrix(LinkType)
Returns random
TransitionMatrixfrom table. -
#reset
tt.probable? after: "gatsby" #=> nil tt.probable? after: "great" #=> "expectations" or "gatsby"
`
Constructor Detail
Makes it possible to use #to_json and #from_json (see Crystal docs)
Instance Method Detail
Inserts key into last added key's TransitionMatrix, if applicable,
and creates new TransitionMatrix for key if not already there.
Sequentially fills TransitionTable with values in given Array using #add method.
Just a shortcut for looping through array and #adding elements.
string_array = %w(some say the world will end in fire)
tt = Markov::TransitionTable(String).new
tt.fill table_with: string_array
Returns probable transition from the TransitionMatrix associated with key provided.
Will raise EmptyTransitionMatrixException if no probable transition is available.
string_array = %w(some say the world will end in fire)
tt = Markov::TransitionTable(String).new
tt.fill table_with: string_array
tt.probable? after: "world" # => "will"
tt.probable? after: "fire" # raises `EmptyTransitionMatrixException`
Returns probable transition from the TransitionMatrix associated with key provided.
Returns nil if no probable transition is available.
string_array = %w(some say the world will end in fire)
tt = Markov::TransitionTable(String).new
tt.fill table_with: string_array
tt.probable? after: "world" # => "will"
tt.probable? after: "fire" # => nil
Returns random key.
Will raise EmptyTransitionTableException if TransitionTable is empty.
tt.probable? after: "gatsby" #=> nil tt.probable? after: "great" #=> "expectations" or "gatsby"