package main
import "fmt"
func main() {
src := map[string]string{
"A0801_000000_201301": "1,321.8",
"A0801_000000_201302": "1,199.8",
"A0801_000000_201309": "1,433.4",
"A0802_000000_201305": "6,688.3",
"A0802_000000_201306": "8,085.2",
"A0802_000000_201307": "9,481.0",
"A0802_000000_201308": "10,878.4",
"A0802_000000_201309": "12,311.8",
"A0802_000000_201310": "13,739.9",
}
rs := map[string]map[string]string{}
for k, v := range src {
if _, ok := rs[k[:5]]; !ok {
rs[k[:5]] = map[string]string{}
}
rs[k[:5]][k[13:]] = v
}
fmt.Println(rs)
}
--------------------------------
map[A0801:map[201309:1,433.4 201301:1,321.8 201302:1,199.8] A0802:map[201308:10,878.4 201309:12,311.8 201310:13,739.9 201305:6,688.3 201306:8,085.2 201307:9,481.0]]