我有一个 csv,我想根据另一行 [数字] 的输入来处理行 [报告] 的实例。
Report,Number,Name,Date
INC AMT %,12345678,ACME INC,10/30/2012
INC AMT %,12345678,ACME INC,10/31/2012
OUT AMT %,12345678,ACME INC,10/31/2012
# shortened for brevity
我的代码块如下所示:
require 'CSV'
module AlertHash
@alert_hash = {}
CSV.foreach("alerts.csv") do |row|
report, number = row
next if number == "Number"
@alert_hash[number] = report
end
def self.report(number)
@alert_hash[number]
end
end
puts "Alert: " + AlertHash.report("12345678")
# OUTPUT => Alert: OUT AMT %
# DESIRED OUTPUT => Alert: INC AMT %, OUT AMT %
我已经能够处理每个数字的最后一个 [report]stack。但是,我想要的输出是捕获给定行 [number] 的所有报告。有人可以给我一些关于如何做到这一点的指示吗?也许我以错误的方式处理这个问题。