ledger: GDP(nominal) by country table (222 rows) scraped from Wikipedia

This commit is contained in:
ledger committed 2026-10-25 06:01:24 +00:00
1 parent fe4ef9f102
commit 589e006ece
2 files changed
+269

No files matched your search

+223
View File
@@ -0,0 +1,223 @@
Country/Territory,IMF(2026),World Bank(2025),United Nations(2024)
World,"128,003,776","118,350,166","111,565,144"
United States,"32,642,373","30,769,700","29,298,000"
China[n 1],"21,546,403","19,498,039","18,743,802"
Germany,"5,471,299","5,050,923","4,659,929"
Japan,"4,341,986","4,435,163","4,026,211"
United Kingdom,"4,268,446","4,002,588","3,685,881"
India,"4,060,207","3,956,067","3,952,244"
France,"3,554,155","3,366,316","3,160,443"
Russia,"2,861,156","2,561,310","2,173,386"
Italy,"2,701,737","2,551,557","2,380,825"
Brazil,"2,654,761","2,279,920","2,185,822"
Canada,"2,490,256","2,319,900","2,270,076"
South Korea,"2,245,847","1,872,375","1,875,388"
Mexico,"2,176,236","1,832,641","1,852,723"
Australia,"2,110,657","1,798,519","1,830,610"
Spain,"2,085,276","1,906,453","1,722,746"
Turkey,"1,817,987","1,597,293","1,323,255"
Indonesia,"1,479,954","1,445,643","1,396,300"
Netherlands,"1,423,856","1,332,768","1,214,928"
Saudi Arabia,"1,343,346","1,276,943","1,254,141"
Switzerland,"1,135,739","1,043,530","936,564"
Poland,"1,133,088","1,035,492","914,696"
Taiwan[n 3],"1,019,696",—N/a
Belgium,"772,699","725,466","664,564"
Argentina,"768,206","683,098","638,365"
Israel,"746,982","610,778","542,286"
Sweden,"745,081","668,999","604,899"
Ireland,"709,972","721,701","577,389"
Singapore,"667,889","603,870","547,387"
United Arab Emirates,"661,018","552,325 (2024)","552,325"
Norway,"651,712","530,756","483,593"
Austria,"616,896","579,470","534,791"
Thailand,"599,115","577,010","526,518"
Colombia,"572,735","457,410","418,542"
Malaysia,"547,100","472,193","421,972"
Vietnam,"542,130","514,697","476,388"
Bangladesh,"506,357","456,319","432,742"
Philippines,"501,692","487,086","461,618"
Denmark,"499,354","462,527","424,525"
South Africa,"489,083","427,184","401,145"
Romania,"470,091","428,678","382,770"
Hong Kong[n 4],"455,156","427,310","406,863"
Pakistan,"450,134","407,307","379,120"
Egypt,"442,886","365,255","306,907"
Czech Republic,"427,953","391,027","345,037"
Chile,"402,243","357,371","330,267"
Peru,"399,593","334,855","289,329"
Kazakhstan,"397,921","306,239","291,480"
Nigeria,"386,671","290,794","252,084"
Portugal,"375,197","346,640","313,271"
Finland,"338,564","317,039","298,697"
Algeria,"331,894","287,031","266,972"
Iran,"311,950","362,682","448,092"
Greece,"304,627","280,636","257,145"
New Zealand,"273,395","264,057","260,172"
Hungary,"265,911","246,490","222,905"
Cuba,—N/a,"107,352 (2020)","252,063"
Iraq,"245,234","254,367","279,641"
Ukraine[n 5],"229,406","214,233","190,741"
Qatar,"203,044","215,560","219,163"
Morocco,"195,632","182,374","160,606"
Uzbekistan,"178,167","147,038","114,965"
Slovakia,"167,062","154,530","141,776"
Angola,"157,297","122,175","117,159"
Kenya,"151,151","135,941","120,340"
Kuwait,"146,911","157,209","160,227"
Bulgaria,"146,507","130,777","113,343"
Dominican Republic,"146,362","127,407","124,282"
Ecuador,"138,199","130,321","124,676"
Puerto Rico,"133,222","129,368","125,842"
Guatemala,"132,270","123,306","113,200"
Ghana,"128,638","114,210","82,938"
Ethiopia,"127,145","126,359","142,275"
DR Congo,"122,281","91,031","75,322"
Oman,"121,397","109,605","107,137"
Croatia,"115,915","105,060","92,662"
Ivory Coast,"112,115","99,774","85,894"
Serbia,"112,025","99,953","89,074"
Venezuela,"111,303","99,661","150,494"
Luxembourg,"110,417","101,158","93,280"
Costa Rica,"109,931","102,905","95,350"
Sri Lanka,"98,964 (2024)","108,825","98,714"
Lithuania,"105,907","95,210","84,869"
Belarus,"102,042","93,397","75,962"
Uruguay,"96,092","85,348","80,962"
Panama,"95,024","90,463","86,260"
Tanzania[n 6],"94,889","90,143","79,236"
Slovenia,"86,732","79,648","72,485"
Myanmar,"83,832","81,666","64,796"
Turkmenistan,"83,065","49,829","68,655"
Bolivia,"80,743","64,769","46,627"
Azerbaijan,"78,372","75,938","74,316"
Uganda,"73,370","61,986","56,369"
Cameroon,"65,135","58,933","53,297"
Jordan,"64,909","61,610","53,352"
Tunisia,"60,745","57,503","53,493"
Paraguay,"60,542","49,278","44,739"
Zimbabwe,"56,713","51,216","45,719"
Macau[n 7],"54,228","52,061","49,467"
Latvia,"53,686","48,619","43,684"
Libya,"52,453","48,099","48,484"
Cambodia,"52,379","51,267","45,913"
Estonia,"51,634","47,031","42,765"
Bahrain,"48,849","48,966","47,110"
Nepal,"45,844","45,490","42,692"
Cyprus[n 8],"45,171","41,226","37,635"
Sudan,"44,688","60,163","25,574"
Iceland,"43,800","38,583","33,222"
Georgia[n 9],"42,716","38,144","34,192"
Honduras,"41,505","39,601","37,094"
Zambia,"41,243","28,880","25,303"
Senegal,"40,469","37,007","36,715"
El Salvador,"39,838","36,708","35,365"
Haiti,"39,180","32,077","25,312"
Bosnia and Herzegovina,"36,771","32,600","30,478"
Lebanon,"34,497 (2025)","25,972 (2024)","37,990"
Papua New Guinea,"34,403","32,499","32,262"
Guyana,"33,961","27,097","24,659"
Mali,"33,847","30,069","26,588"
Albania,"33,333","30,540","27,037"
Burkina Faso,"32,513","27,627","23,250"
Armenia,"31,873","29,243","25,955"
Malta,"30,712","27,772","25,030"
Guinea,"29,930","28,346","36,465"
Mongolia,"28,450","25,369","23,586"
Benin,"27,786","24,566","21,483"
Trinidad and Tobago,"26,836","25,943","25,634"
Chad,"25,628","21,473","19,906"
Niger,"24,813","21,646","17,491"
Nicaragua,"24,227","22,237","19,694"
Kyrgyzstan,"23,606","22,624","17,478"
Gabon,"23,363","21,427","20,867"
Mozambique,"23,275","22,338","22,745"
Jamaica,"23,028","22,705","22,014"
Botswana,"21,937","19,928","19,401"
Moldova[n 10],"21,889","20,352","18,200"
North Macedonia,"21,605","19,101","16,952"
Madagascar,"21,185","19,620","17,421"
Tajikistan,"20,418","17,661","13,949"
Afghanistan,"19,662 (2025)","17,779 (2024)","18,283"
Laos,"18,959","18,303","16,129"
Rwanda,"18,673","16,372","15,111"
Malawi,"18,309","14,918","11,734"
Namibia,"17,314","15,080","13,372"
Syria,"60,043 (2010)","23,738 (2022)","17,254"
North Korea,—N/a,—N/a,"17,199"
Palestine[n 11][n 12],"16,017 (2024)","17,167","16,017"
Mauritius,"17,119","16,158","14,953"
Bahamas,"17,042","15,833 (2024)","15,833"
Congo,"17,028","16,307","16,412"
Brunei,"16,863","15,032","15,463"
Mauritania,"14,352","11,680","10,912"
Somalia,"14,174","12,995","11,966"
Kosovo,"14,053","12,456","11,154"
Equatorial Guinea,"13,722","12,823","12,288"
Togo,"13,437","11,890","10,163"
Channel Islands,—N/a,"12,507 (2023)",—N/a
Monaco,—N/a,"11,126 (2024)","11,126"
Montenegro,"10,227","9,233","8,274"
Liechtenstein,"9,442","8,906 (2024)","8,628"
Bermuda,—N/a,"9,194 (2024)","8,840"
New Caledonia,—N/a,"8,549 (2024)","8,549"
Barbados,"8,483","8,017","7,598"
Sierra Leone,"8,270","7,464","6,792"
Burundi,"8,137","3,365","4,431"
Maldives,"8,130","7,741","7,062"
Cayman Islands,—N/a,"7,765 (2024)","7,657"
Isle of Man,—N/a,"7,576 (2023)",—N/a
Yemen,"7,435","21,606 (2018)","14,304"
Guam,—N/a,"6,910 (2022)",—N/a
Fiji,"6,352","6,198","5,968"
French Polynesia,—N/a,"6,324 (2024)","6,323"
South Sudan,"6,069","11,998 (2015)","3,522"
Suriname,"5,908","4,524","4,435"
Eswatini,"5,792","5,161","4,947"
Liberia,"5,642","5,246","5,251"
Andorra,"4,879","4,501","4,040"
Djibouti,"4,725","4,625","4,152"
U.S. Virgin Islands,—N/a,"4,672 (2022)",—N/a
Aruba,"4,671","4,168 (2024)","4,192"
Faroe Islands,—N/a,"4,053 (2024)",—N/a
Bhutan,"3,856","3,579","3,347"
Curaçao,—N/a,"3,561 (2024)","3,561"
Central African Republic,"3,492","3,066","2,752"
Greenland,—N/a,"3,327 (2023)","3,466"
Belize,"3,450","3,327","3,204"
Cape Verde,"3,448","3,057","2,768"
Guinea-Bissau,"2,985","2,528","2,008"
Lesotho,"2,972","2,574","2,391"
Gambia,"2,792","2,594","2,372"
Saint Lucia,"2,765","2,656","2,574"
Zanzibar,—N/a,—N/a,"2,530"
San Marino,"2,417","2,027 (2023)","2,082"
Antigua and Barbuda,"2,385","2,338","2,162"
Seychelles,"2,251","2,387","2,162"
Timor-Leste,"2,170","1,902","1,866"
Eritrea,"1,982 (2019)","2,065 (2011)","1,917"
Sint Maarten,—N/a,"1,888","1,670"
Solomon Islands,"1,836","1,750","1,584"
British Virgin Islands,—N/a,—N/a,"1,830"
Comoros,"1,814","1,815","1,567"
Turks and Caicos Islands,—N/a,"1,745 (2024)","1,757"
Grenada,"1,483","1,420","1,372"
Vanuatu,"1,396","1,354","1,092"
Samoa,"1,376","1,288","1,253"
Saint Vincent and the Grenadines,"1,236","1,255","1,136"
São Tomé and Príncipe,"1,161",981,828
Saint Kitts and Nevis,"1,143","1,184","1,122"
Northern Mariana Islands,—N/a,"1,096 (2022)",—N/a
American Samoa,—N/a,871 (2022),—N/a
Dominica,791,724,689
Tonga,716,679,648
Saint Martin,—N/a,649 (2021),—N/a
Federated States of Micronesia,521,502,471
Anguilla,—N/a,—N/a,456
Cook Islands,—N/a,—N/a,414
Kiribati,401,349,343
Palau,377,345,310
Marshall Islands,342,308,281
Nauru,196,176,187
Montserrat,—N/a,—N/a,81
Tuvalu,65,57,56
1 Country/Territory IMF(2026) World Bank(2025) United Nations(2024)
2 World 128,003,776 118,350,166 111,565,144
3 United States 32,642,373 30,769,700 29,298,000
4 China[n 1] 21,546,403 19,498,039 18,743,802
5 Germany 5,471,299 5,050,923 4,659,929
6 Japan 4,341,986 4,435,163 4,026,211
7 United Kingdom 4,268,446 4,002,588 3,685,881
8 India 4,060,207 3,956,067 3,952,244
9 France 3,554,155 3,366,316 3,160,443
10 Russia 2,861,156 2,561,310 2,173,386
11 Italy 2,701,737 2,551,557 2,380,825
12 Brazil 2,654,761 2,279,920 2,185,822
13 Canada 2,490,256 2,319,900 2,270,076
14 South Korea 2,245,847 1,872,375 1,875,388
15 Mexico 2,176,236 1,832,641 1,852,723
16 Australia 2,110,657 1,798,519 1,830,610
17 Spain 2,085,276 1,906,453 1,722,746
18 Turkey 1,817,987 1,597,293 1,323,255
19 Indonesia 1,479,954 1,445,643 1,396,300
20 Netherlands 1,423,856 1,332,768 1,214,928
21 Saudi Arabia 1,343,346 1,276,943 1,254,141
22 Switzerland 1,135,739 1,043,530 936,564
23 Poland 1,133,088 1,035,492 914,696
24 Taiwan[n 3] 1,019,696 —N/a
25 Belgium 772,699 725,466 664,564
26 Argentina 768,206 683,098 638,365
27 Israel 746,982 610,778 542,286
28 Sweden 745,081 668,999 604,899
29 Ireland 709,972 721,701 577,389
30 Singapore 667,889 603,870 547,387
31 United Arab Emirates 661,018 552,325 (2024) 552,325
32 Norway 651,712 530,756 483,593
33 Austria 616,896 579,470 534,791
34 Thailand 599,115 577,010 526,518
35 Colombia 572,735 457,410 418,542
36 Malaysia 547,100 472,193 421,972
37 Vietnam 542,130 514,697 476,388
38 Bangladesh 506,357 456,319 432,742
39 Philippines 501,692 487,086 461,618
40 Denmark 499,354 462,527 424,525
41 South Africa 489,083 427,184 401,145
42 Romania 470,091 428,678 382,770
43 Hong Kong[n 4] 455,156 427,310 406,863
44 Pakistan 450,134 407,307 379,120
45 Egypt 442,886 365,255 306,907
46 Czech Republic 427,953 391,027 345,037
47 Chile 402,243 357,371 330,267
48 Peru 399,593 334,855 289,329
49 Kazakhstan 397,921 306,239 291,480
50 Nigeria 386,671 290,794 252,084
51 Portugal 375,197 346,640 313,271
52 Finland 338,564 317,039 298,697
53 Algeria 331,894 287,031 266,972
54 Iran 311,950 362,682 448,092
55 Greece 304,627 280,636 257,145
56 New Zealand 273,395 264,057 260,172
57 Hungary 265,911 246,490 222,905
58 Cuba —N/a 107,352 (2020) 252,063
59 Iraq 245,234 254,367 279,641
60 Ukraine[n 5] 229,406 214,233 190,741
61 Qatar 203,044 215,560 219,163
62 Morocco 195,632 182,374 160,606
63 Uzbekistan 178,167 147,038 114,965
64 Slovakia 167,062 154,530 141,776
65 Angola 157,297 122,175 117,159
66 Kenya 151,151 135,941 120,340
67 Kuwait 146,911 157,209 160,227
68 Bulgaria 146,507 130,777 113,343
69 Dominican Republic 146,362 127,407 124,282
70 Ecuador 138,199 130,321 124,676
71 Puerto Rico 133,222 129,368 125,842
72 Guatemala 132,270 123,306 113,200
73 Ghana 128,638 114,210 82,938
74 Ethiopia 127,145 126,359 142,275
75 DR Congo 122,281 91,031 75,322
76 Oman 121,397 109,605 107,137
77 Croatia 115,915 105,060 92,662
78 Ivory Coast 112,115 99,774 85,894
79 Serbia 112,025 99,953 89,074
80 Venezuela 111,303 99,661 150,494
81 Luxembourg 110,417 101,158 93,280
82 Costa Rica 109,931 102,905 95,350
83 Sri Lanka 98,964 (2024) 108,825 98,714
84 Lithuania 105,907 95,210 84,869
85 Belarus 102,042 93,397 75,962
86 Uruguay 96,092 85,348 80,962
87 Panama 95,024 90,463 86,260
88 Tanzania[n 6] 94,889 90,143 79,236
89 Slovenia 86,732 79,648 72,485
90 Myanmar 83,832 81,666 64,796
91 Turkmenistan 83,065 49,829 68,655
92 Bolivia 80,743 64,769 46,627
93 Azerbaijan 78,372 75,938 74,316
94 Uganda 73,370 61,986 56,369
95 Cameroon 65,135 58,933 53,297
96 Jordan 64,909 61,610 53,352
97 Tunisia 60,745 57,503 53,493
98 Paraguay 60,542 49,278 44,739
99 Zimbabwe 56,713 51,216 45,719
100 Macau[n 7] 54,228 52,061 49,467
101 Latvia 53,686 48,619 43,684
102 Libya 52,453 48,099 48,484
103 Cambodia 52,379 51,267 45,913
104 Estonia 51,634 47,031 42,765
105 Bahrain 48,849 48,966 47,110
106 Nepal 45,844 45,490 42,692
107 Cyprus[n 8] 45,171 41,226 37,635
108 Sudan 44,688 60,163 25,574
109 Iceland 43,800 38,583 33,222
110 Georgia[n 9] 42,716 38,144 34,192
111 Honduras 41,505 39,601 37,094
112 Zambia 41,243 28,880 25,303
113 Senegal 40,469 37,007 36,715
114 El Salvador 39,838 36,708 35,365
115 Haiti 39,180 32,077 25,312
116 Bosnia and Herzegovina 36,771 32,600 30,478
117 Lebanon 34,497 (2025) 25,972 (2024) 37,990
118 Papua New Guinea 34,403 32,499 32,262
119 Guyana 33,961 27,097 24,659
120 Mali 33,847 30,069 26,588
121 Albania 33,333 30,540 27,037
122 Burkina Faso 32,513 27,627 23,250
123 Armenia 31,873 29,243 25,955
124 Malta 30,712 27,772 25,030
125 Guinea 29,930 28,346 36,465
126 Mongolia 28,450 25,369 23,586
127 Benin 27,786 24,566 21,483
128 Trinidad and Tobago 26,836 25,943 25,634
129 Chad 25,628 21,473 19,906
130 Niger 24,813 21,646 17,491
131 Nicaragua 24,227 22,237 19,694
132 Kyrgyzstan 23,606 22,624 17,478
133 Gabon 23,363 21,427 20,867
134 Mozambique 23,275 22,338 22,745
135 Jamaica 23,028 22,705 22,014
136 Botswana 21,937 19,928 19,401
137 Moldova[n 10] 21,889 20,352 18,200
138 North Macedonia 21,605 19,101 16,952
139 Madagascar 21,185 19,620 17,421
140 Tajikistan 20,418 17,661 13,949
141 Afghanistan 19,662 (2025) 17,779 (2024) 18,283
142 Laos 18,959 18,303 16,129
143 Rwanda 18,673 16,372 15,111
144 Malawi 18,309 14,918 11,734
145 Namibia 17,314 15,080 13,372
146 Syria 60,043 (2010) 23,738 (2022) 17,254
147 North Korea —N/a —N/a 17,199
148 Palestine[n 11][n 12] 16,017 (2024) 17,167 16,017
149 Mauritius 17,119 16,158 14,953
150 Bahamas 17,042 15,833 (2024) 15,833
151 Congo 17,028 16,307 16,412
152 Brunei 16,863 15,032 15,463
153 Mauritania 14,352 11,680 10,912
154 Somalia 14,174 12,995 11,966
155 Kosovo 14,053 12,456 11,154
156 Equatorial Guinea 13,722 12,823 12,288
157 Togo 13,437 11,890 10,163
158 Channel Islands —N/a 12,507 (2023) —N/a
159 Monaco —N/a 11,126 (2024) 11,126
160 Montenegro 10,227 9,233 8,274
161 Liechtenstein 9,442 8,906 (2024) 8,628
162 Bermuda —N/a 9,194 (2024) 8,840
163 New Caledonia —N/a 8,549 (2024) 8,549
164 Barbados 8,483 8,017 7,598
165 Sierra Leone 8,270 7,464 6,792
166 Burundi 8,137 3,365 4,431
167 Maldives 8,130 7,741 7,062
168 Cayman Islands —N/a 7,765 (2024) 7,657
169 Isle of Man —N/a 7,576 (2023) —N/a
170 Yemen 7,435 21,606 (2018) 14,304
171 Guam —N/a 6,910 (2022) —N/a
172 Fiji 6,352 6,198 5,968
173 French Polynesia —N/a 6,324 (2024) 6,323
174 South Sudan 6,069 11,998 (2015) 3,522
175 Suriname 5,908 4,524 4,435
176 Eswatini 5,792 5,161 4,947
177 Liberia 5,642 5,246 5,251
178 Andorra 4,879 4,501 4,040
179 Djibouti 4,725 4,625 4,152
180 U.S. Virgin Islands —N/a 4,672 (2022) —N/a
181 Aruba 4,671 4,168 (2024) 4,192
182 Faroe Islands —N/a 4,053 (2024) —N/a
183 Bhutan 3,856 3,579 3,347
184 Curaçao —N/a 3,561 (2024) 3,561
185 Central African Republic 3,492 3,066 2,752
186 Greenland —N/a 3,327 (2023) 3,466
187 Belize 3,450 3,327 3,204
188 Cape Verde 3,448 3,057 2,768
189 Guinea-Bissau 2,985 2,528 2,008
190 Lesotho 2,972 2,574 2,391
191 Gambia 2,792 2,594 2,372
192 Saint Lucia 2,765 2,656 2,574
193 Zanzibar —N/a —N/a 2,530
194 San Marino 2,417 2,027 (2023) 2,082
195 Antigua and Barbuda 2,385 2,338 2,162
196 Seychelles 2,251 2,387 2,162
197 Timor-Leste 2,170 1,902 1,866
198 Eritrea 1,982 (2019) 2,065 (2011) 1,917
199 Sint Maarten —N/a 1,888 1,670
200 Solomon Islands 1,836 1,750 1,584
201 British Virgin Islands —N/a —N/a 1,830
202 Comoros 1,814 1,815 1,567
203 Turks and Caicos Islands —N/a 1,745 (2024) 1,757
204 Grenada 1,483 1,420 1,372
205 Vanuatu 1,396 1,354 1,092
206 Samoa 1,376 1,288 1,253
207 Saint Vincent and the Grenadines 1,236 1,255 1,136
208 São Tomé and Príncipe 1,161 981 828
209 Saint Kitts and Nevis 1,143 1,184 1,122
210 Northern Mariana Islands —N/a 1,096 (2022) —N/a
211 American Samoa —N/a 871 (2022) —N/a
212 Dominica 791 724 689
213 Tonga 716 679 648
214 Saint Martin —N/a 649 (2021) —N/a
215 Federated States of Micronesia 521 502 471
216 Anguilla —N/a —N/a 456
217 Cook Islands —N/a —N/a 414
218 Kiribati 401 349 343
219 Palau 377 345 310
220 Marshall Islands 342 308 281
221 Nauru 196 176 187
222 Montserrat —N/a —N/a 81
223 Tuvalu 65 57 56
+46
View File
@@ -0,0 +1,46 @@
import csv, re, sys
PATH = sys.argv[1] if len(sys.argv) > 1 else '/root/troupe-standup/wizard-work/ledger/gdp_nominal.csv'
with open(PATH, newline='', encoding='utf-8') as f:
rows = list(csv.reader(f))
FAIL = 0
def check(cond, msg):
global FAIL
if not cond:
print('FAIL:', msg)
FAIL = 1
check(len(rows) > 0, 'file empty')
header = rows[0]
check(header == ['Country/Territory', 'IMF(2026)', 'World Bank(2025)', 'United Nations(2024)'],
'bad header: ' + str(header))
data = rows[1:]
check(len(data) == 222, 'expected 222 data rows, got %d' % len(data))
check(data[0] == ['World', '128,003,776', '118,350,166', '111,565,144'],
'bad first row: ' + str(data[0]))
check(data[-1] == ['Tuvalu', '65', '57', '56'], 'bad last row: ' + str(data[-1]))
def find(name):
hits = [r for r in data if r[0] == name or name in r[0]]
return hits[0] if hits else None
us = find('United States')
check(us is not None and us[1] == '32,642,373', 'US row wrong: ' + str(us))
ch = find('China')
check(ch is not None and ch[1] == '21,546,403', 'China row wrong: ' + str(ch))
de = find('Germany')
check(de is not None and de[1] == '5,471,299', 'Germany row wrong: ' + str(de))
# numeric-ish cells: digits/commas optionally with (year); or an explicit "N/A" marker
numpat = re.compile(r'^[\d,]+(\s*\([\d]+\))?$')
na_vals = ('', '—', '—N/a', '—N/A', 'N/a', 'N/A', 'n/a', 'NA')
bad = [(i, r[0], c) for i, r in enumerate(data) for c in r[1:] if c not in na_vals and not numpat.fullmatch(c)]
check(not bad, 'non-numeric numeric-cells: %s' % bad[:3])
print('header:', header)
print('rows:', len(data))
print('result:', 'PASS' if FAIL == 0 else 'FAIL')
sys.exit(FAIL)