class Datasets::Iris
Constants
- Record
Public Class Methods
new()
click to toggle source
Calls superclass method
Datasets::Dataset::new
# File lib/datasets/iris.rb, line 13 def initialize super() @metadata.id = "iris" @metadata.name = "Iris" @metadata.url = "https://archive.ics.uci.edu/ml/datasets/Iris" @metadata.description = lambda do read_names end end
Public Instance Methods
each() { |record| ... }
click to toggle source
# File lib/datasets/iris.rb, line 23 def each return to_enum(__method__) unless block_given? open_data do |csv| csv.each do |row| next if row[0].nil? record = Record.new(*row) yield(record) end end end
Private Instance Methods
open_data() { |csv| ... }
click to toggle source
# File lib/datasets/iris.rb, line 36 def open_data data_path = cache_dir_path + "iris.csv" unless data_path.exist? data_url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data" download(data_path, data_url) end CSV.open(data_path, converters: [:numeric]) do |csv| yield(csv) end end
read_names()
click to toggle source
# File lib/datasets/iris.rb, line 47 def read_names names_path = cache_dir_path + "iris.names" unless names_path.exist? names_url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.names" download(names_path, names_url) end names_path.read end