西那須野図書館で久しぶりに恋するプログラム―Rubyでつくる人工無脳借りてきました。マルコフ連鎖の辺りを読んでましたけど、あの例は原データの出現頻度とか数えるのに重みに使わないのね。Array#sampleが新しくなるのは待てないのでそーゆーのを支援する小さな集合書いてみたー。 @dict = BagInBag.new { BagInBag.new { Bag.new } } @start = Bag.new こんな風に使う。 下のは自分のツイート(Drip上に集めておいたやつ)を元に自分風の文を生成する例。 https://github.com/seki/Drip/blob/master/sample/tw_markov.rb コードを使いこなせる上司になろう。 初刷な気がしますね、大家さん。レンタカーとかも当然だめだよ! あ。シキジカだけでなく、frozenなStringに対しても動作