Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/igrigorik/rb-pagerank

Code from RailsConf '09 pres: Building Mini Google in Ruby
https://github.com/igrigorik/rb-pagerank

Last synced: about 2 months ago
JSON representation

Code from RailsConf '09 pres: Building Mini Google in Ruby

Awesome Lists containing this project

README

        

= Computing PageRank in Ruby
Notes & code from RailsConf 2009 presentation: http://en.oreilly.com/rails2009/public/schedule/detail/7966

Slides: http://bit.ly/railsconf-pagerank

== Example:

# page 1 -> page 2 (0.33)
# page 2 -> page 3 (0.33)
# page 3 -> page 1 (0.33)
puts "Circular: ", pagerank(Matrix[[0,0,1], [0,0,1], [1,0,0]])

# page 1 -> page 3 (0.05) # page 1 & page 2 have minimal postrank values
# page 2 -> page 3 (0.05) # min value = min(t * Teleport Vector)
# page 3 -> page 3 (0.09) # for uniform teleport vector, min = t * (1/N)
puts "Star: ", pagerank(Matrix[[0,0,0], [0,0,0], [1,1,1]])

# page 1 -> page 2, page 3 (0.05)
# page 2 -> page 3 (0.07)
# page 3 -> page 3, page 3 (0.87)
puts "Converge: ", pagerank(Matrix[[0,0,0], [0.5,0,0], [0.5,1,1]])

# page 1 -> page 1, page 2 (0.18)
# page 2 -> page 1, page 3 (0.13)
# page 3 -> page 3 (0.69)
puts "Linked:", pagerank(Matrix[[0.5,0.5,0], [0.5,0,0], [0,0.5,1.0]])