3章 その10 階層的クラスタの出力
名前付き引数をインクリメントだと勘違いしてた。
printclust(clust.left, labels=labels, n=n+1)
のn=n+1はpythonでは名前付き引数なので、別にインクリメントしているわけじゃなかった。
cluster.rbにprintclust関数を追加
http://www.bitbucket.org/shokai/collective-intelligence-study/src/cadaac71b6aa/03/clusters.rb
# 階層型クラスタを出力する def printclust(clust,labels=nil,n=0) # 階層型レイアウトにするためにインデントする n.times do print ' ' end if clust.id < 0 # 負のidはこれが枝である事を示している puts '-' else # 正のidはこれが終端だということを示している if labels == nil puts clust.id else puts labels[clust.id] end end # 右と左の枝を表示する printclust(clust.left, labels, n+1) if clust.left != nil printclust(clust.right, labels, n+1) if clust.right != nil end
再帰してどんどん書いていく。rubyに名前付き引数は無いっぽいのでn+1だけになった
動かす
test.rbとして保存
require 'clusters.rb' cs = Clusters.new blognames,words,data = cs.readline('myblogdata.txt') clust = cs.hcluster(data) cs.printclust(clust, blognames)
ruby test.rb > blogname-tree
http://www.bitbucket.org/shokai/collective-intelligence-study/src/cadaac71b6aa/03/blogname-tree
-
-
Pharyngula
-
-
MAKE Magazine
-
Jeremy Zawodny's blog
-
Engadget
TMZ.com
-
-
Slashdot
-
The Blotter
-
Hot Air 損 Top Picks
-
Little Green Footballs
-
NewsBusters.org - Exposing Liberal Media Bias
-
Power Line
-
Wonkette: The D.C. Gossip
-
The Daily Dish | By Andrew Sullivan
Think Progress
-
Bloglines | News
-
-
SpikedHumor - Today's Videos and Pictures
-
-
Creating Passionate Users
Schneier on Security
-
-
Crooks and Liars
-
Daily Kos
-
-
Stepcase Lifehack
43 Folders
-
Talking Points Memo
-
ReadWriteWeb
-
A Consuming Experience (full feed)
-
Google Operating System
-
GoFugYourself
Bloggers Blog: Blogging the Blogsphere
-
we make money not art
-
ScienceBlogs : Combined Feed
-
How to Change the World
-
-
-
Download Squad
The Unofficial Apple Weblog (TUAW)
-
Joystiq
Autoblog
-
-
-
Deadspin
-
Lifehacker
-
Kotaku
-
Gawker
-
Valleywag
Gizmodo
-
-
456 Berea Street
-
Micro Persuasion
-
Signal vs. Noise
Seth's Blog
-
Search Engine Roundtable
TreeHugger
-
Techdirt
-
-
The Full Feed from HuffingtonPost.com
-
Wired Top Stories
Gothamist
-
Boing Boing
John Battelle's Searchblog
-
CoolerHeads Prevail
-
MetaFilter
-
Online Marketing Report
-
Cool Hunting
-
Joi Ito's Web
-
-
Search Engine Watch Blog
Neil Gaiman's Journal
-
The Official Google Blog
-
Eschaton
The Viral Garden
-
Giga Omni Media, Inc.
-
Dave Shea's mezzoblue
-
flagrantdisregard
-
Joel on Software
-
Captain's Quarters
-
-
blog maverick
BuzzMachine
-
Copyblogger
-
Topix.net Weblog
-
-
Steve Pavlina's Personal Development Blog
-
Oilman
-
Quick Online Tips
-
ProBlogger Blog Tips
-
Sifry's Alerts
-
PaulStamatiou.com
-
-
TechCrunch
-
-
Google Blogoscoped
Matt Cutts: Gadgets, Google, and SEO
-
Publishing 2.0
Mashable!
-
ongoing
Scobleizer -- Tech geek blogger
-
-
SimpleBits
plasticbag.org
-
WWdN: In Exile
-
Shoemoney - Skills To Pay The Bills
-
-
Instapundit.com (v.2)
gapingvoid: "cartoons drawn on the back of business cards"
-
Joho the Blog
-
Michelle Malkin
-
kottke.org
-
Derek Powazek
-
The Superficial - Because You're Ugly
Celebrity gossip juicy celebrity rumors Hollywood gossip blog from Perez Hiltonちなみに、blogdata.txtでやるとp.41と同じように
John Battelle's Searchblog
-
Search Engine Watch Blog
-
Read/WriteWeb
-
Official Google Blog
-
Search Engine Roundtable
-
Google Operating System
Google Blogoscopedが出力される。(これは出力の真ん中あたり)