これはF#用です。
町、人口、自治体、地方または都市のタイプの 4 つの行を持つ .data ファイルがあります。Int32.Parse を使用して、列「population」を既に解析しました。
私の質問は、自治体名に基づいてすべての行の人口を追加するにはどうすればよいですか? これは、同じ自治体に属するいくつかの町があり、同じ自治体にあるこれらの人口を追加したいということです。
これは私がこれまでに持っているコードです。
open System
let rec convertDataRow(csvLine:string) =
let cells = List.ofSeq(csvLine.Split(','))
match cells with
| name :: popul :: county :: townorcommune :: _ ->
let parsedNumber = Int32.Parse(popul)
(name, parsedNumber, county, townorcommune)
| _ -> failwith "Incorrect data format!"
let rec processLines (lines) =
match lines with
| [] -> []
| currentLine :: remaining ->
let parsedLine = convertDataRow(currentLine)
let parsedRest = processLines(remaining)
parsedLine :: parsedRest
open System.IO
let lines = List.ofSeq(File.ReadAllLines(@"C:\Users\townspopulation.data"))
processLines(lines)