我做了一些研究,但找不到更好的解决方案来更改csv文件的格式。 我想将csv文件的行转换为列,并将列转换为行。
例如:
原始csv文件:
a,b,c,d,e,f,g
1,2,3,4,5,6,7
7,6,5,6,4,2,1
我想将上述文件转换为
a,1,7
b,2,6
c,3,5
d,4,4
e,5,3
f,6,2
g,7,1
有没有更简单的解决方案?
答案 0 :(得分:1)
所以你想转置这个数据
transposed = CSV.read("path/to/file.csv").transpose
CSV.open("path/to/file.csv", "w") do |csv|
transposed.each do |row|
csv << row
end
end
#transpose
如果您的csv不是太大而无法立即阅读,那么这很简单。
如果是的话,那就变得非常恐怖。如果是这种情况,请参阅this question的答案。