我对Scala很新,但从我读过的内容看来,它似乎是处理我正在处理的项目的理想语言。从列表中获得匹配谓词的子列表
我有一个非常大的CSV文件,该文件是这样的:
INDEX, CITY, COST
7 , London, 500
7 , Paris, 200
11 , Rome, 300
11 , New York, 100
11 , Madrid, 7
我想在CSV文件的读取和生产都具有相同的指标,一个指标在时间元素的列表。
从上面的例子,我想获得包含行的列表:
7, London, 500
7, Paris, 200
和包含行的第二列表:
11, Rome, 300
11, New York, 100
11, Madrid, 7
这是很容易在CSV文件中读取:
val iter = src.getLines().drop(1).map(_.split(",")) //from SO :)
但是,我正在努力寻找一种干净的方式来生成我的子列表。在我看来,应该有一个很好,简洁的方式来实现这个使用Scala。由于有很多数据,我特别喜欢这些数据被延迟加载。你能建议我怎么做到这一点?
所有数据按索引排列(尽管索引不是顺序的),而且我正在使用的CSV文件不包含任何嵌套逗号或转义字符。
对不起,不,我没有遇到问题,这只是我想要的代码实现。我无法弄清楚如何按索引对行进行分组,本质上我想要一个Array [Array [String]]在索引列中将每行都用相同的值分组。 – Peter 2011-05-23 12:09:58