hogeとはワイルドカードのようなものです。日々起こった、さまざまなこと −すなわちワイルドカード− を取り上げて日記を書く、という意味で名付けたのかというとそうでもありません。適当に決めたらこんな理由が浮かんできました。
05/28/2006 ふーむ [長年日記]
tDiary 1312日目
■ [Py][戯言] ふーむ
暇だったので MeCabとPythonでマルコフ連鎖を書いてみる(改) を参考に以下のようなコード書いてみた.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import random
import MeCab
import feedparser
def wakati(text):
t = MeCab.Tagger("-Owakati")
m = t.parse(text)
result = m.rstrip(" \n").split(" ")
return result
def create_markov_table(wordlist, level=2):
def check_word(words):
return len([w for w in words if w]) == len(words)
markov = {}
tmpword = ["" for i in range(level)]
for word in wordlist:
if check_word(tmpword):
key = tuple(tmpword)
try:
markov[key].append(word)
except KeyError:
markov[key] = [word]
tmpword = tmpword[1:] + [word]
return markov
def gen_sentence(markov, level=2):
count = 0
sentence = []
tmpword = random.choice(markov.keys())
while count < len(wordlist):
try:
tmp = random.choice(markov[tmpword])
sentence.append(tmp)
tmpword = tuple(list(tmpword)[1:] + [tmp])
except KeyError:
pass
count += 1
return ''.join(sentence)
def cnet_news():
f = feedparser.parse("http://feed.japan.cnet.com/rss/index.rdf")
text = "\n".join([s["summary"].split("\n")[0] for s in f.entries])
return text.encode("utf-8")
if __name__ == "__main__":
level = 4
src = cnet_news()
wordlist = wakati(src)
markov = create_markov_table(wordlist, level)
sentence = gen_sentence(markov, level)
print unicode(sentence, "utf-8")
イマイチよくわかってないけど,謎な文章が出力される.
■ [小ネタ] 出版社占い
via: kinnekoの日記
「あなたはマガジンハウスタイプです!マガジンハウスは、旧名である平凡出版の頃から、ファッションや社会風俗における最先端の流行を作り出してきた出版社です。「an an」「POPEYE」「BRUTUS」などの代表的雑誌が、1960年代以降の若者たちに与えてきた影響は計り知れないものがあります。あなたは誰からもかっこいい、と思われる洗練されたお洒落さん。身だしなみに気を遣いますし、社会的な礼儀もわきまえています。また、新しいものには目がなく、興味を持ったものは何でも試してみる、行動的な一面もあります。加えて、創造的な才能という面でも抜きん出ています。クリエイティブな仕事に非常に向いた資質を持っていると言えるでしょう。しかし、筋が通らないことは納得がいかない頑固者で、また自分のしたいことしかしないという、ややわがままな面があり、「変人」というレッテルを貼られがちですが、むしろそれを嬉々として受け入れている感があります。また、実際の内面より悪ぶったり、軽い人ぶったりしてしまう偽悪的な一面もあります。そんなあなたを理解してくれる人はごく少数であり、心の中は常に孤独です。まず、偽悪ぶるのは止めて、もっとありのままの自分で人と向き合うようにすることが重要です。なお、非常に飽きっぽい一面もありますので、注意してください。代表的な刊行物:an・an、Hanako、 POPEYE、BRUTUS、Kunel」
あー,確かに飽きっぽいね.
[ツッコミを入れる]