Newer
Older
2022-KEGO / mycgi / yamagata.rb
#!/usr/bin/env ruby
require 'csv'
require 'kakasi'
require 'sqlite3'

# 区分,よみ,人口,面積,人口密度 -> 区分,よみ,人口,面積,人口密度,ヨミ,yomi

csv = CSV.read("yamagata-2022.csv", headers:true)
db = SQLite3::Database.new("yamagata.sq3")
db.execute_batch(<<~EOF)
	DROP TABLE IF EXISTS yamagata;
	CREATE TABLE yamagata(kubun, yomi, pops, area, dens, katakana, ascii);
  BEGIN;
	EOF

csv.each do |row|
  values = row.collect{|x| x[-1]}
  values << Kakasi.kakasi('-HK', row["よみ"])	# さかたし → サカタシ
  values << Kakasi.kakasi('-Ha', row["よみ"])	# さかたし → sakatashi
  db.execute("INSERT INTO yamagata VALUES(?,?,?,?,?,?,?)", *values)
  p row
end

db.execute("END;")