25 lines
416 B
Plaintext
25 lines
416 B
Plaintext
var csv = require('Text::CSV').new(
|
|
Hash(eol => "\n")
|
|
);
|
|
|
|
# Open
|
|
var csvfile = %f'data.csv';
|
|
var fh = csvfile.open_r;
|
|
|
|
# Read
|
|
var rows = [];
|
|
var header = csv.getline(fh);
|
|
while (var row = csv.getline(fh)) {
|
|
rows.append(row.map{.to_num});
|
|
}
|
|
|
|
# Process
|
|
header.append('SUM');
|
|
rows.each { |row| row.append(row.sum) };
|
|
|
|
# Write
|
|
var out = csvfile.open_w;
|
|
[header, rows...].each { |row|
|
|
csv.print(out, row);
|
|
};
|