Skip to content

Instantly share code, notes, and snippets.

@ashaw
Created May 26, 2010 20:31
Show Gist options
  • Save ashaw/415003 to your computer and use it in GitHub Desktop.
Save ashaw/415003 to your computer and use it in GitHub Desktop.
#State,attribute
#California,sunshine
#California,beaches
#Texas,oil
#Texas,rock_festivals
s = TableFu.new(csv)
s.faceted_by("State").each do |state|
puts state.row
end
#or even better
s.faceted_by("State").each do |state|
puts state.row['attribute']
end
@thejefflarson
Copy link

Yeah it's always gunna be a bit clunky for the one common column. but you can now do row[key] for all rows. and then you can accomplish this with:

s.faceted_by("State").map { |state|
   state.rows.map { |row| row['attribute'] }
}.flatten
# ['sunshine', 'beaches', 'oil', 'rock festivals']

Of course rather than all these hoops, you can also just grab the original table and loop through the rows[key]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment