rubyで日付の補完
例:
ファイルリスト
filelist.xt
xxx.csv2.csv
入力ファイル
../xxx.csv2.csv
00-01-01 100
00-01-03 120
00-01-04 150
00-01-06 160
出力ファイル
xxx.csv
2000-01-01 100
2000-01-02 NA
2000-01-03 120
2000-01-04 150
2000-01-05 NA
2000-01-06 160
$ cat hiduke_ume.rb
require 'date' f=open("filelist.txt","r") filename=[]; f.each{|i| filename.push(i.chomp); } filename2=filename.map{|k| "../"+k;} filename2.length.times{|llll| f2=open(filename2[llll]) puts filename[llll]; f3=open(filename[llll].gsub(".csv2.csv","")+".csv","w") tmp=Hash.new; f2.each{|kk| kk2=kk.split(" ") f123="20"+kk2[0]; tmp[f123]=kk2[1].chomp; } #tmp.each{|j| # puts j; #} #exit() date_min=Date::new(2000,1,1) date_max=Date::new(2012,9,28) j23= (date_max-date_min).to_i ll=(j23).times.map{|k| (date_min+k).to_s} ll.each{|k| if tmp.key?(k) then f3.puts k+" "+tmp[k]; else f3.puts k+" "+"NA"; end } } exit()