├── .gitignore
├── LICENSE
├── README.md
└── articles
├── tuberculosis-evolution-visual
├── tb_existing_100.csv
├── tuberculosis-evolution-visual.html
├── tuberculosis-evolution-visual.ipynb
└── tuberculosis_heatmap.html
├── tuberculosis-world-situation
├── README.md
├── tb-world-situation.ipynb
├── tb-world-situation_files
│ ├── tb-world-situation_12_1.png
│ ├── tb-world-situation_14_1.png
│ └── tb-world-situation_8_0.png
└── tb_existing_100.csv
└── wine-market
├── wine-market-no-mpld3.ipynb
├── wine-market.ipynb
└── wines.html
/.gitignore:
--------------------------------------------------------------------------------
1 | ipython_notebook_spark.out
2 | *.gz
3 | **/.ipynb_checkpoints/
4 | .ipynb_checkpoints/
5 | **/metastore_db/
6 | **/derby.log
7 | **/apikey
8 | notebooks/wine-market/*.json
9 |
10 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | This repository contains a variety of content; some developed by Jose A. Dianes, and some from third-parties. The third-party content is distributed under the license provided by those parties.
2 |
3 | The content developed by Jose A. Dianes is distributed under the following license:
4 |
5 | Copyright 2016 Jose A Dianes
6 |
7 | Licensed under the Apache License, Version 2.0 (the "License");
8 | you may not use this file except in compliance with the License.
9 | You may obtain a copy of the License at
10 |
11 | http://www.apache.org/licenses/LICENSE-2.0
12 |
13 | Unless required by applicable law or agreed to in writing, software
14 | distributed under the License is distributed on an "AS IS" BASIS,
15 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 | See the License for the specific language governing permissions and
17 | limitations under the License.
18 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Data Journalism
2 |
3 | If you are a [Data Journalist]((https://en.wikipedia.org/wiki/Data_journalism)) looking to improve your **coding skills**, or you work as a developer giving support in a **newsroom**, you arrived to the right place.
4 |
5 | This is a repository of articles and tutorials, as [IPython/Jupyter](https://jupyter.org) notebooks or web products, about doing data journalism. The articles presented here, apart from analysing data to present some facts about the current, past, and sometimes future world situation, will show **programming instructions** explaining how to repeat the analysis by yourself. We live in a world where governments and the media, more often than not, serve the interests of a few. Our belief is that to empower people to do their own analysis and arrive to conclusions based on facts (data), is a way to make us all more aware and strong as a society.
6 |
7 | The programming instructions will be given as web [Notebooks](https://en.wikipedia.org/wiki/IPython#Notebook) for the programming language or technology used (e.g. Python, R) or sometimes as a web code that yoy can inspect on the repo. This is an ideal way of sharing code combined with textual explanations, charts, images, etc. However, we will tend to favour the Pyhton language. But why Python? Well, we will sometimes use other technologies (mainly R but also JavaScript or Spark) but we think that Python has some characteristics that makes it a good environment for Data Journalism:
8 |
9 | - It is a modern programming language, very clean and expressive, that promotes simplicity and elegance.
10 | - It can be used to write scripts (as we will use it most of the time) and also to build complex software systems.
11 | - There are lots of extensions (i.e. libraries) to perform all sorts of tasks, not just data analysis and visualisation ones, but also [web scraping](https://en.wikipedia.org/wiki/Web_scraping), [web development](https://en.wikipedia.org/wiki/Web_development), [natural language processing](https://en.wikipedia.org/wiki/Natural_language_processing), etc.
12 | - You can share your code as notebooks!
13 |
14 | So our hope is that while finding our articles analysis and conclusions interesting, you will also learn how to repeat and extend them yourself and arrive to aditional conclusions.
15 |
16 | ## About me
17 |
18 | My name is [Jose A. Dianes](http://jadianes.com/) and I am a data analyst and developer. During years I have been involved in all sorts of software projects including real-time systems, web enterprise systems, and bioinformatics. Eventually I arrived to data analysis and products, where I solve scalability problems and deliver producst that provide actionable knowledge.
19 |
20 | You can contact me easily at [my personal website](http://jadianes.com/about/).
21 |
22 | ## Articles
23 |
24 | #### [Tuberculosis world situation](https://github.com/jadianes/data-journalism-python/tree/master/articles/tuberculosis-world-situation)
25 |
26 | Where we analyse the situation of infectious tuberculosis from 1990 to 2007 using WHO datasets.
27 |
28 | #### [A visual on the evolution of Tuberculosis](https://github.com/jadianes/data-journalism-python/tree/master/articles/tuberculosis-evolution-visual/tuberculosis-evolution-visual.ipynb)
29 |
30 | Where we use Bokeh to represent the same dataset with a simple heatmap and look for visual clues.
31 |
32 | #### [Wine market analysis](https://github.com/jadianes/data-journalism-python/tree/master/articles/wine-market/wine-market.ipynb)
33 |
34 | Where we show how to use a RESTful like API to get JSON data using [`Requests`](http://www.python-requests.org/en/latest/), save JSON data into a file, doing Exploratory Data Analysis using [`Pandas`](http://pandas.pydata.org/), and generating a data visualisation using [`Seaborn`](http://stanford.edu/~mwaskom/software/seaborn/) and [`mpld3`](http://mpld3.github.io/). All this in order to explore [**Wine.com**](http://www.wine.com/) catalog and get an impression of what the wine market looks like for them.
35 |
36 | ## Contributing
37 |
38 | Contributions are welcome! For bug reports or requests please [submit an issue](https://github.com/jadianes/data-journalism-python/issues).
39 |
40 | ## Contact
41 |
42 | Feel free to contact me to discuss any issues, questions, or comments.
43 |
44 | * Twitter: [@ja_dianes](https://twitter.com/ja_dianes)
45 | * GitHub: [jadianes](https://github.com/jadianes)
46 | * LinkedIn: [jadianes](https://www.linkedin.com/in/jadianes)
47 | * Website: [jadianes.me](http://jadianes.me)
48 |
49 | ## License
50 |
51 | This repository contains a variety of content; some developed by Jose A. Dianes, and some from third-parties. The third-party content is distributed under the license provided by those parties.
52 |
53 | The content developed by Jose A. Dianes is distributed under the following license:
54 |
55 | Copyright 2016 Jose A Dianes
56 |
57 | Licensed under the Apache License, Version 2.0 (the "License");
58 | you may not use this file except in compliance with the License.
59 | You may obtain a copy of the License at
60 |
61 | http://www.apache.org/licenses/LICENSE-2.0
62 |
63 | Unless required by applicable law or agreed to in writing, software
64 | distributed under the License is distributed on an "AS IS" BASIS,
65 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
66 | See the License for the specific language governing permissions and
67 | limitations under the License.
68 |
--------------------------------------------------------------------------------
/articles/tuberculosis-evolution-visual/tb_existing_100.csv:
--------------------------------------------------------------------------------
1 | "TB prevalence, all forms (per 100 000 population per year)",1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007
2 | Afghanistan,436,429,422,415,407,397,397,387,374,373,346,326,304,308,283,267,251,238
3 | Albania,42,40,41,42,42,43,42,44,43,42,40,34,32,32,29,29,26,22
4 | Algeria,45,44,44,43,43,42,43,44,45,46,48,49,50,51,52,53,55,56
5 | American Samoa,42,14,4,18,17,22,0,25,12,8,8,6,5,6,9,11,9,5
6 | Andorra,39,37,35,33,32,30,28,23,24,22,20,20,21,18,19,18,17,19
7 | Angola,514,514,513,512,510,508,512,363,414,384,530,335,307,281,318,331,302,294
8 | Anguilla,38,38,37,37,36,35,35,36,36,36,35,35,35,35,35,34,34,34
9 | Antigua and Barbuda,16,15,15,14,13,12,12,11,11,9,8,9,7,9,8,8,9,9
10 | Argentina,96,91,86,82,78,74,71,67,63,58,52,51,42,41,39,39,37,35
11 | Armenia,52,49,51,55,60,68,74,75,74,86,94,99,97,91,85,79,79,81
12 | Australia,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6
13 | Austria,18,17,16,15,15,14,13,13,12,12,11,11,11,10,10,10,10,10
14 | Azerbaijan,58,55,57,61,67,76,85,91,100,106,113,117,99,109,90,85,86,86
15 | Bahamas,54,53,52,52,53,54,54,54,55,46,45,45,51,51,50,50,50,51
16 | Bahrain,120,113,108,101,97,92,89,86,83,67,57,56,55,53,48,45,45,60
17 | Bangladesh,639,623,608,594,579,576,550,535,516,492,500,491,478,458,444,416,392,387
18 | Barbados,8,8,7,7,6,6,6,6,5,5,5,4,4,4,4,4,3,3
19 | Belarus,62,54,59,62,75,82,91,98,109,113,110,100,89,68,68,68,69,69
20 | Belgium,16,15,15,15,15,14,13,13,12,12,12,13,12,11,11,11,10,9
21 | Belize,65,64,62,59,57,55,37,41,53,53,39,36,36,40,42,38,41,46
22 | Benin,140,138,135,132,129,125,127,129,130,128,128,129,137,139,134,135,134,135
23 | Bermuda,10,10,9,9,8,8,8,8,7,7,7,6,6,6,6,6,6,6
24 | Bhutan,924,862,804,750,699,651,620,597,551,538,515,512,472,460,443,412,406,363
25 | Bolivia,377,362,347,333,320,306,271,264,254,248,238,229,223,218,211,205,202,198
26 | Bosnia and Herzegovina,160,156,154,150,143,134,131,125,96,80,70,63,66,63,55,58,58,55
27 | Botswana,344,355,351,349,347,349,336,349,371,413,445,497,535,586,598,599,621,622
28 | Brazil,124,119,114,109,104,100,97,93,88,86,83,80,77,72,63,60,56,60
29 | British Virgin Islands,32,30,28,26,25,23,22,21,20,19,19,18,18,17,16,17,16,16
30 | Brunei Darussalam,91,91,91,91,91,91,91,88,88,93,108,85,78,73,63,55,59,65
31 | Bulgaria,43,48,54,57,58,57,59,65,68,68,64,63,52,42,40,41,40,41
32 | Burkina Faso,179,196,208,221,233,246,251,271,286,308,338,368,398,419,426,421,411,403
33 | Burundi,288,302,292,293,305,322,339,346,424,412,455,522,581,619,639,654,657,647
34 | Cambodia,928,905,881,858,836,811,810,789,777,764,758,750,728,712,696,676,672,664
35 | Cameroon,188,199,200,199,197,197,196,207,212,219,228,241,240,227,228,213,201,195
36 | Canada,7,7,7,6,6,6,5,5,5,5,5,4,4,4,4,4,4,4
37 | Cape Verde,449,438,428,418,408,398,394,391,387,384,380,283,374,370,367,278,285,280
38 | Cayman Islands,10,10,9,9,8,8,8,8,7,7,7,5,6,6,5,5,6,5
39 | Central African Republic,318,336,342,350,356,365,270,395,419,449,485,495,468,566,574,507,437,425
40 | Chad,251,272,282,294,304,315,354,408,433,390,420,450,502,573,548,518,505,497
41 | Chile,45,41,38,35,32,30,28,25,24,22,21,19,19,18,15,15,13,12
42 | China,327,321,315,309,303,303,290,283,276,273,269,265,259,241,220,206,200,194
43 | Colombia,88,85,82,79,76,73,71,69,67,61,51,62,60,58,55,53,44,43
44 | Comoros,188,177,167,157,148,140,130,155,120,143,112,103,104,107,99,91,86,83
45 | "Congo, Rep.",209,222,231,243,255,269,424,457,367,545,313,354,402,509,477,482,511,485
46 | Cook Islands,0,10,57,47,38,19,10,13,0,40,12,29,11,0,15,9,16,31
47 | Costa Rica,30,28,27,26,25,24,23,22,21,19,14,14,15,14,12,12,12,11
48 | Croatia,126,123,121,118,113,106,103,102,99,89,76,73,69,68,67,65,65,54
49 | Cuba,32,29,26,24,22,20,18,17,15,14,13,12,11,10,9,8,8,7
50 | Cyprus,14,13,13,12,11,11,11,10,7,7,9,8,7,6,6,6,6,6
51 | Czech Republic,22,22,22,21,21,21,21,21,19,18,16,14,13,12,11,11,10,9
52 | Cote d'Ivoire,292,304,306,309,312,319,329,350,376,413,472,571,561,590,604,613,597,582
53 | "Korea, Dem. Rep.",841,828,815,802,788,775,775,775,775,770,713,650,577,527,499,508,500,441
54 | "Congo, Dem. Rep.",275,306,327,352,376,411,420,466,472,528,592,643,697,708,710,702,692,666
55 | Denmark,12,12,11,10,10,9,9,8,8,8,7,7,7,7,7,6,7,6
56 | Djibouti,"1,485","1,477","1,463","1,442","1,414","1,381",720,669,698,701,761,775,932,960,"1,034","1,046","1,093","1,104"
57 | Dominica,24,24,24,23,23,22,22,18,20,20,20,22,20,20,20,21,13,19
58 | Dominican Republic,183,173,164,156,148,141,135,132,128,122,119,115,102,93,90,85,84,82
59 | Ecuador,282,271,259,249,238,228,221,212,207,200,194,185,170,162,155,155,148,140
60 | Egypt,48,47,47,45,45,44,51,46,43,40,36,34,32,31,29,28,27,27
61 | El Salvador,133,126,119,112,105,99,97,80,76,72,69,66,62,60,57,52,50,48
62 | Equatorial Guinea,169,181,187,194,200,207,216,222,236,253,274,441,470,490,370,366,358,469
63 | Eritrea,245,245,242,239,235,232,232,225,203,114,114,111,118,110,122,127,133,134
64 | Estonia,50,50,56,66,77,85,88,98,102,105,72,68,62,56,50,46,44,39
65 | Ethiopia,312,337,351,366,383,403,396,397,420,464,486,539,569,601,613,612,604,579
66 | Fiji,68,65,62,58,55,53,49,49,46,40,42,35,36,29,33,31,30,30
67 | Finland,14,12,11,10,9,10,10,10,9,9,8,7,7,6,6,5,5,5
68 | France,21,20,19,18,17,16,15,15,14,14,13,12,12,12,12,11,11,11
69 | French Polynesia,67,55,91,83,93,107,55,48,56,54,40,42,32,29,28,31,31,32
70 | Gabon,359,340,325,318,316,293,312,320,359,366,434,249,302,299,288,332,358,379
71 | Gambia,350,350,349,347,344,341,324,321,311,485,491,499,335,343,341,366,399,404
72 | Georgia,51,48,50,54,59,66,73,104,87,90,98,95,95,94,90,86,83,83
73 | Germany,15,15,14,14,13,13,12,11,11,10,9,8,7,6,6,6,5,5
74 | Ghana,533,519,502,480,455,432,426,388,384,382,368,358,359,358,359,357,355,353
75 | Greece,30,29,27,25,24,23,22,22,21,20,19,18,18,17,17,16,16,16
76 | Grenada,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6
77 | Guam,103,101,96,110,146,93,91,89,87,86,44,45,44,47,41,42,39,36
78 | Guatemala,113,111,108,106,103,100,95,94,93,92,90,91,89,89,86,85,84,87
79 | Guinea,241,248,255,262,269,275,277,293,305,317,332,346,363,380,391,425,426,448
80 | Guinea-Bissau,404,403,402,399,395,390,390,387,385,386,273,276,305,296,287,283,270,276
81 | Guyana,39,43,34,43,50,67,78,81,90,93,98,112,126,136,130,132,133,136
82 | Haiti,479,464,453,443,435,429,428,426,417,407,403,397,388,380,377,368,368,366
83 | Honduras,141,133,128,123,119,115,114,112,106,98,70,70,72,71,72,71,70,71
84 | Hungary,67,68,70,72,73,73,74,72,67,47,43,39,36,33,29,26,22,19
85 | Iceland,5,4,4,4,4,4,3,3,3,3,3,3,2,2,2,3,3,3
86 | India,586,577,566,555,542,525,517,501,487,476,443,411,389,349,311,299,290,283
87 | Indonesia,443,430,417,404,392,380,369,359,348,335,326,314,297,287,274,261,251,244
88 | Iran,50,51,56,54,55,55,61,52,45,41,40,38,37,35,32,31,29,27
89 | Iraq,88,88,88,88,88,88,84,84,82,80,71,69,65,67,71,75,78,79
90 | Ireland,19,18,18,17,15,14,12,12,12,12,12,11,10,10,10,10,10,11
91 | Israel,11,10,10,9,9,8,8,8,8,7,7,7,6,6,6,6,6,6
92 | Italy,11,10,10,9,9,8,9,8,7,7,7,7,7,6,6,6,6,6
93 | Jamaica,10,10,10,10,9,9,7,7,7,7,7,7,7,7,7,7,7,7
94 | Japan,62,60,58,56,53,51,50,50,49,48,45,41,39,36,34,32,30,28
95 | Jordan,19,18,17,17,16,15,20,18,12,11,11,9,9,9,9,8,9,9
96 | Kazakhstan,95,87,85,84,85,94,109,137,163,134,141,148,150,155,152,147,144,139
97 | Kenya,125,120,134,152,177,207,233,277,313,351,393,384,392,402,410,388,340,319
98 | Kiribati,"1,026","1,006",986,966,947,928,910,853,571,556,546,607,587,477,439,419,405,423
99 | Kuwait,89,84,80,75,72,68,66,64,61,35,33,33,30,29,29,30,25,25
100 | Kyrgyzstan,90,93,93,93,101,118,141,165,147,146,156,169,153,145,139,136,135,134
101 | Laos,428,424,420,415,411,407,373,360,352,344,344,337,330,324,313,298,291,289
102 | Latvia,56,57,59,63,75,91,77,89,92,95,91,89,85,78,72,66,61,55
103 | Lebanon,64,64,63,62,62,59,64,54,50,37,35,30,26,24,22,21,23,23
104 | Lesotho,225,231,229,228,232,242,248,264,298,518,356,370,399,408,414,421,408,568
105 | Liberia,476,473,469,465,462,461,418,424,396,403,435,437,382,429,370,416,393,398
106 | Libyan Arab Jamahiriya,46,45,45,43,43,42,41,38,36,23,22,22,21,20,19,18,18,17
107 | Lithuania,64,66,71,79,89,98,110,119,125,120,115,96,83,72,72,66,65,69
108 | Luxembourg,19,18,17,16,15,14,14,13,13,12,11,11,11,10,10,10,10,9
109 | Madagascar,367,368,369,369,370,370,339,345,346,352,359,371,382,375,384,408,400,417
110 | Malawi,380,376,365,355,353,348,337,342,345,349,362,350,358,353,346,342,324,305
111 | Malaysia,159,158,156,155,153,151,147,173,170,167,135,133,132,128,128,126,123,121
112 | Maldives,143,130,118,107,97,88,88,101,89,94,96,84,83,69,71,63,69,48
113 | Mali,640,631,621,609,597,583,573,566,565,567,571,573,572,578,584,589,593,599
114 | Malta,10,9,9,8,8,7,7,7,7,6,6,6,5,5,5,5,5,5
115 | Mauritania,585,587,590,592,594,595,622,615,612,615,619,624,632,642,494,565,556,559
116 | Mauritius,53,51,50,48,47,45,62,61,45,40,39,42,40,39,38,39,39,39
117 | Mexico,101,93,86,80,74,68,64,58,52,48,42,38,35,33,31,27,25,23
118 | "Micronesia, Fed. Sts.",263,253,244,234,225,217,204,287,276,265,173,171,152,142,128,124,112,100
119 | Monaco,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2
120 | Mongolia,477,477,477,477,477,477,333,342,307,281,297,273,258,258,233,232,217,234
121 | Montserrat,14,14,14,14,14,13,13,13,13,13,13,13,13,10,13,10,12,8
122 | Morocco,134,130,127,123,119,116,107,106,105,99,98,95,87,91,89,85,82,80
123 | Mozambique,287,313,328,343,356,369,386,408,432,461,499,535,556,569,567,551,528,504
124 | Myanmar,411,400,389,379,370,361,298,309,312,298,267,238,202,175,168,161,161,162
125 | Namibia,650,685,687,683,671,658,387,395,411,442,481,506,544,560,572,570,556,532
126 | Nauru,170,285,280,274,90,263,258,253,248,44,44,56,57,48,162,121,174,33
127 | Nepal,629,607,585,564,543,523,498,473,448,363,312,304,285,271,260,247,246,240
128 | Netherlands,11,10,10,9,9,8,8,8,8,7,7,7,6,6,6,6,6,6
129 | Netherlands Antilles,28,27,25,24,23,22,21,20,19,18,17,17,17,16,16,15,15,15
130 | New Caledonia,112,107,104,76,69,60,58,97,97,51,51,43,34,28,29,29,25,25
131 | New Zealand,10,10,9,9,10,11,10,10,11,11,11,10,10,10,10,9,8,7
132 | Nicaragua,145,137,129,122,114,108,100,97,93,89,85,80,79,73,69,68,64,56
133 | Niger,317,318,319,319,319,318,322,292,281,281,278,280,288,275,287,285,289,292
134 | Nigeria,282,307,321,336,350,366,379,399,423,452,489,526,563,575,573,563,543,521
135 | Niue,118,115,113,111,109,106,202,0,0,114,0,0,506,0,0,0,0,0
136 | Northern Mariana Islands,142,201,301,194,186,185,188,331,334,220,135,120,95,83,80,83,83,72
137 | Norway,8,8,8,7,7,6,6,6,6,5,5,5,5,5,4,4,4,4
138 | Oman,40,36,29,25,22,22,15,15,14,14,13,14,13,13,12,13,13,14
139 | Pakistan,430,428,427,426,424,422,421,421,415,420,413,406,376,355,333,289,260,223
140 | Palau,96,66,43,260,414,187,53,92,54,376,104,102,69,64,31,102,74,71
141 | Panama,74,73,71,70,69,68,67,67,65,64,60,51,48,49,44,44,44,45
142 | Papua New Guinea,498,498,497,497,496,496,494,493,491,489,486,482,477,471,463,453,441,430
143 | Paraguay,95,93,92,91,89,88,71,92,92,91,90,89,88,85,85,81,74,73
144 | Peru,394,368,343,320,298,278,270,251,230,222,210,198,187,182,167,155,143,136
145 | Philippines,799,783,766,750,735,719,705,689,669,649,600,578,561,542,534,520,505,500
146 | Poland,88,87,86,85,83,79,74,68,63,58,53,50,35,34,33,31,29,28
147 | Portugal,51,49,47,45,44,43,42,41,39,38,36,34,33,32,29,27,24,23
148 | Puerto Rico,17,15,17,18,18,18,15,13,12,10,9,8,7,6,6,6,6,5
149 | Qatar,71,69,69,74,84,89,87,84,75,78,78,78,75,71,71,69,77,81
150 | "Korea, Rep.",223,196,174,150,142,132,105,98,89,107,113,112,126,108,112,118,122,126
151 | Moldova,105,99,103,111,122,138,157,171,191,203,215,174,211,176,152,151,151,151
152 | Romania,118,125,134,147,159,167,174,184,129,194,197,206,180,185,178,148,138,128
153 | Russian Federation,69,64,70,78,91,111,132,142,155,160,164,158,148,140,135,121,117,115
154 | Rwanda,190,211,226,243,259,278,297,316,339,383,442,503,549,581,607,607,595,590
155 | Saint Kitts and Nevis,17,17,16,16,16,15,16,15,11,12,15,13,12,14,13,15,14,12
156 | Saint Lucia,26,26,25,25,25,24,23,17,16,18,20,18,17,19,18,18,18,18
157 | Saint Vincent and the Grenadines,45,45,44,43,42,42,42,41,38,41,35,36,36,34,36,36,34,39
158 | Samoa,36,35,34,33,32,31,35,33,50,31,27,33,28,28,24,27,26,25
159 | San Marino,9,9,8,8,7,7,7,7,7,6,6,6,6,5,5,5,5,5
160 | Sao Tome and Principe,346,335,325,315,304,295,290,285,290,276,272,266,261,266,255,256,252,240
161 | Saudi Arabia,68,60,59,60,64,67,71,73,76,72,67,65,62,60,60,60,62,65
162 | Senegal,380,379,379,378,377,376,372,388,397,424,420,430,443,441,454,456,461,468
163 | Seychelles,113,110,106,103,100,96,66,59,71,90,52,53,42,66,52,57,56,55
164 | Sierra Leone,465,479,492,504,517,534,525,565,602,636,675,696,743,784,830,866,902,941
165 | Singapore,52,52,53,50,49,49,50,50,48,44,39,36,34,32,31,28,27,27
166 | Slovakia,55,56,59,59,56,51,46,42,38,35,32,30,29,26,25,21,20,20
167 | Slovenia,66,62,59,57,53,50,35,35,32,29,27,25,22,21,19,16,16,15
168 | Solomon Islands,625,593,563,534,506,480,380,354,339,322,300,286,277,254,229,204,197,180
169 | Somalia,597,587,577,566,555,543,465,444,446,431,414,398,391,362,334,325,341,352
170 | South Africa,769,726,676,620,562,502,480,466,465,426,515,581,586,649,676,707,690,692
171 | Spain,44,42,40,37,35,34,33,30,30,28,27,26,26,25,24,24,24,23
172 | Sri Lanka,109,106,104,102,99,97,102,93,90,89,107,99,88,89,87,75,80,79
173 | Sudan,409,404,402,402,403,405,409,417,378,382,375,389,363,371,376,384,391,402
174 | Suriname,109,100,79,80,76,78,88,101,118,122,115,113,113,120,126,136,146,155
175 | Swaziland,629,590,527,477,448,441,460,504,556,647,740,832,693,739,776,788,801,812
176 | Sweden,5,5,6,6,5,5,5,4,4,4,4,4,4,4,4,4,4,5
177 | Switzerland,14,13,12,11,10,10,9,8,8,8,7,6,6,6,6,5,5,5
178 | Syrian Arab Republic,94,89,84,80,75,71,67,61,54,48,41,37,35,33,31,30,29,27
179 | Tajikistan,193,162,112,79,85,106,134,141,159,169,191,221,248,256,277,282,301,322
180 | Thailand,336,319,307,297,291,285,285,279,256,231,223,194,197,189,188,184,189,192
181 | "Macedonia, FYR",92,90,89,86,83,77,74,73,72,65,56,39,40,37,34,34,34,33
182 | Timor-Leste,706,694,681,669,656,644,644,644,644,644,644,644,345,359,367,370,385,378
183 | Togo,702,687,668,647,628,614,613,658,637,647,656,669,701,693,702,713,726,750
184 | Tokelau,139,140,143,112,0,301,0,112,112,0,0,0,112,0,112,0,0,0
185 | Tonga,45,44,43,43,42,41,38,38,31,34,34,42,35,36,39,32,34,28
186 | Trinidad and Tobago,17,17,17,16,16,16,16,16,15,15,15,16,15,15,15,15,15,15
187 | Tunisia,49,46,49,51,51,49,48,46,44,31,30,28,27,26,27,27,28,28
188 | Turkey,83,79,77,73,68,62,62,63,64,57,49,45,44,43,44,44,32,34
189 | Turkmenistan,105,99,101,97,92,80,92,114,137,142,130,115,110,103,98,91,85,75
190 | Turks and Caicos Islands,42,40,37,35,33,31,30,29,28,17,16,23,23,22,22,22,18,17
191 | Tuvalu,593,573,554,535,518,500,484,467,452,437,422,408,394,381,368,245,261,203
192 | Uganda,206,313,342,377,394,418,419,342,357,359,391,411,447,476,472,469,450,426
193 | Ukraine,67,64,67,72,75,78,87,93,104,109,120,128,133,135,132,113,99,102
194 | United Arab Emirates,47,44,42,39,38,36,34,33,31,30,27,27,27,25,25,24,24,24
195 | United Kingdom,9,9,10,10,9,9,9,9,9,9,9,9,9,10,10,11,11,12
196 | Tanzania,215,228,240,252,269,283,301,324,333,347,364,367,383,380,373,364,353,337
197 | Virgin Islands (U.S.),30,28,27,25,24,23,19,18,17,19,19,18,18,17,17,16,16,16
198 | United States of America,7,7,7,7,6,6,6,5,5,4,4,4,4,4,3,3,3,3
199 | Uruguay,35,34,33,32,31,30,28,27,28,28,27,25,27,25,23,24,25,23
200 | Uzbekistan,114,105,102,118,116,119,111,122,129,134,139,148,144,152,149,144,134,140
201 | Vanuatu,278,268,259,250,242,234,226,218,211,159,143,128,149,128,118,131,104,102
202 | Venezuela,46,45,44,43,42,42,41,41,40,39,39,41,41,39,38,38,38,39
203 | Viet Nam,365,361,358,354,350,346,312,273,261,253,248,243,235,234,226,227,222,220
204 | Wallis et Futuna,126,352,64,174,172,93,123,213,107,105,103,13,275,147,63,57,60,25
205 | West Bank and Gaza,55,54,54,52,52,50,49,46,44,42,40,39,37,36,35,33,32,31
206 | Yemen,265,261,263,253,250,244,233,207,194,175,164,154,149,146,138,137,135,130
207 | Zambia,436,456,494,526,556,585,602,626,634,657,658,680,517,478,468,453,422,387
208 | Zimbabwe,409,417,415,419,426,439,453,481,392,430,479,523,571,632,652,680,699,714
--------------------------------------------------------------------------------
/articles/tuberculosis-world-situation/README.md:
--------------------------------------------------------------------------------
1 |
2 | # World differences in infectious tuberculosis prevalence
3 |
4 | > [From Wikipedia, the free
5 | encyclopedia](https://en.wikipedia.org/wiki/Tuberculosis)
6 |
7 | > Tuberculosis, MTB, or TB (short for tubercle bacillus), in the past also
8 | called phthisis, phthisis pulmonalis, or consumption, is a widespread, and in
9 | many cases fatal, infectious disease caused by various strains of mycobacteria,
10 | usually Mycobacterium tuberculosis. Tuberculosis typically attacks the lungs,
11 | but can also affect other parts of the body. It is spread through the air when
12 | people who have an active TB infection cough, sneeze, or otherwise transmit
13 | respiratory fluids through the air. Most infections do not have symptoms, known
14 | as latent tuberculosis. About one in ten latent infections eventually progresses
15 | to active disease which, if left untreated, kills more than 50% of those so
16 | infected.
17 |
18 |
19 | In this first approach to the world situation regarding infectious tuberculosis
20 | we want to have a look at how different countries have been affected by the
21 | disease in the period from 1990 to 2007. By doing so we want to better
22 | understand different trends in the prevalence of this important disease. Which
23 | countries are getting better and worse? Are there more or less clear groups of
24 | countries based on how much are the affected and how their situation is
25 | changeing?
26 |
27 | This should be enough for a first approach that opens the door to future works
28 | in finding the reasons for this situation and how the different approaches to
29 | fight the disease have been doing.
30 |
31 | The [Gapminder website](http://www.gapminder.org/) presents itself as *a fact-
32 | based worldview*. It is a comprehensive resource for data regarding different
33 | countries and territories indicators. For this article, we will use a dataset
34 | related to [estimated prevalence (existing cases) per 100K](https://docs.google.
35 | com/spreadsheets/d/1X5Jp7Q8pTs3KLJ5JBWKhncVACGsg5v4xu6badNs4C7I/pub?gid=0)
36 | coming from the World Health Organization (WHO). We invite the reader to repeat
37 | the process with the new cases and deaths datasets and share the results. Our
38 | data contains up to 207 countries. The first few of them looks as follows:
39 |
40 |
41 | import urllib
42 |
43 | tb_existing_url_csv = 'https://docs.google.com/spreadsheets/d/1X5Jp7Q8pTs3KLJ5JBWKhncVACGsg5v4xu6badNs4C7I/pub?gid=0&output=csv'
44 | local_tb_existing_file = 'tb_existing_100.csv'
45 | existing_f = urllib.urlretrieve(tb_existing_url_csv, local_tb_existing_file)
46 |
47 | import pandas as pd
48 |
49 | existing_df = pd.read_csv(local_tb_existing_file, index_col = 0, thousands = ',')
50 | existing_df.index.names = ['country']
51 | existing_df.columns.names = ['year']
52 |
53 | existing_df.head()
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 | year |
63 | 1990 |
64 | 1991 |
65 | 1992 |
66 | 1993 |
67 | 1994 |
68 | 1995 |
69 | 1996 |
70 | 1997 |
71 | 1998 |
72 | 1999 |
73 | 2000 |
74 | 2001 |
75 | 2002 |
76 | 2003 |
77 | 2004 |
78 | 2005 |
79 | 2006 |
80 | 2007 |
81 |
82 |
83 | country |
84 | |
85 | |
86 | |
87 | |
88 | |
89 | |
90 | |
91 | |
92 | |
93 | |
94 | |
95 | |
96 | |
97 | |
98 | |
99 | |
100 | |
101 | |
102 |
103 |
104 |
105 |
106 | Afghanistan |
107 | 436 |
108 | 429 |
109 | 422 |
110 | 415 |
111 | 407 |
112 | 397 |
113 | 397 |
114 | 387 |
115 | 374 |
116 | 373 |
117 | 346 |
118 | 326 |
119 | 304 |
120 | 308 |
121 | 283 |
122 | 267 |
123 | 251 |
124 | 238 |
125 |
126 |
127 | Albania |
128 | 42 |
129 | 40 |
130 | 41 |
131 | 42 |
132 | 42 |
133 | 43 |
134 | 42 |
135 | 44 |
136 | 43 |
137 | 42 |
138 | 40 |
139 | 34 |
140 | 32 |
141 | 32 |
142 | 29 |
143 | 29 |
144 | 26 |
145 | 22 |
146 |
147 |
148 | Algeria |
149 | 45 |
150 | 44 |
151 | 44 |
152 | 43 |
153 | 43 |
154 | 42 |
155 | 43 |
156 | 44 |
157 | 45 |
158 | 46 |
159 | 48 |
160 | 49 |
161 | 50 |
162 | 51 |
163 | 52 |
164 | 53 |
165 | 55 |
166 | 56 |
167 |
168 |
169 | American Samoa |
170 | 42 |
171 | 14 |
172 | 4 |
173 | 18 |
174 | 17 |
175 | 22 |
176 | 0 |
177 | 25 |
178 | 12 |
179 | 8 |
180 | 8 |
181 | 6 |
182 | 5 |
183 | 6 |
184 | 9 |
185 | 11 |
186 | 9 |
187 | 5 |
188 |
189 |
190 | Andorra |
191 | 39 |
192 | 37 |
193 | 35 |
194 | 33 |
195 | 32 |
196 | 30 |
197 | 28 |
198 | 23 |
199 | 24 |
200 | 22 |
201 | 20 |
202 | 20 |
203 | 21 |
204 | 18 |
205 | 19 |
206 | 18 |
207 | 17 |
208 | 19 |
209 |
210 |
211 |
212 |
213 |
214 |
215 |
216 | The reader can check the [complete datasets](https://docs.google.com/spreadsheet
217 | s/d/1X5Jp7Q8pTs3KLJ5JBWKhncVACGsg5v4xu6badNs4C7I/pub?gid=0) from the Gapminder
218 | website.
219 |
220 | ## A visual to the world distribution of existing cases
221 |
222 | Data tables are accurate and complete. However they are not always the best way
223 | to process information, specially in our case where we want to understand how
224 | each country relates to others. The following chart is a two dimensional
225 | representation of the same data, that originally has 18 different dimensions,
226 | one for each year. In the vertical axis we represent the first dimension of
227 | variation within countries, that in this case is related with where the country
228 | relates to others regarding the number of cases as an static magnitude (e.g. the
229 | sum across the years). Those countries at the top of the chart are countries
230 | less affected by the disease.
231 |
232 | In the horizontal axis we have coded how the number of existing cases has
233 | changed from 1990 to 2007. Countries in the left hand side of the chart have
234 | increased the number of cases in that period of time.
235 |
236 |
237 | from sklearn.decomposition import PCA
238 |
239 | pca = PCA(n_components=2)
240 | pca.fit(existing_df)
241 |
242 | existing_2d = pca.transform(existing_df)
243 | existing_df_2d = pd.DataFrame(existing_2d)
244 | existing_df_2d.index = existing_df.index
245 | existing_df_2d.columns = ['PC1','PC2']
246 |
247 | %matplotlib inline
248 |
249 | ax = existing_df_2d.plot(kind='scatter', x='PC2', y='PC1', figsize=(16,8))
250 |
251 | for i, country in enumerate(existing_df.index):
252 | ax.annotate(country, (existing_df_2d.iloc[i].PC2, existing_df_2d.iloc[i].PC1))
253 |
254 |
255 | 
256 |
257 |
258 | There are more countries at the very top and on the right hand side. That is,
259 | there are more countries with relatively less cases and that have improved their
260 | situation with time. But there are some facts that makes us want to keep
261 | exploring our data:
262 | - The distribution is not uniform. There is a high concentration of countries at
263 | the very top. This means that there are a group of countries able to deal with
264 | the disease in a way that is not accesible to many more (i.e. those countries
265 | over and under the 0 line in the vertical axis respectively).
266 | - There are countries that, far from improving its situation in the 1990-2007
267 | period has most of them have done, ended up with more cases in 2007 than they
268 | had in 1990.
269 | - There is a country, [Djibouti](https://en.wikipedia.org/wiki/Djibouti) that
270 | lies quite outside of the rest and might need closer attention.
271 |
272 | ## Grouping countries based on their situation
273 |
274 | By [clustering](https://en.wikipedia.org/wiki/Cluster_analysis) our original
275 | dataset, we will colour the previous chart in order to identify up to six
276 | different groups. This is the minimal number of clusters that we have observed
277 | better (and more consistently) separates them in order to have a look at the
278 | center of each cluster, and try to understand different world tendencies and
279 | differences.
280 |
281 |
282 | import numpy as np
283 | from sklearn.cluster import KMeans
284 |
285 | np.random.seed(1234)
286 | kmeans = KMeans(n_clusters=6)
287 | clusters = kmeans.fit(existing_df)
288 | existing_df_2d['cluster'] = pd.Series(clusters.labels_, index=existing_df_2d.index)
289 |
290 | import numpy as np
291 | styles = ['b','r','y','c','g','k']
292 | existing_df_2d.plot(
293 | kind='scatter',
294 | x='PC2',y='PC1',
295 | c=[styles[i] for i in existing_df_2d.cluster.astype(np.int)],
296 | s=100,
297 | figsize=(16,8))
298 |
299 |
300 |
301 |
302 |
303 |
304 |
305 |
306 |
307 | 
308 |
309 |
310 | Most clusters divide the distribution vertically (i.e. based on the absolute
311 | number of cases) but there is also a division in the horizontal axis that we
312 | will have a look at. In order to complement this view, let's have a look at the
313 | same data as a line chart that represents how each cluster representative
314 | evolves over time.
315 |
316 |
317 | cluster_centers_df = pd.DataFrame(
318 | clusters.cluster_centers_,
319 | index=['World Cluster 1', 'World Cluster 2', 'World Cluster 3', 'World Cluster 4', 'World Cluster 5', 'World Cluster 6'])
320 | cluster_centers_df.columns = existing_df.columns
321 |
322 | ax = cluster_centers_df.T.plot(
323 | figsize=(16,8),
324 | style=styles,
325 | linewidth = 3)
326 | ax.set_ylabel("Existing cases per 100K")
327 |
328 |
329 |
330 |
331 |
332 |
333 |
334 |
335 |
336 | 
337 |
338 |
339 | Let's analyse each of these world clusters or groups in detail.
340 |
341 | ### World Cluster 1
342 |
343 |
344 | sum(clusters.labels_ == 0)
345 |
346 |
347 |
348 |
349 | 90
350 |
351 |
352 |
353 | There are 90 countries in the first cluster, and these are:
354 |
355 |
356 | existing_df_2d[existing_df_2d.cluster == 0].index
357 |
358 |
359 |
360 |
361 | Index([u'Albania', u'Algeria', u'American Samoa', u'Andorra', u'Anguilla', u'Antigua and Barbuda', u'Argentina', u'Australia', u'Austria', u'Bahamas', u'Barbados', u'Belgium', u'Belize', u'Bermuda', u'British Virgin Islands', u'Bulgaria', u'Canada', u'Cayman Islands', u'Chile', u'Colombia', u'Cook Islands', u'Costa Rica', u'Cuba', u'Cyprus', u'Czech Republic', u'Denmark', u'Dominica', u'Egypt', u'Estonia', u'Fiji', u'Finland', u'France', u'French Polynesia', u'Germany', u'Greece', u'Grenada', u'Hungary', u'Iceland', u'Iran', u'Ireland', u'Israel', u'Italy', u'Jamaica', u'Japan', u'Jordan', u'Kuwait', u'Lebanon', u'Libyan Arab Jamahiriya', u'Luxembourg', u'Malta', u'Mauritius', u'Mexico', u'Monaco', u'Montserrat', u'Netherlands', u'Netherlands Antilles', u'New Caledonia', u'New Zealand', u'Norway', u'Oman', u'Panama', u'Poland', u'Portugal', u'Puerto Rico', u'Saint Kitts and Nevis', u'Saint Lucia', u'Saint Vincent and the Grenadines', u'Samoa', u'San Marino', u'Saudi Arabia', u'Singapore', u'Slovakia', u'Slovenia', u'Spain', u'Sweden', u'Switzerland', u'Syrian Arab Republic', u'Macedonia, FYR', u'Tonga', u'Trinidad and Tobago', u'Tunisia', u'Turkey', u'Turks and Caicos Islands', u'United Arab Emirates', u'United Kingdom', u'Virgin Islands (U.S.)', u'United States of America', u'Uruguay', u'Venezuela', u'West Bank and Gaza'], dtype='object')
362 |
363 |
364 |
365 | The center of this cluster gives us an idea of how an average country might look
366 | like:
367 |
368 |
369 | cluster_centers_df.loc['World Cluster 1']
370 |
371 |
372 |
373 |
374 | year
375 | 1990 37.277778
376 | 1991 35.688889
377 | 1992 35.733333
378 | 1993 34.400000
379 | 1994 33.511111
380 | 1995 32.422222
381 | 1996 30.800000
382 | 1997 30.511111
383 | 1998 29.300000
384 | 1999 26.777778
385 | 2000 24.355556
386 | 2001 23.577778
387 | 2002 22.022222
388 | 2003 20.933333
389 | 2004 20.488889
390 | 2005 19.922222
391 | 2006 19.255556
392 | 2007 19.111111
393 | Name: World Cluster 1, dtype: float64
394 |
395 |
396 |
397 | Although this group of countries might be a bit too large and heterogeneous, and
398 | probably needs further refinement, it is a good grouping when comparing their
399 | situation to that of other countries in the world. In any case it contains those
400 | countries with less number of existing cases in our set.
401 |
402 | ### World Cluster 2
403 |
404 |
405 | sum(clusters.labels_ == 1)
406 |
407 |
408 |
409 |
410 | 15
411 |
412 |
413 |
414 | There are just 15 countries in this small group. These are:
415 |
416 |
417 | existing_df_2d[existing_df_2d.cluster == 1].index
418 |
419 |
420 |
421 |
422 | Index([u'Bangladesh', u'Bhutan', u'Cambodia', u'Korea, Dem. Rep.', u'Kiribati', u'Mali', u'Mauritania', u'Namibia', u'Philippines', u'Sierra Leone', u'South Africa', u'Swaziland', u'Timor-Leste', u'Togo', u'Zambia'], dtype='object')
423 |
424 |
425 |
426 | Apart from the world cluster 6, that is formed by a single country as we will
427 | see, this group is represented by the centroid with the highest prevalence of
428 | tuberculosis per 100K:
429 |
430 |
431 | cluster_centers_df.loc['World Cluster 2']
432 |
433 |
434 |
435 |
436 | year
437 | 1990 715.933333
438 | 1991 702.800000
439 | 1992 686.400000
440 | 1993 669.800000
441 | 1994 654.200000
442 | 1995 641.066667
443 | 1996 618.400000
444 | 1997 618.466667
445 | 1998 599.000000
446 | 1999 603.333333
447 | 2000 612.733333
448 | 2001 626.200000
449 | 2002 582.400000
450 | 2003 577.200000
451 | 2004 568.266667
452 | 2005 571.466667
453 | 2006 567.400000
454 | 2007 561.866667
455 | Name: World Cluster 2, dtype: float64
456 |
457 |
458 |
459 | These are by all means the countries with the most tuberculosis cases every
460 | year. We can also see that the number of cases descends progressively. The total
461 | decrease between 1990 and 2007 is over 20%.
462 |
463 | ### World Cluster 3
464 |
465 |
466 | sum(clusters.labels_ == 2)
467 |
468 |
469 |
470 |
471 | 20
472 |
473 |
474 |
475 | This is a very important group of countries. There are 20 of them:
476 |
477 |
478 | existing_df_2d[existing_df_2d.cluster == 2].index
479 |
480 |
481 |
482 |
483 | Index([u'Botswana', u'Burkina Faso', u'Burundi', u'Central African Republic', u'Chad', u'Congo, Rep.', u'Cote d'Ivoire', u'Congo, Dem. Rep.', u'Equatorial Guinea', u'Ethiopia', u'Guinea', u'Kenya', u'Lesotho', u'Mozambique', u'Nigeria', u'Rwanda', u'Senegal', u'Uganda', u'Tanzania', u'Zimbabwe'], dtype='object')
484 |
485 |
486 |
487 | The average country that represents them looks like this:
488 |
489 |
490 | cluster_centers_df.loc['World Cluster 3']
491 |
492 |
493 |
494 |
495 | year
496 | 1990 259.85
497 | 1991 278.90
498 | 1992 287.30
499 | 1993 298.05
500 | 1994 309.00
501 | 1995 322.95
502 | 1996 335.00
503 | 1997 357.65
504 | 1998 369.65
505 | 1999 410.85
506 | 2000 422.25
507 | 2001 463.75
508 | 2002 492.45
509 | 2003 525.25
510 | 2004 523.60
511 | 2005 519.90
512 | 2006 509.80
513 | 2007 513.50
514 | Name: World Cluster 3, dtype: float64
515 |
516 |
517 |
518 | This is the only cluster where the number of cases has increased over the years,
519 | and is about to overtake the first position by 2007. It represents a country
520 | that might be in the middle of an humanitarian crisis and probably being
521 | affected by other infectious diseases such as HIV. We can see how the number of
522 | existing cases per 100K has doubled in the 1990-2007 period.
523 |
524 | ### World Cluster 4
525 |
526 |
527 | sum(clusters.labels_ == 3)
528 |
529 |
530 |
531 |
532 | 51
533 |
534 |
535 |
536 | The fourth cluster contains 51 countries.
537 |
538 |
539 | existing_df_2d[existing_df_2d.cluster == 3].index
540 |
541 |
542 |
543 |
544 | Index([u'Armenia', u'Azerbaijan', u'Bahrain', u'Belarus', u'Benin', u'Bosnia and Herzegovina', u'Brazil', u'Brunei Darussalam', u'Cameroon', u'Comoros', u'Croatia', u'Dominican Republic', u'Ecuador', u'El Salvador', u'Eritrea', u'Georgia', u'Guam', u'Guatemala', u'Guyana', u'Honduras', u'Iraq', u'Kazakhstan', u'Kyrgyzstan', u'Latvia', u'Lithuania', u'Malaysia', u'Maldives', u'Micronesia, Fed. Sts.', u'Morocco', u'Nauru', u'Nicaragua', u'Niue', u'Northern Mariana Islands', u'Palau', u'Paraguay', u'Qatar', u'Korea, Rep.', u'Moldova', u'Romania', u'Russian Federation', u'Seychelles', u'Sri Lanka', u'Suriname', u'Tajikistan', u'Tokelau', u'Turkmenistan', u'Ukraine', u'Uzbekistan', u'Vanuatu', u'Wallis et Futuna', u'Yemen'], dtype='object')
545 |
546 |
547 |
548 | Represented by its centroid.
549 |
550 |
551 | cluster_centers_df.loc['World Cluster 4']
552 |
553 |
554 |
555 |
556 | year
557 | 1990 130.607843
558 | 1991 133.411765
559 | 1992 125.607843
560 | 1993 127.549020
561 | 1994 124.823529
562 | 1995 127.705882
563 | 1996 121.686275
564 | 1997 130.509804
565 | 1998 125.823529
566 | 1999 124.450980
567 | 2000 110.588235
568 | 2001 106.607843
569 | 2002 121.098039
570 | 2003 103.019608
571 | 2004 101.803922
572 | 2005 97.294118
573 | 2006 96.176471
574 | 2007 91.686275
575 | Name: World Cluster 4, dtype: float64
576 |
577 |
578 |
579 | This cluster is pretty close to the first and larger one. It contains many
580 | american countries, some european countries, etc. Some of them are large and
581 | rich, such as Russia or Brazil. Structurally the differece with the countries in
582 | World Cluster 1 may reside in a larger number of cases per 100K. They also seem
583 | to be decreasing the number of cases slightly faster than World Cluster 1. These
584 | two reasons made them form a different group.
585 |
586 | ### World Cluster 5
587 |
588 |
589 | sum(clusters.labels_ == 4)
590 |
591 |
592 |
593 |
594 | 30
595 |
596 |
597 |
598 | This group contains 50 countries:
599 |
600 |
601 | existing_df_2d[existing_df_2d.cluster == 4].index
602 |
603 |
604 |
605 |
606 | Index([u'Afghanistan', u'Angola', u'Bolivia', u'Cape Verde', u'China', u'Gabon', u'Gambia', u'Ghana', u'Guinea-Bissau', u'Haiti', u'India', u'Indonesia', u'Laos', u'Liberia', u'Madagascar', u'Malawi', u'Mongolia', u'Myanmar', u'Nepal', u'Niger', u'Pakistan', u'Papua New Guinea', u'Peru', u'Sao Tome and Principe', u'Solomon Islands', u'Somalia', u'Sudan', u'Thailand', u'Tuvalu', u'Viet Nam'], dtype='object')
607 |
608 |
609 |
610 | With a tendency given by:
611 |
612 |
613 | cluster_centers_df.loc['World Cluster 5']
614 |
615 |
616 |
617 |
618 | year
619 | 1990 444.500000
620 | 1991 435.200000
621 | 1992 426.166667
622 | 1993 417.400000
623 | 1994 409.233333
624 | 1995 400.566667
625 | 1996 378.600000
626 | 1997 365.366667
627 | 1998 358.033333
628 | 1999 354.433333
629 | 2000 350.600000
630 | 2001 326.733333
631 | 2002 316.166667
632 | 2003 308.500000
633 | 2004 297.866667
634 | 2005 288.800000
635 | 2006 284.966667
636 | 2007 280.800000
637 | Name: World Cluster 5, dtype: float64
638 |
639 |
640 |
641 | It is a relatively large cluster. Still countries with lots of cases, but
642 | definitively less than the first cluster. We see countries such as India or
643 | China here, the larger countries on earth (if you Google about it, you'll see
644 | that China itself has reduced its cases by 85% over time) and american countries
645 | such as Peru or Bolivia. In fact, this is the cluster with the fastest decrease
646 | in the number of existing cases as we see in the line chart.
647 |
648 | ### World Cluster 6
649 |
650 |
651 | sum(clusters.labels_ == 5)
652 |
653 |
654 |
655 |
656 | 1
657 |
658 |
659 |
660 | The last group is formed by a single country, Djibouti.
661 |
662 |
663 | existing_df.loc['Djibouti']
664 |
665 |
666 |
667 |
668 | year
669 | 1990 1485
670 | 1991 1477
671 | 1992 1463
672 | 1993 1442
673 | 1994 1414
674 | 1995 1381
675 | 1996 720
676 | 1997 669
677 | 1998 698
678 | 1999 701
679 | 2000 761
680 | 2001 775
681 | 2002 932
682 | 2003 960
683 | 2004 1034
684 | 2005 1046
685 | 2006 1093
686 | 2007 1104
687 | Name: Djibouti, dtype: int64
688 |
689 |
690 |
691 | It is so badly affected by the disease that it forms a separate cluster on its
692 | own. You can google about ['high prevalence tuberculosis
693 | Djibouti'](https://www.google.co.uk/webhp?sourceid=chrome-
694 | instant&ion=1&espv=2&ie=UTF-8#q=high+prevalence+tuberculosis+djibouti) and see
695 | how this situation has been and still is subject to study and actions. Wikipedia
696 | also has an [article about health in
697 | Djibuti](https://en.wikipedia.org/wiki/Health_in_Djibouti).
698 |
699 | > In Djibouti, malnutrition is severe and the incidence of tuberculosis is high.
700 | Malaria is endemic. There were 3,111 reported cases of tuberculosis in 2009. The
701 | city of Djibouti’s publicly supplied water is suspect because the system is in
702 | disrepair.
703 |
704 | Our dataset estimates existing cases of tuberculosis per 100K. We don't know if
705 | that number in Wikipedia makes reference to new or existing cases, but it seems
706 | to be by absolute terms and not per 100K. In both cases, new and existing, if we
707 | compare the WHO numbers for 2007, it seems a reduction in the number of cases
708 | (e.g. the number of estimated new cases in 2007 was 6,769). The population of
709 | the country is 810,179.
710 |
711 | ## Conclusions
712 |
713 | During our analysis, we have seen how most countries improved their situation
714 | regarding the prevalence of infectious tuberculosis during the time lapse we
715 | considered. However we were also able to discover a group of countries with a
716 | high prevalence of the disease that, far from improving their situation, are
717 | increasing the number of cases.
718 |
719 | We have just scratched the surface. There are other analysis we can carry out by
720 | using complementary datasets form the World Health Organisation, such as
721 | detection rates, new cases, or deaths. We can also cross link this datasets with
722 | others related to HIV/AIDS in order to confirm the co-ocurrence of both
723 | diseases.
724 |
725 | This analysis also opens the door to analyise the impact of Tuberculosis
726 | programs. Once we are able to identify different groups of countries and their
727 | tendencies, we can follow them over time and associate changes (e.g. prevalence
728 | or incidence) with the time when these programs started.
729 |
730 | All these approaches should create awareness on the real situation of a disease
731 | that is causing millions of deaths in some countries, while it was about to be
732 | neglected in some others.
733 |
--------------------------------------------------------------------------------
/articles/tuberculosis-world-situation/tb-world-situation_files/tb-world-situation_12_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jadianes/data-journalism/303efe78dc9d2f00958ac2fc71811e13d64198d2/articles/tuberculosis-world-situation/tb-world-situation_files/tb-world-situation_12_1.png
--------------------------------------------------------------------------------
/articles/tuberculosis-world-situation/tb-world-situation_files/tb-world-situation_14_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jadianes/data-journalism/303efe78dc9d2f00958ac2fc71811e13d64198d2/articles/tuberculosis-world-situation/tb-world-situation_files/tb-world-situation_14_1.png
--------------------------------------------------------------------------------
/articles/tuberculosis-world-situation/tb-world-situation_files/tb-world-situation_8_0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jadianes/data-journalism/303efe78dc9d2f00958ac2fc71811e13d64198d2/articles/tuberculosis-world-situation/tb-world-situation_files/tb-world-situation_8_0.png
--------------------------------------------------------------------------------
/articles/tuberculosis-world-situation/tb_existing_100.csv:
--------------------------------------------------------------------------------
1 | "TB prevalence, all forms (per 100 000 population per year)",1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007
2 | Afghanistan,436,429,422,415,407,397,397,387,374,373,346,326,304,308,283,267,251,238
3 | Albania,42,40,41,42,42,43,42,44,43,42,40,34,32,32,29,29,26,22
4 | Algeria,45,44,44,43,43,42,43,44,45,46,48,49,50,51,52,53,55,56
5 | American Samoa,42,14,4,18,17,22,0,25,12,8,8,6,5,6,9,11,9,5
6 | Andorra,39,37,35,33,32,30,28,23,24,22,20,20,21,18,19,18,17,19
7 | Angola,514,514,513,512,510,508,512,363,414,384,530,335,307,281,318,331,302,294
8 | Anguilla,38,38,37,37,36,35,35,36,36,36,35,35,35,35,35,34,34,34
9 | Antigua and Barbuda,16,15,15,14,13,12,12,11,11,9,8,9,7,9,8,8,9,9
10 | Argentina,96,91,86,82,78,74,71,67,63,58,52,51,42,41,39,39,37,35
11 | Armenia,52,49,51,55,60,68,74,75,74,86,94,99,97,91,85,79,79,81
12 | Australia,7,7,7,7,7,7,7,7,6,6,6,6,6,6,6,6,6,6
13 | Austria,18,17,16,15,15,14,13,13,12,12,11,11,11,10,10,10,10,10
14 | Azerbaijan,58,55,57,61,67,76,85,91,100,106,113,117,99,109,90,85,86,86
15 | Bahamas,54,53,52,52,53,54,54,54,55,46,45,45,51,51,50,50,50,51
16 | Bahrain,120,113,108,101,97,92,89,86,83,67,57,56,55,53,48,45,45,60
17 | Bangladesh,639,623,608,594,579,576,550,535,516,492,500,491,478,458,444,416,392,387
18 | Barbados,8,8,7,7,6,6,6,6,5,5,5,4,4,4,4,4,3,3
19 | Belarus,62,54,59,62,75,82,91,98,109,113,110,100,89,68,68,68,69,69
20 | Belgium,16,15,15,15,15,14,13,13,12,12,12,13,12,11,11,11,10,9
21 | Belize,65,64,62,59,57,55,37,41,53,53,39,36,36,40,42,38,41,46
22 | Benin,140,138,135,132,129,125,127,129,130,128,128,129,137,139,134,135,134,135
23 | Bermuda,10,10,9,9,8,8,8,8,7,7,7,6,6,6,6,6,6,6
24 | Bhutan,924,862,804,750,699,651,620,597,551,538,515,512,472,460,443,412,406,363
25 | Bolivia,377,362,347,333,320,306,271,264,254,248,238,229,223,218,211,205,202,198
26 | Bosnia and Herzegovina,160,156,154,150,143,134,131,125,96,80,70,63,66,63,55,58,58,55
27 | Botswana,344,355,351,349,347,349,336,349,371,413,445,497,535,586,598,599,621,622
28 | Brazil,124,119,114,109,104,100,97,93,88,86,83,80,77,72,63,60,56,60
29 | British Virgin Islands,32,30,28,26,25,23,22,21,20,19,19,18,18,17,16,17,16,16
30 | Brunei Darussalam,91,91,91,91,91,91,91,88,88,93,108,85,78,73,63,55,59,65
31 | Bulgaria,43,48,54,57,58,57,59,65,68,68,64,63,52,42,40,41,40,41
32 | Burkina Faso,179,196,208,221,233,246,251,271,286,308,338,368,398,419,426,421,411,403
33 | Burundi,288,302,292,293,305,322,339,346,424,412,455,522,581,619,639,654,657,647
34 | Cambodia,928,905,881,858,836,811,810,789,777,764,758,750,728,712,696,676,672,664
35 | Cameroon,188,199,200,199,197,197,196,207,212,219,228,241,240,227,228,213,201,195
36 | Canada,7,7,7,6,6,6,5,5,5,5,5,4,4,4,4,4,4,4
37 | Cape Verde,449,438,428,418,408,398,394,391,387,384,380,283,374,370,367,278,285,280
38 | Cayman Islands,10,10,9,9,8,8,8,8,7,7,7,5,6,6,5,5,6,5
39 | Central African Republic,318,336,342,350,356,365,270,395,419,449,485,495,468,566,574,507,437,425
40 | Chad,251,272,282,294,304,315,354,408,433,390,420,450,502,573,548,518,505,497
41 | Chile,45,41,38,35,32,30,28,25,24,22,21,19,19,18,15,15,13,12
42 | China,327,321,315,309,303,303,290,283,276,273,269,265,259,241,220,206,200,194
43 | Colombia,88,85,82,79,76,73,71,69,67,61,51,62,60,58,55,53,44,43
44 | Comoros,188,177,167,157,148,140,130,155,120,143,112,103,104,107,99,91,86,83
45 | "Congo, Rep.",209,222,231,243,255,269,424,457,367,545,313,354,402,509,477,482,511,485
46 | Cook Islands,0,10,57,47,38,19,10,13,0,40,12,29,11,0,15,9,16,31
47 | Costa Rica,30,28,27,26,25,24,23,22,21,19,14,14,15,14,12,12,12,11
48 | Croatia,126,123,121,118,113,106,103,102,99,89,76,73,69,68,67,65,65,54
49 | Cuba,32,29,26,24,22,20,18,17,15,14,13,12,11,10,9,8,8,7
50 | Cyprus,14,13,13,12,11,11,11,10,7,7,9,8,7,6,6,6,6,6
51 | Czech Republic,22,22,22,21,21,21,21,21,19,18,16,14,13,12,11,11,10,9
52 | Cote d'Ivoire,292,304,306,309,312,319,329,350,376,413,472,571,561,590,604,613,597,582
53 | "Korea, Dem. Rep.",841,828,815,802,788,775,775,775,775,770,713,650,577,527,499,508,500,441
54 | "Congo, Dem. Rep.",275,306,327,352,376,411,420,466,472,528,592,643,697,708,710,702,692,666
55 | Denmark,12,12,11,10,10,9,9,8,8,8,7,7,7,7,7,6,7,6
56 | Djibouti,"1,485","1,477","1,463","1,442","1,414","1,381",720,669,698,701,761,775,932,960,"1,034","1,046","1,093","1,104"
57 | Dominica,24,24,24,23,23,22,22,18,20,20,20,22,20,20,20,21,13,19
58 | Dominican Republic,183,173,164,156,148,141,135,132,128,122,119,115,102,93,90,85,84,82
59 | Ecuador,282,271,259,249,238,228,221,212,207,200,194,185,170,162,155,155,148,140
60 | Egypt,48,47,47,45,45,44,51,46,43,40,36,34,32,31,29,28,27,27
61 | El Salvador,133,126,119,112,105,99,97,80,76,72,69,66,62,60,57,52,50,48
62 | Equatorial Guinea,169,181,187,194,200,207,216,222,236,253,274,441,470,490,370,366,358,469
63 | Eritrea,245,245,242,239,235,232,232,225,203,114,114,111,118,110,122,127,133,134
64 | Estonia,50,50,56,66,77,85,88,98,102,105,72,68,62,56,50,46,44,39
65 | Ethiopia,312,337,351,366,383,403,396,397,420,464,486,539,569,601,613,612,604,579
66 | Fiji,68,65,62,58,55,53,49,49,46,40,42,35,36,29,33,31,30,30
67 | Finland,14,12,11,10,9,10,10,10,9,9,8,7,7,6,6,5,5,5
68 | France,21,20,19,18,17,16,15,15,14,14,13,12,12,12,12,11,11,11
69 | French Polynesia,67,55,91,83,93,107,55,48,56,54,40,42,32,29,28,31,31,32
70 | Gabon,359,340,325,318,316,293,312,320,359,366,434,249,302,299,288,332,358,379
71 | Gambia,350,350,349,347,344,341,324,321,311,485,491,499,335,343,341,366,399,404
72 | Georgia,51,48,50,54,59,66,73,104,87,90,98,95,95,94,90,86,83,83
73 | Germany,15,15,14,14,13,13,12,11,11,10,9,8,7,6,6,6,5,5
74 | Ghana,533,519,502,480,455,432,426,388,384,382,368,358,359,358,359,357,355,353
75 | Greece,30,29,27,25,24,23,22,22,21,20,19,18,18,17,17,16,16,16
76 | Grenada,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,6
77 | Guam,103,101,96,110,146,93,91,89,87,86,44,45,44,47,41,42,39,36
78 | Guatemala,113,111,108,106,103,100,95,94,93,92,90,91,89,89,86,85,84,87
79 | Guinea,241,248,255,262,269,275,277,293,305,317,332,346,363,380,391,425,426,448
80 | Guinea-Bissau,404,403,402,399,395,390,390,387,385,386,273,276,305,296,287,283,270,276
81 | Guyana,39,43,34,43,50,67,78,81,90,93,98,112,126,136,130,132,133,136
82 | Haiti,479,464,453,443,435,429,428,426,417,407,403,397,388,380,377,368,368,366
83 | Honduras,141,133,128,123,119,115,114,112,106,98,70,70,72,71,72,71,70,71
84 | Hungary,67,68,70,72,73,73,74,72,67,47,43,39,36,33,29,26,22,19
85 | Iceland,5,4,4,4,4,4,3,3,3,3,3,3,2,2,2,3,3,3
86 | India,586,577,566,555,542,525,517,501,487,476,443,411,389,349,311,299,290,283
87 | Indonesia,443,430,417,404,392,380,369,359,348,335,326,314,297,287,274,261,251,244
88 | Iran,50,51,56,54,55,55,61,52,45,41,40,38,37,35,32,31,29,27
89 | Iraq,88,88,88,88,88,88,84,84,82,80,71,69,65,67,71,75,78,79
90 | Ireland,19,18,18,17,15,14,12,12,12,12,12,11,10,10,10,10,10,11
91 | Israel,11,10,10,9,9,8,8,8,8,7,7,7,6,6,6,6,6,6
92 | Italy,11,10,10,9,9,8,9,8,7,7,7,7,7,6,6,6,6,6
93 | Jamaica,10,10,10,10,9,9,7,7,7,7,7,7,7,7,7,7,7,7
94 | Japan,62,60,58,56,53,51,50,50,49,48,45,41,39,36,34,32,30,28
95 | Jordan,19,18,17,17,16,15,20,18,12,11,11,9,9,9,9,8,9,9
96 | Kazakhstan,95,87,85,84,85,94,109,137,163,134,141,148,150,155,152,147,144,139
97 | Kenya,125,120,134,152,177,207,233,277,313,351,393,384,392,402,410,388,340,319
98 | Kiribati,"1,026","1,006",986,966,947,928,910,853,571,556,546,607,587,477,439,419,405,423
99 | Kuwait,89,84,80,75,72,68,66,64,61,35,33,33,30,29,29,30,25,25
100 | Kyrgyzstan,90,93,93,93,101,118,141,165,147,146,156,169,153,145,139,136,135,134
101 | Laos,428,424,420,415,411,407,373,360,352,344,344,337,330,324,313,298,291,289
102 | Latvia,56,57,59,63,75,91,77,89,92,95,91,89,85,78,72,66,61,55
103 | Lebanon,64,64,63,62,62,59,64,54,50,37,35,30,26,24,22,21,23,23
104 | Lesotho,225,231,229,228,232,242,248,264,298,518,356,370,399,408,414,421,408,568
105 | Liberia,476,473,469,465,462,461,418,424,396,403,435,437,382,429,370,416,393,398
106 | Libyan Arab Jamahiriya,46,45,45,43,43,42,41,38,36,23,22,22,21,20,19,18,18,17
107 | Lithuania,64,66,71,79,89,98,110,119,125,120,115,96,83,72,72,66,65,69
108 | Luxembourg,19,18,17,16,15,14,14,13,13,12,11,11,11,10,10,10,10,9
109 | Madagascar,367,368,369,369,370,370,339,345,346,352,359,371,382,375,384,408,400,417
110 | Malawi,380,376,365,355,353,348,337,342,345,349,362,350,358,353,346,342,324,305
111 | Malaysia,159,158,156,155,153,151,147,173,170,167,135,133,132,128,128,126,123,121
112 | Maldives,143,130,118,107,97,88,88,101,89,94,96,84,83,69,71,63,69,48
113 | Mali,640,631,621,609,597,583,573,566,565,567,571,573,572,578,584,589,593,599
114 | Malta,10,9,9,8,8,7,7,7,7,6,6,6,5,5,5,5,5,5
115 | Mauritania,585,587,590,592,594,595,622,615,612,615,619,624,632,642,494,565,556,559
116 | Mauritius,53,51,50,48,47,45,62,61,45,40,39,42,40,39,38,39,39,39
117 | Mexico,101,93,86,80,74,68,64,58,52,48,42,38,35,33,31,27,25,23
118 | "Micronesia, Fed. Sts.",263,253,244,234,225,217,204,287,276,265,173,171,152,142,128,124,112,100
119 | Monaco,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2
120 | Mongolia,477,477,477,477,477,477,333,342,307,281,297,273,258,258,233,232,217,234
121 | Montserrat,14,14,14,14,14,13,13,13,13,13,13,13,13,10,13,10,12,8
122 | Morocco,134,130,127,123,119,116,107,106,105,99,98,95,87,91,89,85,82,80
123 | Mozambique,287,313,328,343,356,369,386,408,432,461,499,535,556,569,567,551,528,504
124 | Myanmar,411,400,389,379,370,361,298,309,312,298,267,238,202,175,168,161,161,162
125 | Namibia,650,685,687,683,671,658,387,395,411,442,481,506,544,560,572,570,556,532
126 | Nauru,170,285,280,274,90,263,258,253,248,44,44,56,57,48,162,121,174,33
127 | Nepal,629,607,585,564,543,523,498,473,448,363,312,304,285,271,260,247,246,240
128 | Netherlands,11,10,10,9,9,8,8,8,8,7,7,7,6,6,6,6,6,6
129 | Netherlands Antilles,28,27,25,24,23,22,21,20,19,18,17,17,17,16,16,15,15,15
130 | New Caledonia,112,107,104,76,69,60,58,97,97,51,51,43,34,28,29,29,25,25
131 | New Zealand,10,10,9,9,10,11,10,10,11,11,11,10,10,10,10,9,8,7
132 | Nicaragua,145,137,129,122,114,108,100,97,93,89,85,80,79,73,69,68,64,56
133 | Niger,317,318,319,319,319,318,322,292,281,281,278,280,288,275,287,285,289,292
134 | Nigeria,282,307,321,336,350,366,379,399,423,452,489,526,563,575,573,563,543,521
135 | Niue,118,115,113,111,109,106,202,0,0,114,0,0,506,0,0,0,0,0
136 | Northern Mariana Islands,142,201,301,194,186,185,188,331,334,220,135,120,95,83,80,83,83,72
137 | Norway,8,8,8,7,7,6,6,6,6,5,5,5,5,5,4,4,4,4
138 | Oman,40,36,29,25,22,22,15,15,14,14,13,14,13,13,12,13,13,14
139 | Pakistan,430,428,427,426,424,422,421,421,415,420,413,406,376,355,333,289,260,223
140 | Palau,96,66,43,260,414,187,53,92,54,376,104,102,69,64,31,102,74,71
141 | Panama,74,73,71,70,69,68,67,67,65,64,60,51,48,49,44,44,44,45
142 | Papua New Guinea,498,498,497,497,496,496,494,493,491,489,486,482,477,471,463,453,441,430
143 | Paraguay,95,93,92,91,89,88,71,92,92,91,90,89,88,85,85,81,74,73
144 | Peru,394,368,343,320,298,278,270,251,230,222,210,198,187,182,167,155,143,136
145 | Philippines,799,783,766,750,735,719,705,689,669,649,600,578,561,542,534,520,505,500
146 | Poland,88,87,86,85,83,79,74,68,63,58,53,50,35,34,33,31,29,28
147 | Portugal,51,49,47,45,44,43,42,41,39,38,36,34,33,32,29,27,24,23
148 | Puerto Rico,17,15,17,18,18,18,15,13,12,10,9,8,7,6,6,6,6,5
149 | Qatar,71,69,69,74,84,89,87,84,75,78,78,78,75,71,71,69,77,81
150 | "Korea, Rep.",223,196,174,150,142,132,105,98,89,107,113,112,126,108,112,118,122,126
151 | Moldova,105,99,103,111,122,138,157,171,191,203,215,174,211,176,152,151,151,151
152 | Romania,118,125,134,147,159,167,174,184,129,194,197,206,180,185,178,148,138,128
153 | Russian Federation,69,64,70,78,91,111,132,142,155,160,164,158,148,140,135,121,117,115
154 | Rwanda,190,211,226,243,259,278,297,316,339,383,442,503,549,581,607,607,595,590
155 | Saint Kitts and Nevis,17,17,16,16,16,15,16,15,11,12,15,13,12,14,13,15,14,12
156 | Saint Lucia,26,26,25,25,25,24,23,17,16,18,20,18,17,19,18,18,18,18
157 | Saint Vincent and the Grenadines,45,45,44,43,42,42,42,41,38,41,35,36,36,34,36,36,34,39
158 | Samoa,36,35,34,33,32,31,35,33,50,31,27,33,28,28,24,27,26,25
159 | San Marino,9,9,8,8,7,7,7,7,7,6,6,6,6,5,5,5,5,5
160 | Sao Tome and Principe,346,335,325,315,304,295,290,285,290,276,272,266,261,266,255,256,252,240
161 | Saudi Arabia,68,60,59,60,64,67,71,73,76,72,67,65,62,60,60,60,62,65
162 | Senegal,380,379,379,378,377,376,372,388,397,424,420,430,443,441,454,456,461,468
163 | Seychelles,113,110,106,103,100,96,66,59,71,90,52,53,42,66,52,57,56,55
164 | Sierra Leone,465,479,492,504,517,534,525,565,602,636,675,696,743,784,830,866,902,941
165 | Singapore,52,52,53,50,49,49,50,50,48,44,39,36,34,32,31,28,27,27
166 | Slovakia,55,56,59,59,56,51,46,42,38,35,32,30,29,26,25,21,20,20
167 | Slovenia,66,62,59,57,53,50,35,35,32,29,27,25,22,21,19,16,16,15
168 | Solomon Islands,625,593,563,534,506,480,380,354,339,322,300,286,277,254,229,204,197,180
169 | Somalia,597,587,577,566,555,543,465,444,446,431,414,398,391,362,334,325,341,352
170 | South Africa,769,726,676,620,562,502,480,466,465,426,515,581,586,649,676,707,690,692
171 | Spain,44,42,40,37,35,34,33,30,30,28,27,26,26,25,24,24,24,23
172 | Sri Lanka,109,106,104,102,99,97,102,93,90,89,107,99,88,89,87,75,80,79
173 | Sudan,409,404,402,402,403,405,409,417,378,382,375,389,363,371,376,384,391,402
174 | Suriname,109,100,79,80,76,78,88,101,118,122,115,113,113,120,126,136,146,155
175 | Swaziland,629,590,527,477,448,441,460,504,556,647,740,832,693,739,776,788,801,812
176 | Sweden,5,5,6,6,5,5,5,4,4,4,4,4,4,4,4,4,4,5
177 | Switzerland,14,13,12,11,10,10,9,8,8,8,7,6,6,6,6,5,5,5
178 | Syrian Arab Republic,94,89,84,80,75,71,67,61,54,48,41,37,35,33,31,30,29,27
179 | Tajikistan,193,162,112,79,85,106,134,141,159,169,191,221,248,256,277,282,301,322
180 | Thailand,336,319,307,297,291,285,285,279,256,231,223,194,197,189,188,184,189,192
181 | "Macedonia, FYR",92,90,89,86,83,77,74,73,72,65,56,39,40,37,34,34,34,33
182 | Timor-Leste,706,694,681,669,656,644,644,644,644,644,644,644,345,359,367,370,385,378
183 | Togo,702,687,668,647,628,614,613,658,637,647,656,669,701,693,702,713,726,750
184 | Tokelau,139,140,143,112,0,301,0,112,112,0,0,0,112,0,112,0,0,0
185 | Tonga,45,44,43,43,42,41,38,38,31,34,34,42,35,36,39,32,34,28
186 | Trinidad and Tobago,17,17,17,16,16,16,16,16,15,15,15,16,15,15,15,15,15,15
187 | Tunisia,49,46,49,51,51,49,48,46,44,31,30,28,27,26,27,27,28,28
188 | Turkey,83,79,77,73,68,62,62,63,64,57,49,45,44,43,44,44,32,34
189 | Turkmenistan,105,99,101,97,92,80,92,114,137,142,130,115,110,103,98,91,85,75
190 | Turks and Caicos Islands,42,40,37,35,33,31,30,29,28,17,16,23,23,22,22,22,18,17
191 | Tuvalu,593,573,554,535,518,500,484,467,452,437,422,408,394,381,368,245,261,203
192 | Uganda,206,313,342,377,394,418,419,342,357,359,391,411,447,476,472,469,450,426
193 | Ukraine,67,64,67,72,75,78,87,93,104,109,120,128,133,135,132,113,99,102
194 | United Arab Emirates,47,44,42,39,38,36,34,33,31,30,27,27,27,25,25,24,24,24
195 | United Kingdom,9,9,10,10,9,9,9,9,9,9,9,9,9,10,10,11,11,12
196 | Tanzania,215,228,240,252,269,283,301,324,333,347,364,367,383,380,373,364,353,337
197 | Virgin Islands (U.S.),30,28,27,25,24,23,19,18,17,19,19,18,18,17,17,16,16,16
198 | United States of America,7,7,7,7,6,6,6,5,5,4,4,4,4,4,3,3,3,3
199 | Uruguay,35,34,33,32,31,30,28,27,28,28,27,25,27,25,23,24,25,23
200 | Uzbekistan,114,105,102,118,116,119,111,122,129,134,139,148,144,152,149,144,134,140
201 | Vanuatu,278,268,259,250,242,234,226,218,211,159,143,128,149,128,118,131,104,102
202 | Venezuela,46,45,44,43,42,42,41,41,40,39,39,41,41,39,38,38,38,39
203 | Viet Nam,365,361,358,354,350,346,312,273,261,253,248,243,235,234,226,227,222,220
204 | Wallis et Futuna,126,352,64,174,172,93,123,213,107,105,103,13,275,147,63,57,60,25
205 | West Bank and Gaza,55,54,54,52,52,50,49,46,44,42,40,39,37,36,35,33,32,31
206 | Yemen,265,261,263,253,250,244,233,207,194,175,164,154,149,146,138,137,135,130
207 | Zambia,436,456,494,526,556,585,602,626,634,657,658,680,517,478,468,453,422,387
208 | Zimbabwe,409,417,415,419,426,439,453,481,392,430,479,523,571,632,652,680,699,714
--------------------------------------------------------------------------------