From 70ff4d82b9eaa099b5549ceeb2a8af357cc36559 Mon Sep 17 00:00:00 2001 From: yenyarng Date: Sun, 29 Aug 2021 12:34:50 +0800 Subject: [PATCH 01/12] Add decision tree regression with k-fold validation --- .../2019.csv | 157 + ...lidation of decision tree regression.ipynb | 5038 +++++++++++++++++ 2 files changed, 5195 insertions(+) create mode 100644 machine_learning/Decision tree with k-fold cross validation/2019.csv create mode 100644 machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb diff --git a/machine_learning/Decision tree with k-fold cross validation/2019.csv b/machine_learning/Decision tree with k-fold cross validation/2019.csv new file mode 100644 index 0000000..1e6eea4 --- /dev/null +++ b/machine_learning/Decision tree with k-fold cross validation/2019.csv @@ -0,0 +1,157 @@ +Overall rank,Country or region,Score,GDP per capita,Social support,Healthy life expectancy,Freedom to make life choices,Generosity,Perceptions of corruption +1,Finland,7.769,1.340,1.587,0.986,0.596,0.153,0.393 +2,Denmark,7.600,1.383,1.573,0.996,0.592,0.252,0.410 +3,Norway,7.554,1.488,1.582,1.028,0.603,0.271,0.341 +4,Iceland,7.494,1.380,1.624,1.026,0.591,0.354,0.118 +5,Netherlands,7.488,1.396,1.522,0.999,0.557,0.322,0.298 +6,Switzerland,7.480,1.452,1.526,1.052,0.572,0.263,0.343 +7,Sweden,7.343,1.387,1.487,1.009,0.574,0.267,0.373 +8,New Zealand,7.307,1.303,1.557,1.026,0.585,0.330,0.380 +9,Canada,7.278,1.365,1.505,1.039,0.584,0.285,0.308 +10,Austria,7.246,1.376,1.475,1.016,0.532,0.244,0.226 +11,Australia,7.228,1.372,1.548,1.036,0.557,0.332,0.290 +12,Costa Rica,7.167,1.034,1.441,0.963,0.558,0.144,0.093 +13,Israel,7.139,1.276,1.455,1.029,0.371,0.261,0.082 +14,Luxembourg,7.090,1.609,1.479,1.012,0.526,0.194,0.316 +15,United Kingdom,7.054,1.333,1.538,0.996,0.450,0.348,0.278 +16,Ireland,7.021,1.499,1.553,0.999,0.516,0.298,0.310 +17,Germany,6.985,1.373,1.454,0.987,0.495,0.261,0.265 +18,Belgium,6.923,1.356,1.504,0.986,0.473,0.160,0.210 +19,United States,6.892,1.433,1.457,0.874,0.454,0.280,0.128 +20,Czech Republic,6.852,1.269,1.487,0.920,0.457,0.046,0.036 +21,United Arab Emirates,6.825,1.503,1.310,0.825,0.598,0.262,0.182 +22,Malta,6.726,1.300,1.520,0.999,0.564,0.375,0.151 +23,Mexico,6.595,1.070,1.323,0.861,0.433,0.074,0.073 +24,France,6.592,1.324,1.472,1.045,0.436,0.111,0.183 +25,Taiwan,6.446,1.368,1.430,0.914,0.351,0.242,0.097 +26,Chile,6.444,1.159,1.369,0.920,0.357,0.187,0.056 +27,Guatemala,6.436,0.800,1.269,0.746,0.535,0.175,0.078 +28,Saudi Arabia,6.375,1.403,1.357,0.795,0.439,0.080,0.132 +29,Qatar,6.374,1.684,1.313,0.871,0.555,0.220,0.167 +30,Spain,6.354,1.286,1.484,1.062,0.362,0.153,0.079 +31,Panama,6.321,1.149,1.442,0.910,0.516,0.109,0.054 +32,Brazil,6.300,1.004,1.439,0.802,0.390,0.099,0.086 +33,Uruguay,6.293,1.124,1.465,0.891,0.523,0.127,0.150 +34,Singapore,6.262,1.572,1.463,1.141,0.556,0.271,0.453 +35,El Salvador,6.253,0.794,1.242,0.789,0.430,0.093,0.074 +36,Italy,6.223,1.294,1.488,1.039,0.231,0.158,0.030 +37,Bahrain,6.199,1.362,1.368,0.871,0.536,0.255,0.110 +38,Slovakia,6.198,1.246,1.504,0.881,0.334,0.121,0.014 +39,Trinidad & Tobago,6.192,1.231,1.477,0.713,0.489,0.185,0.016 +40,Poland,6.182,1.206,1.438,0.884,0.483,0.117,0.050 +41,Uzbekistan,6.174,0.745,1.529,0.756,0.631,0.322,0.240 +42,Lithuania,6.149,1.238,1.515,0.818,0.291,0.043,0.042 +43,Colombia,6.125,0.985,1.410,0.841,0.470,0.099,0.034 +44,Slovenia,6.118,1.258,1.523,0.953,0.564,0.144,0.057 +45,Nicaragua,6.105,0.694,1.325,0.835,0.435,0.200,0.127 +46,Kosovo,6.100,0.882,1.232,0.758,0.489,0.262,0.006 +47,Argentina,6.086,1.092,1.432,0.881,0.471,0.066,0.050 +48,Romania,6.070,1.162,1.232,0.825,0.462,0.083,0.005 +49,Cyprus,6.046,1.263,1.223,1.042,0.406,0.190,0.041 +50,Ecuador,6.028,0.912,1.312,0.868,0.498,0.126,0.087 +51,Kuwait,6.021,1.500,1.319,0.808,0.493,0.142,0.097 +52,Thailand,6.008,1.050,1.409,0.828,0.557,0.359,0.028 +53,Latvia,5.940,1.187,1.465,0.812,0.264,0.075,0.064 +54,South Korea,5.895,1.301,1.219,1.036,0.159,0.175,0.056 +55,Estonia,5.893,1.237,1.528,0.874,0.495,0.103,0.161 +56,Jamaica,5.890,0.831,1.478,0.831,0.490,0.107,0.028 +57,Mauritius,5.888,1.120,1.402,0.798,0.498,0.215,0.060 +58,Japan,5.886,1.327,1.419,1.088,0.445,0.069,0.140 +59,Honduras,5.860,0.642,1.236,0.828,0.507,0.246,0.078 +60,Kazakhstan,5.809,1.173,1.508,0.729,0.410,0.146,0.096 +61,Bolivia,5.779,0.776,1.209,0.706,0.511,0.137,0.064 +62,Hungary,5.758,1.201,1.410,0.828,0.199,0.081,0.020 +63,Paraguay,5.743,0.855,1.475,0.777,0.514,0.184,0.080 +64,Northern Cyprus,5.718,1.263,1.252,1.042,0.417,0.191,0.162 +65,Peru,5.697,0.960,1.274,0.854,0.455,0.083,0.027 +66,Portugal,5.693,1.221,1.431,0.999,0.508,0.047,0.025 +67,Pakistan,5.653,0.677,0.886,0.535,0.313,0.220,0.098 +68,Russia,5.648,1.183,1.452,0.726,0.334,0.082,0.031 +69,Philippines,5.631,0.807,1.293,0.657,0.558,0.117,0.107 +70,Serbia,5.603,1.004,1.383,0.854,0.282,0.137,0.039 +71,Moldova,5.529,0.685,1.328,0.739,0.245,0.181,0.000 +72,Libya,5.525,1.044,1.303,0.673,0.416,0.133,0.152 +73,Montenegro,5.523,1.051,1.361,0.871,0.197,0.142,0.080 +74,Tajikistan,5.467,0.493,1.098,0.718,0.389,0.230,0.144 +75,Croatia,5.432,1.155,1.266,0.914,0.296,0.119,0.022 +76,Hong Kong,5.430,1.438,1.277,1.122,0.440,0.258,0.287 +77,Dominican Republic,5.425,1.015,1.401,0.779,0.497,0.113,0.101 +78,Bosnia and Herzegovina,5.386,0.945,1.212,0.845,0.212,0.263,0.006 +79,Turkey,5.373,1.183,1.360,0.808,0.195,0.083,0.106 +80,Malaysia,5.339,1.221,1.171,0.828,0.508,0.260,0.024 +81,Belarus,5.323,1.067,1.465,0.789,0.235,0.094,0.142 +82,Greece,5.287,1.181,1.156,0.999,0.067,0.000,0.034 +83,Mongolia,5.285,0.948,1.531,0.667,0.317,0.235,0.038 +84,North Macedonia,5.274,0.983,1.294,0.838,0.345,0.185,0.034 +85,Nigeria,5.265,0.696,1.111,0.245,0.426,0.215,0.041 +86,Kyrgyzstan,5.261,0.551,1.438,0.723,0.508,0.300,0.023 +87,Turkmenistan,5.247,1.052,1.538,0.657,0.394,0.244,0.028 +88,Algeria,5.211,1.002,1.160,0.785,0.086,0.073,0.114 +89,Morocco,5.208,0.801,0.782,0.782,0.418,0.036,0.076 +90,Azerbaijan,5.208,1.043,1.147,0.769,0.351,0.035,0.182 +91,Lebanon,5.197,0.987,1.224,0.815,0.216,0.166,0.027 +92,Indonesia,5.192,0.931,1.203,0.660,0.491,0.498,0.028 +93,China,5.191,1.029,1.125,0.893,0.521,0.058,0.100 +94,Vietnam,5.175,0.741,1.346,0.851,0.543,0.147,0.073 +95,Bhutan,5.082,0.813,1.321,0.604,0.457,0.370,0.167 +96,Cameroon,5.044,0.549,0.910,0.331,0.381,0.187,0.037 +97,Bulgaria,5.011,1.092,1.513,0.815,0.311,0.081,0.004 +98,Ghana,4.996,0.611,0.868,0.486,0.381,0.245,0.040 +99,Ivory Coast,4.944,0.569,0.808,0.232,0.352,0.154,0.090 +100,Nepal,4.913,0.446,1.226,0.677,0.439,0.285,0.089 +101,Jordan,4.906,0.837,1.225,0.815,0.383,0.110,0.130 +102,Benin,4.883,0.393,0.437,0.397,0.349,0.175,0.082 +103,Congo (Brazzaville),4.812,0.673,0.799,0.508,0.372,0.105,0.093 +104,Gabon,4.799,1.057,1.183,0.571,0.295,0.043,0.055 +105,Laos,4.796,0.764,1.030,0.551,0.547,0.266,0.164 +106,South Africa,4.722,0.960,1.351,0.469,0.389,0.130,0.055 +107,Albania,4.719,0.947,0.848,0.874,0.383,0.178,0.027 +108,Venezuela,4.707,0.960,1.427,0.805,0.154,0.064,0.047 +109,Cambodia,4.700,0.574,1.122,0.637,0.609,0.232,0.062 +110,Palestinian Territories,4.696,0.657,1.247,0.672,0.225,0.103,0.066 +111,Senegal,4.681,0.450,1.134,0.571,0.292,0.153,0.072 +112,Somalia,4.668,0.000,0.698,0.268,0.559,0.243,0.270 +113,Namibia,4.639,0.879,1.313,0.477,0.401,0.070,0.056 +114,Niger,4.628,0.138,0.774,0.366,0.318,0.188,0.102 +115,Burkina Faso,4.587,0.331,1.056,0.380,0.255,0.177,0.113 +116,Armenia,4.559,0.850,1.055,0.815,0.283,0.095,0.064 +117,Iran,4.548,1.100,0.842,0.785,0.305,0.270,0.125 +118,Guinea,4.534,0.380,0.829,0.375,0.332,0.207,0.086 +119,Georgia,4.519,0.886,0.666,0.752,0.346,0.043,0.164 +120,Gambia,4.516,0.308,0.939,0.428,0.382,0.269,0.167 +121,Kenya,4.509,0.512,0.983,0.581,0.431,0.372,0.053 +122,Mauritania,4.490,0.570,1.167,0.489,0.066,0.106,0.088 +123,Mozambique,4.466,0.204,0.986,0.390,0.494,0.197,0.138 +124,Tunisia,4.461,0.921,1.000,0.815,0.167,0.059,0.055 +125,Bangladesh,4.456,0.562,0.928,0.723,0.527,0.166,0.143 +126,Iraq,4.437,1.043,0.980,0.574,0.241,0.148,0.089 +127,Congo (Kinshasa),4.418,0.094,1.125,0.357,0.269,0.212,0.053 +128,Mali,4.390,0.385,1.105,0.308,0.327,0.153,0.052 +129,Sierra Leone,4.374,0.268,0.841,0.242,0.309,0.252,0.045 +130,Sri Lanka,4.366,0.949,1.265,0.831,0.470,0.244,0.047 +131,Myanmar,4.360,0.710,1.181,0.555,0.525,0.566,0.172 +132,Chad,4.350,0.350,0.766,0.192,0.174,0.198,0.078 +133,Ukraine,4.332,0.820,1.390,0.739,0.178,0.187,0.010 +134,Ethiopia,4.286,0.336,1.033,0.532,0.344,0.209,0.100 +135,Swaziland,4.212,0.811,1.149,0.000,0.313,0.074,0.135 +136,Uganda,4.189,0.332,1.069,0.443,0.356,0.252,0.060 +137,Egypt,4.166,0.913,1.039,0.644,0.241,0.076,0.067 +138,Zambia,4.107,0.578,1.058,0.426,0.431,0.247,0.087 +139,Togo,4.085,0.275,0.572,0.410,0.293,0.177,0.085 +140,India,4.015,0.755,0.765,0.588,0.498,0.200,0.085 +141,Liberia,3.975,0.073,0.922,0.443,0.370,0.233,0.033 +142,Comoros,3.973,0.274,0.757,0.505,0.142,0.275,0.078 +143,Madagascar,3.933,0.274,0.916,0.555,0.148,0.169,0.041 +144,Lesotho,3.802,0.489,1.169,0.168,0.359,0.107,0.093 +145,Burundi,3.775,0.046,0.447,0.380,0.220,0.176,0.180 +146,Zimbabwe,3.663,0.366,1.114,0.433,0.361,0.151,0.089 +147,Haiti,3.597,0.323,0.688,0.449,0.026,0.419,0.110 +148,Botswana,3.488,1.041,1.145,0.538,0.455,0.025,0.100 +149,Syria,3.462,0.619,0.378,0.440,0.013,0.331,0.141 +150,Malawi,3.410,0.191,0.560,0.495,0.443,0.218,0.089 +151,Yemen,3.380,0.287,1.163,0.463,0.143,0.108,0.077 +152,Rwanda,3.334,0.359,0.711,0.614,0.555,0.217,0.411 +153,Tanzania,3.231,0.476,0.885,0.499,0.417,0.276,0.147 +154,Afghanistan,3.203,0.350,0.517,0.361,0.000,0.158,0.025 +155,Central African Republic,3.083,0.026,0.000,0.105,0.225,0.235,0.035 +156,South Sudan,2.853,0.306,0.575,0.295,0.010,0.202,0.091 diff --git a/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb b/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb new file mode 100644 index 0000000..712a088 --- /dev/null +++ b/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb @@ -0,0 +1,5038 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Overall rankCountry or regionScoreGDP per capitaSocial supportHealthy life expectancyFreedom to make life choicesGenerosityPerceptions of corruption
01Finland7.7691.3401.5870.9860.5960.1530.393
12Denmark7.6001.3831.5730.9960.5920.2520.410
23Norway7.5541.4881.5821.0280.6030.2710.341
34Iceland7.4941.3801.6241.0260.5910.3540.118
45Netherlands7.4881.3961.5220.9990.5570.3220.298
56Switzerland7.4801.4521.5261.0520.5720.2630.343
67Sweden7.3431.3871.4871.0090.5740.2670.373
78New Zealand7.3071.3031.5571.0260.5850.3300.380
89Canada7.2781.3651.5051.0390.5840.2850.308
910Austria7.2461.3761.4751.0160.5320.2440.226
1011Australia7.2281.3721.5481.0360.5570.3320.290
1112Costa Rica7.1671.0341.4410.9630.5580.1440.093
1213Israel7.1391.2761.4551.0290.3710.2610.082
1314Luxembourg7.0901.6091.4791.0120.5260.1940.316
1415United Kingdom7.0541.3331.5380.9960.4500.3480.278
1516Ireland7.0211.4991.5530.9990.5160.2980.310
1617Germany6.9851.3731.4540.9870.4950.2610.265
1718Belgium6.9231.3561.5040.9860.4730.1600.210
1819United States6.8921.4331.4570.8740.4540.2800.128
1920Czech Republic6.8521.2691.4870.9200.4570.0460.036
2021United Arab Emirates6.8251.5031.3100.8250.5980.2620.182
2122Malta6.7261.3001.5200.9990.5640.3750.151
2223Mexico6.5951.0701.3230.8610.4330.0740.073
2324France6.5921.3241.4721.0450.4360.1110.183
2425Taiwan6.4461.3681.4300.9140.3510.2420.097
2526Chile6.4441.1591.3690.9200.3570.1870.056
2627Guatemala6.4360.8001.2690.7460.5350.1750.078
2728Saudi Arabia6.3751.4031.3570.7950.4390.0800.132
2829Qatar6.3741.6841.3130.8710.5550.2200.167
2930Spain6.3541.2861.4841.0620.3620.1530.079
3031Panama6.3211.1491.4420.9100.5160.1090.054
3132Brazil6.3001.0041.4390.8020.3900.0990.086
3233Uruguay6.2931.1241.4650.8910.5230.1270.150
3334Singapore6.2621.5721.4631.1410.5560.2710.453
3435El Salvador6.2530.7941.2420.7890.4300.0930.074
3536Italy6.2231.2941.4881.0390.2310.1580.030
3637Bahrain6.1991.3621.3680.8710.5360.2550.110
3738Slovakia6.1981.2461.5040.8810.3340.1210.014
3839Trinidad & Tobago6.1921.2311.4770.7130.4890.1850.016
3940Poland6.1821.2061.4380.8840.4830.1170.050
4041Uzbekistan6.1740.7451.5290.7560.6310.3220.240
4142Lithuania6.1491.2381.5150.8180.2910.0430.042
4243Colombia6.1250.9851.4100.8410.4700.0990.034
4344Slovenia6.1181.2581.5230.9530.5640.1440.057
4445Nicaragua6.1050.6941.3250.8350.4350.2000.127
4546Kosovo6.1000.8821.2320.7580.4890.2620.006
4647Argentina6.0861.0921.4320.8810.4710.0660.050
4748Romania6.0701.1621.2320.8250.4620.0830.005
4849Cyprus6.0461.2631.2231.0420.4060.1900.041
4950Ecuador6.0280.9121.3120.8680.4980.1260.087
5051Kuwait6.0211.5001.3190.8080.4930.1420.097
5152Thailand6.0081.0501.4090.8280.5570.3590.028
5253Latvia5.9401.1871.4650.8120.2640.0750.064
5354South Korea5.8951.3011.2191.0360.1590.1750.056
5455Estonia5.8931.2371.5280.8740.4950.1030.161
5556Jamaica5.8900.8311.4780.8310.4900.1070.028
5657Mauritius5.8881.1201.4020.7980.4980.2150.060
5758Japan5.8861.3271.4191.0880.4450.0690.140
5859Honduras5.8600.6421.2360.8280.5070.2460.078
5960Kazakhstan5.8091.1731.5080.7290.4100.1460.096
6061Bolivia5.7790.7761.2090.7060.5110.1370.064
6162Hungary5.7581.2011.4100.8280.1990.0810.020
6263Paraguay5.7430.8551.4750.7770.5140.1840.080
6364Northern Cyprus5.7181.2631.2521.0420.4170.1910.162
6465Peru5.6970.9601.2740.8540.4550.0830.027
6566Portugal5.6931.2211.4310.9990.5080.0470.025
6667Pakistan5.6530.6770.8860.5350.3130.2200.098
6768Russia5.6481.1831.4520.7260.3340.0820.031
6869Philippines5.6310.8071.2930.6570.5580.1170.107
6970Serbia5.6031.0041.3830.8540.2820.1370.039
7071Moldova5.5290.6851.3280.7390.2450.1810.000
7172Libya5.5251.0441.3030.6730.4160.1330.152
7273Montenegro5.5231.0511.3610.8710.1970.1420.080
7374Tajikistan5.4670.4931.0980.7180.3890.2300.144
7475Croatia5.4321.1551.2660.9140.2960.1190.022
7576Hong Kong5.4301.4381.2771.1220.4400.2580.287
7677Dominican Republic5.4251.0151.4010.7790.4970.1130.101
7778Bosnia and Herzegovina5.3860.9451.2120.8450.2120.2630.006
7879Turkey5.3731.1831.3600.8080.1950.0830.106
7980Malaysia5.3391.2211.1710.8280.5080.2600.024
8081Belarus5.3231.0671.4650.7890.2350.0940.142
8182Greece5.2871.1811.1560.9990.0670.0000.034
8283Mongolia5.2850.9481.5310.6670.3170.2350.038
8384North Macedonia5.2740.9831.2940.8380.3450.1850.034
8485Nigeria5.2650.6961.1110.2450.4260.2150.041
8586Kyrgyzstan5.2610.5511.4380.7230.5080.3000.023
8687Turkmenistan5.2471.0521.5380.6570.3940.2440.028
8788Algeria5.2111.0021.1600.7850.0860.0730.114
8889Morocco5.2080.8010.7820.7820.4180.0360.076
8990Azerbaijan5.2081.0431.1470.7690.3510.0350.182
9091Lebanon5.1970.9871.2240.8150.2160.1660.027
9192Indonesia5.1920.9311.2030.6600.4910.4980.028
9293China5.1911.0291.1250.8930.5210.0580.100
9394Vietnam5.1750.7411.3460.8510.5430.1470.073
9495Bhutan5.0820.8131.3210.6040.4570.3700.167
9596Cameroon5.0440.5490.9100.3310.3810.1870.037
9697Bulgaria5.0111.0921.5130.8150.3110.0810.004
9798Ghana4.9960.6110.8680.4860.3810.2450.040
9899Ivory Coast4.9440.5690.8080.2320.3520.1540.090
99100Nepal4.9130.4461.2260.6770.4390.2850.089
100101Jordan4.9060.8371.2250.8150.3830.1100.130
101102Benin4.8830.3930.4370.3970.3490.1750.082
102103Congo (Brazzaville)4.8120.6730.7990.5080.3720.1050.093
103104Gabon4.7991.0571.1830.5710.2950.0430.055
104105Laos4.7960.7641.0300.5510.5470.2660.164
105106South Africa4.7220.9601.3510.4690.3890.1300.055
106107Albania4.7190.9470.8480.8740.3830.1780.027
107108Venezuela4.7070.9601.4270.8050.1540.0640.047
108109Cambodia4.7000.5741.1220.6370.6090.2320.062
109110Palestinian Territories4.6960.6571.2470.6720.2250.1030.066
110111Senegal4.6810.4501.1340.5710.2920.1530.072
111112Somalia4.6680.0000.6980.2680.5590.2430.270
112113Namibia4.6390.8791.3130.4770.4010.0700.056
113114Niger4.6280.1380.7740.3660.3180.1880.102
114115Burkina Faso4.5870.3311.0560.3800.2550.1770.113
115116Armenia4.5590.8501.0550.8150.2830.0950.064
116117Iran4.5481.1000.8420.7850.3050.2700.125
117118Guinea4.5340.3800.8290.3750.3320.2070.086
118119Georgia4.5190.8860.6660.7520.3460.0430.164
119120Gambia4.5160.3080.9390.4280.3820.2690.167
120121Kenya4.5090.5120.9830.5810.4310.3720.053
121122Mauritania4.4900.5701.1670.4890.0660.1060.088
122123Mozambique4.4660.2040.9860.3900.4940.1970.138
123124Tunisia4.4610.9211.0000.8150.1670.0590.055
124125Bangladesh4.4560.5620.9280.7230.5270.1660.143
125126Iraq4.4371.0430.9800.5740.2410.1480.089
126127Congo (Kinshasa)4.4180.0941.1250.3570.2690.2120.053
127128Mali4.3900.3851.1050.3080.3270.1530.052
128129Sierra Leone4.3740.2680.8410.2420.3090.2520.045
129130Sri Lanka4.3660.9491.2650.8310.4700.2440.047
130131Myanmar4.3600.7101.1810.5550.5250.5660.172
131132Chad4.3500.3500.7660.1920.1740.1980.078
132133Ukraine4.3320.8201.3900.7390.1780.1870.010
133134Ethiopia4.2860.3361.0330.5320.3440.2090.100
134135Swaziland4.2120.8111.1490.0000.3130.0740.135
135136Uganda4.1890.3321.0690.4430.3560.2520.060
136137Egypt4.1660.9131.0390.6440.2410.0760.067
137138Zambia4.1070.5781.0580.4260.4310.2470.087
138139Togo4.0850.2750.5720.4100.2930.1770.085
139140India4.0150.7550.7650.5880.4980.2000.085
140141Liberia3.9750.0730.9220.4430.3700.2330.033
141142Comoros3.9730.2740.7570.5050.1420.2750.078
142143Madagascar3.9330.2740.9160.5550.1480.1690.041
143144Lesotho3.8020.4891.1690.1680.3590.1070.093
144145Burundi3.7750.0460.4470.3800.2200.1760.180
145146Zimbabwe3.6630.3661.1140.4330.3610.1510.089
146147Haiti3.5970.3230.6880.4490.0260.4190.110
147148Botswana3.4881.0411.1450.5380.4550.0250.100
148149Syria3.4620.6190.3780.4400.0130.3310.141
149150Malawi3.4100.1910.5600.4950.4430.2180.089
150151Yemen3.3800.2871.1630.4630.1430.1080.077
151152Rwanda3.3340.3590.7110.6140.5550.2170.411
152153Tanzania3.2310.4760.8850.4990.4170.2760.147
153154Afghanistan3.2030.3500.5170.3610.0000.1580.025
154155Central African Republic3.0830.0260.0000.1050.2250.2350.035
155156South Sudan2.8530.3060.5750.2950.0100.2020.091
\n", + "
" + ], + "text/plain": [ + " Overall rank Country or region Score GDP per capita \\\n", + "0 1 Finland 7.769 1.340 \n", + "1 2 Denmark 7.600 1.383 \n", + "2 3 Norway 7.554 1.488 \n", + "3 4 Iceland 7.494 1.380 \n", + "4 5 Netherlands 7.488 1.396 \n", + "5 6 Switzerland 7.480 1.452 \n", + "6 7 Sweden 7.343 1.387 \n", + "7 8 New Zealand 7.307 1.303 \n", + "8 9 Canada 7.278 1.365 \n", + "9 10 Austria 7.246 1.376 \n", + "10 11 Australia 7.228 1.372 \n", + "11 12 Costa Rica 7.167 1.034 \n", + "12 13 Israel 7.139 1.276 \n", + "13 14 Luxembourg 7.090 1.609 \n", + "14 15 United Kingdom 7.054 1.333 \n", + "15 16 Ireland 7.021 1.499 \n", + "16 17 Germany 6.985 1.373 \n", + "17 18 Belgium 6.923 1.356 \n", + "18 19 United States 6.892 1.433 \n", + "19 20 Czech Republic 6.852 1.269 \n", + "20 21 United Arab Emirates 6.825 1.503 \n", + "21 22 Malta 6.726 1.300 \n", + "22 23 Mexico 6.595 1.070 \n", + "23 24 France 6.592 1.324 \n", + "24 25 Taiwan 6.446 1.368 \n", + "25 26 Chile 6.444 1.159 \n", + "26 27 Guatemala 6.436 0.800 \n", + "27 28 Saudi Arabia 6.375 1.403 \n", + "28 29 Qatar 6.374 1.684 \n", + "29 30 Spain 6.354 1.286 \n", + "30 31 Panama 6.321 1.149 \n", + "31 32 Brazil 6.300 1.004 \n", + "32 33 Uruguay 6.293 1.124 \n", + "33 34 Singapore 6.262 1.572 \n", + "34 35 El Salvador 6.253 0.794 \n", + "35 36 Italy 6.223 1.294 \n", + "36 37 Bahrain 6.199 1.362 \n", + "37 38 Slovakia 6.198 1.246 \n", + "38 39 Trinidad & Tobago 6.192 1.231 \n", + "39 40 Poland 6.182 1.206 \n", + "40 41 Uzbekistan 6.174 0.745 \n", + "41 42 Lithuania 6.149 1.238 \n", + "42 43 Colombia 6.125 0.985 \n", + "43 44 Slovenia 6.118 1.258 \n", + "44 45 Nicaragua 6.105 0.694 \n", + "45 46 Kosovo 6.100 0.882 \n", + "46 47 Argentina 6.086 1.092 \n", + "47 48 Romania 6.070 1.162 \n", + "48 49 Cyprus 6.046 1.263 \n", + "49 50 Ecuador 6.028 0.912 \n", + "50 51 Kuwait 6.021 1.500 \n", + "51 52 Thailand 6.008 1.050 \n", + "52 53 Latvia 5.940 1.187 \n", + "53 54 South Korea 5.895 1.301 \n", + "54 55 Estonia 5.893 1.237 \n", + "55 56 Jamaica 5.890 0.831 \n", + "56 57 Mauritius 5.888 1.120 \n", + "57 58 Japan 5.886 1.327 \n", + "58 59 Honduras 5.860 0.642 \n", + "59 60 Kazakhstan 5.809 1.173 \n", + "60 61 Bolivia 5.779 0.776 \n", + "61 62 Hungary 5.758 1.201 \n", + "62 63 Paraguay 5.743 0.855 \n", + "63 64 Northern Cyprus 5.718 1.263 \n", + "64 65 Peru 5.697 0.960 \n", + "65 66 Portugal 5.693 1.221 \n", + "66 67 Pakistan 5.653 0.677 \n", + "67 68 Russia 5.648 1.183 \n", + "68 69 Philippines 5.631 0.807 \n", + "69 70 Serbia 5.603 1.004 \n", + "70 71 Moldova 5.529 0.685 \n", + "71 72 Libya 5.525 1.044 \n", + "72 73 Montenegro 5.523 1.051 \n", + "73 74 Tajikistan 5.467 0.493 \n", + "74 75 Croatia 5.432 1.155 \n", + "75 76 Hong Kong 5.430 1.438 \n", + "76 77 Dominican Republic 5.425 1.015 \n", + "77 78 Bosnia and Herzegovina 5.386 0.945 \n", + "78 79 Turkey 5.373 1.183 \n", + "79 80 Malaysia 5.339 1.221 \n", + "80 81 Belarus 5.323 1.067 \n", + "81 82 Greece 5.287 1.181 \n", + "82 83 Mongolia 5.285 0.948 \n", + "83 84 North Macedonia 5.274 0.983 \n", + "84 85 Nigeria 5.265 0.696 \n", + "85 86 Kyrgyzstan 5.261 0.551 \n", + "86 87 Turkmenistan 5.247 1.052 \n", + "87 88 Algeria 5.211 1.002 \n", + "88 89 Morocco 5.208 0.801 \n", + "89 90 Azerbaijan 5.208 1.043 \n", + "90 91 Lebanon 5.197 0.987 \n", + "91 92 Indonesia 5.192 0.931 \n", + "92 93 China 5.191 1.029 \n", + "93 94 Vietnam 5.175 0.741 \n", + "94 95 Bhutan 5.082 0.813 \n", + "95 96 Cameroon 5.044 0.549 \n", + "96 97 Bulgaria 5.011 1.092 \n", + "97 98 Ghana 4.996 0.611 \n", + "98 99 Ivory Coast 4.944 0.569 \n", + "99 100 Nepal 4.913 0.446 \n", + "100 101 Jordan 4.906 0.837 \n", + "101 102 Benin 4.883 0.393 \n", + "102 103 Congo (Brazzaville) 4.812 0.673 \n", + "103 104 Gabon 4.799 1.057 \n", + "104 105 Laos 4.796 0.764 \n", + "105 106 South Africa 4.722 0.960 \n", + "106 107 Albania 4.719 0.947 \n", + "107 108 Venezuela 4.707 0.960 \n", + "108 109 Cambodia 4.700 0.574 \n", + "109 110 Palestinian Territories 4.696 0.657 \n", + "110 111 Senegal 4.681 0.450 \n", + "111 112 Somalia 4.668 0.000 \n", + "112 113 Namibia 4.639 0.879 \n", + "113 114 Niger 4.628 0.138 \n", + "114 115 Burkina Faso 4.587 0.331 \n", + "115 116 Armenia 4.559 0.850 \n", + "116 117 Iran 4.548 1.100 \n", + "117 118 Guinea 4.534 0.380 \n", + "118 119 Georgia 4.519 0.886 \n", + "119 120 Gambia 4.516 0.308 \n", + "120 121 Kenya 4.509 0.512 \n", + "121 122 Mauritania 4.490 0.570 \n", + "122 123 Mozambique 4.466 0.204 \n", + "123 124 Tunisia 4.461 0.921 \n", + "124 125 Bangladesh 4.456 0.562 \n", + "125 126 Iraq 4.437 1.043 \n", + "126 127 Congo (Kinshasa) 4.418 0.094 \n", + "127 128 Mali 4.390 0.385 \n", + "128 129 Sierra Leone 4.374 0.268 \n", + "129 130 Sri Lanka 4.366 0.949 \n", + "130 131 Myanmar 4.360 0.710 \n", + "131 132 Chad 4.350 0.350 \n", + "132 133 Ukraine 4.332 0.820 \n", + "133 134 Ethiopia 4.286 0.336 \n", + "134 135 Swaziland 4.212 0.811 \n", + "135 136 Uganda 4.189 0.332 \n", + "136 137 Egypt 4.166 0.913 \n", + "137 138 Zambia 4.107 0.578 \n", + "138 139 Togo 4.085 0.275 \n", + "139 140 India 4.015 0.755 \n", + "140 141 Liberia 3.975 0.073 \n", + "141 142 Comoros 3.973 0.274 \n", + "142 143 Madagascar 3.933 0.274 \n", + "143 144 Lesotho 3.802 0.489 \n", + "144 145 Burundi 3.775 0.046 \n", + "145 146 Zimbabwe 3.663 0.366 \n", + "146 147 Haiti 3.597 0.323 \n", + "147 148 Botswana 3.488 1.041 \n", + "148 149 Syria 3.462 0.619 \n", + "149 150 Malawi 3.410 0.191 \n", + "150 151 Yemen 3.380 0.287 \n", + "151 152 Rwanda 3.334 0.359 \n", + "152 153 Tanzania 3.231 0.476 \n", + "153 154 Afghanistan 3.203 0.350 \n", + "154 155 Central African Republic 3.083 0.026 \n", + "155 156 South Sudan 2.853 0.306 \n", + "\n", + " Social support Healthy life expectancy Freedom to make life choices \\\n", + "0 1.587 0.986 0.596 \n", + "1 1.573 0.996 0.592 \n", + "2 1.582 1.028 0.603 \n", + "3 1.624 1.026 0.591 \n", + "4 1.522 0.999 0.557 \n", + "5 1.526 1.052 0.572 \n", + "6 1.487 1.009 0.574 \n", + "7 1.557 1.026 0.585 \n", + "8 1.505 1.039 0.584 \n", + "9 1.475 1.016 0.532 \n", + "10 1.548 1.036 0.557 \n", + "11 1.441 0.963 0.558 \n", + "12 1.455 1.029 0.371 \n", + "13 1.479 1.012 0.526 \n", + "14 1.538 0.996 0.450 \n", + "15 1.553 0.999 0.516 \n", + "16 1.454 0.987 0.495 \n", + "17 1.504 0.986 0.473 \n", + "18 1.457 0.874 0.454 \n", + "19 1.487 0.920 0.457 \n", + "20 1.310 0.825 0.598 \n", + "21 1.520 0.999 0.564 \n", + "22 1.323 0.861 0.433 \n", + "23 1.472 1.045 0.436 \n", + "24 1.430 0.914 0.351 \n", + "25 1.369 0.920 0.357 \n", + "26 1.269 0.746 0.535 \n", + "27 1.357 0.795 0.439 \n", + "28 1.313 0.871 0.555 \n", + "29 1.484 1.062 0.362 \n", + "30 1.442 0.910 0.516 \n", + "31 1.439 0.802 0.390 \n", + "32 1.465 0.891 0.523 \n", + "33 1.463 1.141 0.556 \n", + "34 1.242 0.789 0.430 \n", + "35 1.488 1.039 0.231 \n", + "36 1.368 0.871 0.536 \n", + "37 1.504 0.881 0.334 \n", + "38 1.477 0.713 0.489 \n", + "39 1.438 0.884 0.483 \n", + "40 1.529 0.756 0.631 \n", + "41 1.515 0.818 0.291 \n", + "42 1.410 0.841 0.470 \n", + "43 1.523 0.953 0.564 \n", + "44 1.325 0.835 0.435 \n", + "45 1.232 0.758 0.489 \n", + "46 1.432 0.881 0.471 \n", + "47 1.232 0.825 0.462 \n", + "48 1.223 1.042 0.406 \n", + "49 1.312 0.868 0.498 \n", + "50 1.319 0.808 0.493 \n", + "51 1.409 0.828 0.557 \n", + "52 1.465 0.812 0.264 \n", + "53 1.219 1.036 0.159 \n", + "54 1.528 0.874 0.495 \n", + "55 1.478 0.831 0.490 \n", + "56 1.402 0.798 0.498 \n", + "57 1.419 1.088 0.445 \n", + "58 1.236 0.828 0.507 \n", + "59 1.508 0.729 0.410 \n", + "60 1.209 0.706 0.511 \n", + "61 1.410 0.828 0.199 \n", + "62 1.475 0.777 0.514 \n", + "63 1.252 1.042 0.417 \n", + "64 1.274 0.854 0.455 \n", + "65 1.431 0.999 0.508 \n", + "66 0.886 0.535 0.313 \n", + "67 1.452 0.726 0.334 \n", + "68 1.293 0.657 0.558 \n", + "69 1.383 0.854 0.282 \n", + "70 1.328 0.739 0.245 \n", + "71 1.303 0.673 0.416 \n", + "72 1.361 0.871 0.197 \n", + "73 1.098 0.718 0.389 \n", + "74 1.266 0.914 0.296 \n", + "75 1.277 1.122 0.440 \n", + "76 1.401 0.779 0.497 \n", + "77 1.212 0.845 0.212 \n", + "78 1.360 0.808 0.195 \n", + "79 1.171 0.828 0.508 \n", + "80 1.465 0.789 0.235 \n", + "81 1.156 0.999 0.067 \n", + "82 1.531 0.667 0.317 \n", + "83 1.294 0.838 0.345 \n", + "84 1.111 0.245 0.426 \n", + "85 1.438 0.723 0.508 \n", + "86 1.538 0.657 0.394 \n", + "87 1.160 0.785 0.086 \n", + "88 0.782 0.782 0.418 \n", + "89 1.147 0.769 0.351 \n", + "90 1.224 0.815 0.216 \n", + "91 1.203 0.660 0.491 \n", + "92 1.125 0.893 0.521 \n", + "93 1.346 0.851 0.543 \n", + "94 1.321 0.604 0.457 \n", + "95 0.910 0.331 0.381 \n", + "96 1.513 0.815 0.311 \n", + "97 0.868 0.486 0.381 \n", + "98 0.808 0.232 0.352 \n", + "99 1.226 0.677 0.439 \n", + "100 1.225 0.815 0.383 \n", + "101 0.437 0.397 0.349 \n", + "102 0.799 0.508 0.372 \n", + "103 1.183 0.571 0.295 \n", + "104 1.030 0.551 0.547 \n", + "105 1.351 0.469 0.389 \n", + "106 0.848 0.874 0.383 \n", + "107 1.427 0.805 0.154 \n", + "108 1.122 0.637 0.609 \n", + "109 1.247 0.672 0.225 \n", + "110 1.134 0.571 0.292 \n", + "111 0.698 0.268 0.559 \n", + "112 1.313 0.477 0.401 \n", + "113 0.774 0.366 0.318 \n", + "114 1.056 0.380 0.255 \n", + "115 1.055 0.815 0.283 \n", + "116 0.842 0.785 0.305 \n", + "117 0.829 0.375 0.332 \n", + "118 0.666 0.752 0.346 \n", + "119 0.939 0.428 0.382 \n", + "120 0.983 0.581 0.431 \n", + "121 1.167 0.489 0.066 \n", + "122 0.986 0.390 0.494 \n", + "123 1.000 0.815 0.167 \n", + "124 0.928 0.723 0.527 \n", + "125 0.980 0.574 0.241 \n", + "126 1.125 0.357 0.269 \n", + "127 1.105 0.308 0.327 \n", + "128 0.841 0.242 0.309 \n", + "129 1.265 0.831 0.470 \n", + "130 1.181 0.555 0.525 \n", + "131 0.766 0.192 0.174 \n", + "132 1.390 0.739 0.178 \n", + "133 1.033 0.532 0.344 \n", + "134 1.149 0.000 0.313 \n", + "135 1.069 0.443 0.356 \n", + "136 1.039 0.644 0.241 \n", + "137 1.058 0.426 0.431 \n", + "138 0.572 0.410 0.293 \n", + "139 0.765 0.588 0.498 \n", + "140 0.922 0.443 0.370 \n", + "141 0.757 0.505 0.142 \n", + "142 0.916 0.555 0.148 \n", + "143 1.169 0.168 0.359 \n", + "144 0.447 0.380 0.220 \n", + "145 1.114 0.433 0.361 \n", + "146 0.688 0.449 0.026 \n", + "147 1.145 0.538 0.455 \n", + "148 0.378 0.440 0.013 \n", + "149 0.560 0.495 0.443 \n", + "150 1.163 0.463 0.143 \n", + "151 0.711 0.614 0.555 \n", + "152 0.885 0.499 0.417 \n", + "153 0.517 0.361 0.000 \n", + "154 0.000 0.105 0.225 \n", + "155 0.575 0.295 0.010 \n", + "\n", + " Generosity Perceptions of corruption \n", + "0 0.153 0.393 \n", + "1 0.252 0.410 \n", + "2 0.271 0.341 \n", + "3 0.354 0.118 \n", + "4 0.322 0.298 \n", + "5 0.263 0.343 \n", + "6 0.267 0.373 \n", + "7 0.330 0.380 \n", + "8 0.285 0.308 \n", + "9 0.244 0.226 \n", + "10 0.332 0.290 \n", + "11 0.144 0.093 \n", + "12 0.261 0.082 \n", + "13 0.194 0.316 \n", + "14 0.348 0.278 \n", + "15 0.298 0.310 \n", + "16 0.261 0.265 \n", + "17 0.160 0.210 \n", + "18 0.280 0.128 \n", + "19 0.046 0.036 \n", + "20 0.262 0.182 \n", + "21 0.375 0.151 \n", + "22 0.074 0.073 \n", + "23 0.111 0.183 \n", + "24 0.242 0.097 \n", + "25 0.187 0.056 \n", + "26 0.175 0.078 \n", + "27 0.080 0.132 \n", + "28 0.220 0.167 \n", + "29 0.153 0.079 \n", + "30 0.109 0.054 \n", + "31 0.099 0.086 \n", + "32 0.127 0.150 \n", + "33 0.271 0.453 \n", + "34 0.093 0.074 \n", + "35 0.158 0.030 \n", + "36 0.255 0.110 \n", + "37 0.121 0.014 \n", + "38 0.185 0.016 \n", + "39 0.117 0.050 \n", + "40 0.322 0.240 \n", + "41 0.043 0.042 \n", + "42 0.099 0.034 \n", + "43 0.144 0.057 \n", + "44 0.200 0.127 \n", + "45 0.262 0.006 \n", + "46 0.066 0.050 \n", + "47 0.083 0.005 \n", + "48 0.190 0.041 \n", + "49 0.126 0.087 \n", + "50 0.142 0.097 \n", + "51 0.359 0.028 \n", + "52 0.075 0.064 \n", + "53 0.175 0.056 \n", + "54 0.103 0.161 \n", + "55 0.107 0.028 \n", + "56 0.215 0.060 \n", + "57 0.069 0.140 \n", + "58 0.246 0.078 \n", + "59 0.146 0.096 \n", + "60 0.137 0.064 \n", + "61 0.081 0.020 \n", + "62 0.184 0.080 \n", + "63 0.191 0.162 \n", + "64 0.083 0.027 \n", + "65 0.047 0.025 \n", + "66 0.220 0.098 \n", + "67 0.082 0.031 \n", + "68 0.117 0.107 \n", + "69 0.137 0.039 \n", + "70 0.181 0.000 \n", + "71 0.133 0.152 \n", + "72 0.142 0.080 \n", + "73 0.230 0.144 \n", + "74 0.119 0.022 \n", + "75 0.258 0.287 \n", + "76 0.113 0.101 \n", + "77 0.263 0.006 \n", + "78 0.083 0.106 \n", + "79 0.260 0.024 \n", + "80 0.094 0.142 \n", + "81 0.000 0.034 \n", + "82 0.235 0.038 \n", + "83 0.185 0.034 \n", + "84 0.215 0.041 \n", + "85 0.300 0.023 \n", + "86 0.244 0.028 \n", + "87 0.073 0.114 \n", + "88 0.036 0.076 \n", + "89 0.035 0.182 \n", + "90 0.166 0.027 \n", + "91 0.498 0.028 \n", + "92 0.058 0.100 \n", + "93 0.147 0.073 \n", + "94 0.370 0.167 \n", + "95 0.187 0.037 \n", + "96 0.081 0.004 \n", + "97 0.245 0.040 \n", + "98 0.154 0.090 \n", + "99 0.285 0.089 \n", + "100 0.110 0.130 \n", + "101 0.175 0.082 \n", + "102 0.105 0.093 \n", + "103 0.043 0.055 \n", + "104 0.266 0.164 \n", + "105 0.130 0.055 \n", + "106 0.178 0.027 \n", + "107 0.064 0.047 \n", + "108 0.232 0.062 \n", + "109 0.103 0.066 \n", + "110 0.153 0.072 \n", + "111 0.243 0.270 \n", + "112 0.070 0.056 \n", + "113 0.188 0.102 \n", + "114 0.177 0.113 \n", + "115 0.095 0.064 \n", + "116 0.270 0.125 \n", + "117 0.207 0.086 \n", + "118 0.043 0.164 \n", + "119 0.269 0.167 \n", + "120 0.372 0.053 \n", + "121 0.106 0.088 \n", + "122 0.197 0.138 \n", + "123 0.059 0.055 \n", + "124 0.166 0.143 \n", + "125 0.148 0.089 \n", + "126 0.212 0.053 \n", + "127 0.153 0.052 \n", + "128 0.252 0.045 \n", + "129 0.244 0.047 \n", + "130 0.566 0.172 \n", + "131 0.198 0.078 \n", + "132 0.187 0.010 \n", + "133 0.209 0.100 \n", + "134 0.074 0.135 \n", + "135 0.252 0.060 \n", + "136 0.076 0.067 \n", + "137 0.247 0.087 \n", + "138 0.177 0.085 \n", + "139 0.200 0.085 \n", + "140 0.233 0.033 \n", + "141 0.275 0.078 \n", + "142 0.169 0.041 \n", + "143 0.107 0.093 \n", + "144 0.176 0.180 \n", + "145 0.151 0.089 \n", + "146 0.419 0.110 \n", + "147 0.025 0.100 \n", + "148 0.331 0.141 \n", + "149 0.218 0.089 \n", + "150 0.108 0.077 \n", + "151 0.217 0.411 \n", + "152 0.276 0.147 \n", + "153 0.158 0.025 \n", + "154 0.235 0.035 \n", + "155 0.202 0.091 " + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Import libraries require\n", + "\n", + "import numpy as np\n", + "import pandas as pd\n", + "import seaborn as sns\n", + "import matplotlib.pyplot as plt\n", + "\n", + "%matplotlib inline\n", + "sns.set(color_codes = True)\n", + "# Load the data into data frame according to the file where you save it\n", + "\n", + "happiness = pd.read_csv(\"c://2019.csv\")\n", + "\n", + "# Let data frame to display all the data\n", + "\n", + "pd.set_option(\"display.max_rows\", None)\n", + "\n", + "# show the data\n", + "happiness" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryScoreEconomy (GDP per Capita)Social SupportHealth (Life Expectancy)FreedomGenerosityPerception of Corruption
0Finland7.7691.3401.5870.9860.5960.1530.393
1Denmark7.6001.3831.5730.9960.5920.2520.410
2Norway7.5541.4881.5821.0280.6030.2710.341
3Iceland7.4941.3801.6241.0260.5910.3540.118
4Netherlands7.4881.3961.5220.9990.5570.3220.298
5Switzerland7.4801.4521.5261.0520.5720.2630.343
6Sweden7.3431.3871.4871.0090.5740.2670.373
7New Zealand7.3071.3031.5571.0260.5850.3300.380
8Canada7.2781.3651.5051.0390.5840.2850.308
9Austria7.2461.3761.4751.0160.5320.2440.226
10Australia7.2281.3721.5481.0360.5570.3320.290
11Costa Rica7.1671.0341.4410.9630.5580.1440.093
12Israel7.1391.2761.4551.0290.3710.2610.082
13Luxembourg7.0901.6091.4791.0120.5260.1940.316
14United Kingdom7.0541.3331.5380.9960.4500.3480.278
15Ireland7.0211.4991.5530.9990.5160.2980.310
16Germany6.9851.3731.4540.9870.4950.2610.265
17Belgium6.9231.3561.5040.9860.4730.1600.210
18United States6.8921.4331.4570.8740.4540.2800.128
19Czech Republic6.8521.2691.4870.9200.4570.0460.036
20United Arab Emirates6.8251.5031.3100.8250.5980.2620.182
21Malta6.7261.3001.5200.9990.5640.3750.151
22Mexico6.5951.0701.3230.8610.4330.0740.073
23France6.5921.3241.4721.0450.4360.1110.183
24Taiwan6.4461.3681.4300.9140.3510.2420.097
25Chile6.4441.1591.3690.9200.3570.1870.056
26Guatemala6.4360.8001.2690.7460.5350.1750.078
27Saudi Arabia6.3751.4031.3570.7950.4390.0800.132
28Qatar6.3741.6841.3130.8710.5550.2200.167
29Spain6.3541.2861.4841.0620.3620.1530.079
30Panama6.3211.1491.4420.9100.5160.1090.054
31Brazil6.3001.0041.4390.8020.3900.0990.086
32Uruguay6.2931.1241.4650.8910.5230.1270.150
33Singapore6.2621.5721.4631.1410.5560.2710.453
34El Salvador6.2530.7941.2420.7890.4300.0930.074
35Italy6.2231.2941.4881.0390.2310.1580.030
36Bahrain6.1991.3621.3680.8710.5360.2550.110
37Slovakia6.1981.2461.5040.8810.3340.1210.014
38Trinidad & Tobago6.1921.2311.4770.7130.4890.1850.016
39Poland6.1821.2061.4380.8840.4830.1170.050
40Uzbekistan6.1740.7451.5290.7560.6310.3220.240
41Lithuania6.1491.2381.5150.8180.2910.0430.042
42Colombia6.1250.9851.4100.8410.4700.0990.034
43Slovenia6.1181.2581.5230.9530.5640.1440.057
44Nicaragua6.1050.6941.3250.8350.4350.2000.127
45Kosovo6.1000.8821.2320.7580.4890.2620.006
46Argentina6.0861.0921.4320.8810.4710.0660.050
47Romania6.0701.1621.2320.8250.4620.0830.005
48Cyprus6.0461.2631.2231.0420.4060.1900.041
49Ecuador6.0280.9121.3120.8680.4980.1260.087
50Kuwait6.0211.5001.3190.8080.4930.1420.097
51Thailand6.0081.0501.4090.8280.5570.3590.028
52Latvia5.9401.1871.4650.8120.2640.0750.064
53South Korea5.8951.3011.2191.0360.1590.1750.056
54Estonia5.8931.2371.5280.8740.4950.1030.161
55Jamaica5.8900.8311.4780.8310.4900.1070.028
56Mauritius5.8881.1201.4020.7980.4980.2150.060
57Japan5.8861.3271.4191.0880.4450.0690.140
58Honduras5.8600.6421.2360.8280.5070.2460.078
59Kazakhstan5.8091.1731.5080.7290.4100.1460.096
60Bolivia5.7790.7761.2090.7060.5110.1370.064
61Hungary5.7581.2011.4100.8280.1990.0810.020
62Paraguay5.7430.8551.4750.7770.5140.1840.080
63Northern Cyprus5.7181.2631.2521.0420.4170.1910.162
64Peru5.6970.9601.2740.8540.4550.0830.027
65Portugal5.6931.2211.4310.9990.5080.0470.025
66Pakistan5.6530.6770.8860.5350.3130.2200.098
67Russia5.6481.1831.4520.7260.3340.0820.031
68Philippines5.6310.8071.2930.6570.5580.1170.107
69Serbia5.6031.0041.3830.8540.2820.1370.039
70Moldova5.5290.6851.3280.7390.2450.1810.000
71Libya5.5251.0441.3030.6730.4160.1330.152
72Montenegro5.5231.0511.3610.8710.1970.1420.080
73Tajikistan5.4670.4931.0980.7180.3890.2300.144
74Croatia5.4321.1551.2660.9140.2960.1190.022
75Hong Kong5.4301.4381.2771.1220.4400.2580.287
76Dominican Republic5.4251.0151.4010.7790.4970.1130.101
77Bosnia and Herzegovina5.3860.9451.2120.8450.2120.2630.006
78Turkey5.3731.1831.3600.8080.1950.0830.106
79Malaysia5.3391.2211.1710.8280.5080.2600.024
80Belarus5.3231.0671.4650.7890.2350.0940.142
81Greece5.2871.1811.1560.9990.0670.0000.034
82Mongolia5.2850.9481.5310.6670.3170.2350.038
83North Macedonia5.2740.9831.2940.8380.3450.1850.034
84Nigeria5.2650.6961.1110.2450.4260.2150.041
85Kyrgyzstan5.2610.5511.4380.7230.5080.3000.023
87Algeria5.2111.0021.1600.7850.0860.0730.114
88Morocco5.2080.8010.7820.7820.4180.0360.076
89Azerbaijan5.2081.0431.1470.7690.3510.0350.182
90Lebanon5.1970.9871.2240.8150.2160.1660.027
91Indonesia5.1920.9311.2030.6600.4910.4980.028
92China5.1911.0291.1250.8930.5210.0580.100
93Vietnam5.1750.7411.3460.8510.5430.1470.073
94Bhutan5.0820.8131.3210.6040.4570.3700.167
95Cameroon5.0440.5490.9100.3310.3810.1870.037
97Ghana4.9960.6110.8680.4860.3810.2450.040
99Nepal4.9130.4461.2260.6770.4390.2850.089
100Jordan4.9060.8371.2250.8150.3830.1100.130
101Benin4.8830.3930.4370.3970.3490.1750.082
102Congo (Brazzaville)4.8120.6730.7990.5080.3720.1050.093
103Gabon4.7991.0571.1830.5710.2950.0430.055
104Laos4.7960.7641.0300.5510.5470.2660.164
105South Africa4.7220.9601.3510.4690.3890.1300.055
106Albania4.7190.9470.8480.8740.3830.1780.027
107Venezuela4.7070.9601.4270.8050.1540.0640.047
108Cambodia4.7000.5741.1220.6370.6090.2320.062
109Palestinian Territories4.6960.6571.2470.6720.2250.1030.066
110Senegal4.6810.4501.1340.5710.2920.1530.072
112Namibia4.6390.8791.3130.4770.4010.0700.056
113Niger4.6280.1380.7740.3660.3180.1880.102
114Burkina Faso4.5870.3311.0560.3800.2550.1770.113
115Armenia4.5590.8501.0550.8150.2830.0950.064
116Iran4.5481.1000.8420.7850.3050.2700.125
118Georgia4.5190.8860.6660.7520.3460.0430.164
120Kenya4.5090.5120.9830.5810.4310.3720.053
121Mauritania4.4900.5701.1670.4890.0660.1060.088
122Mozambique4.4660.2040.9860.3900.4940.1970.138
123Tunisia4.4610.9211.0000.8150.1670.0590.055
124Bangladesh4.4560.5620.9280.7230.5270.1660.143
126Congo (Kinshasa)4.4180.0941.1250.3570.2690.2120.053
127Mali4.3900.3851.1050.3080.3270.1530.052
128Sierra Leone4.3740.2680.8410.2420.3090.2520.045
129Sri Lanka4.3660.9491.2650.8310.4700.2440.047
130Myanmar4.3600.7101.1810.5550.5250.5660.172
131Chad4.3500.3500.7660.1920.1740.1980.078
132Ukraine4.3320.8201.3900.7390.1780.1870.010
133Ethiopia4.2860.3361.0330.5320.3440.2090.100
135Uganda4.1890.3321.0690.4430.3560.2520.060
136Egypt4.1660.9131.0390.6440.2410.0760.067
137Zambia4.1070.5781.0580.4260.4310.2470.087
138Togo4.0850.2750.5720.4100.2930.1770.085
139India4.0150.7550.7650.5880.4980.2000.085
140Liberia3.9750.0730.9220.4430.3700.2330.033
141Comoros3.9730.2740.7570.5050.1420.2750.078
142Madagascar3.9330.2740.9160.5550.1480.1690.041
143Lesotho3.8020.4891.1690.1680.3590.1070.093
144Burundi3.7750.0460.4470.3800.2200.1760.180
145Zimbabwe3.6630.3661.1140.4330.3610.1510.089
146Haiti3.5970.3230.6880.4490.0260.4190.110
148Syria3.4620.6190.3780.4400.0130.3310.141
149Malawi3.4100.1910.5600.4950.4430.2180.089
150Yemen3.3800.2871.1630.4630.1430.1080.077
151Rwanda3.3340.3590.7110.6140.5550.2170.411
152Tanzania3.2310.4760.8850.4990.4170.2760.147
153Afghanistan3.2030.3500.5170.3610.0000.1580.025
154Central African Republic3.0830.0260.0000.1050.2250.2350.035
155South Sudan2.8530.3060.5750.2950.0100.2020.091
\n", + "
" + ], + "text/plain": [ + " Country Score Economy (GDP per Capita) \\\n", + "0 Finland 7.769 1.340 \n", + "1 Denmark 7.600 1.383 \n", + "2 Norway 7.554 1.488 \n", + "3 Iceland 7.494 1.380 \n", + "4 Netherlands 7.488 1.396 \n", + "5 Switzerland 7.480 1.452 \n", + "6 Sweden 7.343 1.387 \n", + "7 New Zealand 7.307 1.303 \n", + "8 Canada 7.278 1.365 \n", + "9 Austria 7.246 1.376 \n", + "10 Australia 7.228 1.372 \n", + "11 Costa Rica 7.167 1.034 \n", + "12 Israel 7.139 1.276 \n", + "13 Luxembourg 7.090 1.609 \n", + "14 United Kingdom 7.054 1.333 \n", + "15 Ireland 7.021 1.499 \n", + "16 Germany 6.985 1.373 \n", + "17 Belgium 6.923 1.356 \n", + "18 United States 6.892 1.433 \n", + "19 Czech Republic 6.852 1.269 \n", + "20 United Arab Emirates 6.825 1.503 \n", + "21 Malta 6.726 1.300 \n", + "22 Mexico 6.595 1.070 \n", + "23 France 6.592 1.324 \n", + "24 Taiwan 6.446 1.368 \n", + "25 Chile 6.444 1.159 \n", + "26 Guatemala 6.436 0.800 \n", + "27 Saudi Arabia 6.375 1.403 \n", + "28 Qatar 6.374 1.684 \n", + "29 Spain 6.354 1.286 \n", + "30 Panama 6.321 1.149 \n", + "31 Brazil 6.300 1.004 \n", + "32 Uruguay 6.293 1.124 \n", + "33 Singapore 6.262 1.572 \n", + "34 El Salvador 6.253 0.794 \n", + "35 Italy 6.223 1.294 \n", + "36 Bahrain 6.199 1.362 \n", + "37 Slovakia 6.198 1.246 \n", + "38 Trinidad & Tobago 6.192 1.231 \n", + "39 Poland 6.182 1.206 \n", + "40 Uzbekistan 6.174 0.745 \n", + "41 Lithuania 6.149 1.238 \n", + "42 Colombia 6.125 0.985 \n", + "43 Slovenia 6.118 1.258 \n", + "44 Nicaragua 6.105 0.694 \n", + "45 Kosovo 6.100 0.882 \n", + "46 Argentina 6.086 1.092 \n", + "47 Romania 6.070 1.162 \n", + "48 Cyprus 6.046 1.263 \n", + "49 Ecuador 6.028 0.912 \n", + "50 Kuwait 6.021 1.500 \n", + "51 Thailand 6.008 1.050 \n", + "52 Latvia 5.940 1.187 \n", + "53 South Korea 5.895 1.301 \n", + "54 Estonia 5.893 1.237 \n", + "55 Jamaica 5.890 0.831 \n", + "56 Mauritius 5.888 1.120 \n", + "57 Japan 5.886 1.327 \n", + "58 Honduras 5.860 0.642 \n", + "59 Kazakhstan 5.809 1.173 \n", + "60 Bolivia 5.779 0.776 \n", + "61 Hungary 5.758 1.201 \n", + "62 Paraguay 5.743 0.855 \n", + "63 Northern Cyprus 5.718 1.263 \n", + "64 Peru 5.697 0.960 \n", + "65 Portugal 5.693 1.221 \n", + "66 Pakistan 5.653 0.677 \n", + "67 Russia 5.648 1.183 \n", + "68 Philippines 5.631 0.807 \n", + "69 Serbia 5.603 1.004 \n", + "70 Moldova 5.529 0.685 \n", + "71 Libya 5.525 1.044 \n", + "72 Montenegro 5.523 1.051 \n", + "73 Tajikistan 5.467 0.493 \n", + "74 Croatia 5.432 1.155 \n", + "75 Hong Kong 5.430 1.438 \n", + "76 Dominican Republic 5.425 1.015 \n", + "77 Bosnia and Herzegovina 5.386 0.945 \n", + "78 Turkey 5.373 1.183 \n", + "79 Malaysia 5.339 1.221 \n", + "80 Belarus 5.323 1.067 \n", + "81 Greece 5.287 1.181 \n", + "82 Mongolia 5.285 0.948 \n", + "83 North Macedonia 5.274 0.983 \n", + "84 Nigeria 5.265 0.696 \n", + "85 Kyrgyzstan 5.261 0.551 \n", + "87 Algeria 5.211 1.002 \n", + "88 Morocco 5.208 0.801 \n", + "89 Azerbaijan 5.208 1.043 \n", + "90 Lebanon 5.197 0.987 \n", + "91 Indonesia 5.192 0.931 \n", + "92 China 5.191 1.029 \n", + "93 Vietnam 5.175 0.741 \n", + "94 Bhutan 5.082 0.813 \n", + "95 Cameroon 5.044 0.549 \n", + "97 Ghana 4.996 0.611 \n", + "99 Nepal 4.913 0.446 \n", + "100 Jordan 4.906 0.837 \n", + "101 Benin 4.883 0.393 \n", + "102 Congo (Brazzaville) 4.812 0.673 \n", + "103 Gabon 4.799 1.057 \n", + "104 Laos 4.796 0.764 \n", + "105 South Africa 4.722 0.960 \n", + "106 Albania 4.719 0.947 \n", + "107 Venezuela 4.707 0.960 \n", + "108 Cambodia 4.700 0.574 \n", + "109 Palestinian Territories 4.696 0.657 \n", + "110 Senegal 4.681 0.450 \n", + "112 Namibia 4.639 0.879 \n", + "113 Niger 4.628 0.138 \n", + "114 Burkina Faso 4.587 0.331 \n", + "115 Armenia 4.559 0.850 \n", + "116 Iran 4.548 1.100 \n", + "118 Georgia 4.519 0.886 \n", + "120 Kenya 4.509 0.512 \n", + "121 Mauritania 4.490 0.570 \n", + "122 Mozambique 4.466 0.204 \n", + "123 Tunisia 4.461 0.921 \n", + "124 Bangladesh 4.456 0.562 \n", + "126 Congo (Kinshasa) 4.418 0.094 \n", + "127 Mali 4.390 0.385 \n", + "128 Sierra Leone 4.374 0.268 \n", + "129 Sri Lanka 4.366 0.949 \n", + "130 Myanmar 4.360 0.710 \n", + "131 Chad 4.350 0.350 \n", + "132 Ukraine 4.332 0.820 \n", + "133 Ethiopia 4.286 0.336 \n", + "135 Uganda 4.189 0.332 \n", + "136 Egypt 4.166 0.913 \n", + "137 Zambia 4.107 0.578 \n", + "138 Togo 4.085 0.275 \n", + "139 India 4.015 0.755 \n", + "140 Liberia 3.975 0.073 \n", + "141 Comoros 3.973 0.274 \n", + "142 Madagascar 3.933 0.274 \n", + "143 Lesotho 3.802 0.489 \n", + "144 Burundi 3.775 0.046 \n", + "145 Zimbabwe 3.663 0.366 \n", + "146 Haiti 3.597 0.323 \n", + "148 Syria 3.462 0.619 \n", + "149 Malawi 3.410 0.191 \n", + "150 Yemen 3.380 0.287 \n", + "151 Rwanda 3.334 0.359 \n", + "152 Tanzania 3.231 0.476 \n", + "153 Afghanistan 3.203 0.350 \n", + "154 Central African Republic 3.083 0.026 \n", + "155 South Sudan 2.853 0.306 \n", + "\n", + " Social Support Health (Life Expectancy) Freedom Generosity \\\n", + "0 1.587 0.986 0.596 0.153 \n", + "1 1.573 0.996 0.592 0.252 \n", + "2 1.582 1.028 0.603 0.271 \n", + "3 1.624 1.026 0.591 0.354 \n", + "4 1.522 0.999 0.557 0.322 \n", + "5 1.526 1.052 0.572 0.263 \n", + "6 1.487 1.009 0.574 0.267 \n", + "7 1.557 1.026 0.585 0.330 \n", + "8 1.505 1.039 0.584 0.285 \n", + "9 1.475 1.016 0.532 0.244 \n", + "10 1.548 1.036 0.557 0.332 \n", + "11 1.441 0.963 0.558 0.144 \n", + "12 1.455 1.029 0.371 0.261 \n", + "13 1.479 1.012 0.526 0.194 \n", + "14 1.538 0.996 0.450 0.348 \n", + "15 1.553 0.999 0.516 0.298 \n", + "16 1.454 0.987 0.495 0.261 \n", + "17 1.504 0.986 0.473 0.160 \n", + "18 1.457 0.874 0.454 0.280 \n", + "19 1.487 0.920 0.457 0.046 \n", + "20 1.310 0.825 0.598 0.262 \n", + "21 1.520 0.999 0.564 0.375 \n", + "22 1.323 0.861 0.433 0.074 \n", + "23 1.472 1.045 0.436 0.111 \n", + "24 1.430 0.914 0.351 0.242 \n", + "25 1.369 0.920 0.357 0.187 \n", + "26 1.269 0.746 0.535 0.175 \n", + "27 1.357 0.795 0.439 0.080 \n", + "28 1.313 0.871 0.555 0.220 \n", + "29 1.484 1.062 0.362 0.153 \n", + "30 1.442 0.910 0.516 0.109 \n", + "31 1.439 0.802 0.390 0.099 \n", + "32 1.465 0.891 0.523 0.127 \n", + "33 1.463 1.141 0.556 0.271 \n", + "34 1.242 0.789 0.430 0.093 \n", + "35 1.488 1.039 0.231 0.158 \n", + "36 1.368 0.871 0.536 0.255 \n", + "37 1.504 0.881 0.334 0.121 \n", + "38 1.477 0.713 0.489 0.185 \n", + "39 1.438 0.884 0.483 0.117 \n", + "40 1.529 0.756 0.631 0.322 \n", + "41 1.515 0.818 0.291 0.043 \n", + "42 1.410 0.841 0.470 0.099 \n", + "43 1.523 0.953 0.564 0.144 \n", + "44 1.325 0.835 0.435 0.200 \n", + "45 1.232 0.758 0.489 0.262 \n", + "46 1.432 0.881 0.471 0.066 \n", + "47 1.232 0.825 0.462 0.083 \n", + "48 1.223 1.042 0.406 0.190 \n", + "49 1.312 0.868 0.498 0.126 \n", + "50 1.319 0.808 0.493 0.142 \n", + "51 1.409 0.828 0.557 0.359 \n", + "52 1.465 0.812 0.264 0.075 \n", + "53 1.219 1.036 0.159 0.175 \n", + "54 1.528 0.874 0.495 0.103 \n", + "55 1.478 0.831 0.490 0.107 \n", + "56 1.402 0.798 0.498 0.215 \n", + "57 1.419 1.088 0.445 0.069 \n", + "58 1.236 0.828 0.507 0.246 \n", + "59 1.508 0.729 0.410 0.146 \n", + "60 1.209 0.706 0.511 0.137 \n", + "61 1.410 0.828 0.199 0.081 \n", + "62 1.475 0.777 0.514 0.184 \n", + "63 1.252 1.042 0.417 0.191 \n", + "64 1.274 0.854 0.455 0.083 \n", + "65 1.431 0.999 0.508 0.047 \n", + "66 0.886 0.535 0.313 0.220 \n", + "67 1.452 0.726 0.334 0.082 \n", + "68 1.293 0.657 0.558 0.117 \n", + "69 1.383 0.854 0.282 0.137 \n", + "70 1.328 0.739 0.245 0.181 \n", + "71 1.303 0.673 0.416 0.133 \n", + "72 1.361 0.871 0.197 0.142 \n", + "73 1.098 0.718 0.389 0.230 \n", + "74 1.266 0.914 0.296 0.119 \n", + "75 1.277 1.122 0.440 0.258 \n", + "76 1.401 0.779 0.497 0.113 \n", + "77 1.212 0.845 0.212 0.263 \n", + "78 1.360 0.808 0.195 0.083 \n", + "79 1.171 0.828 0.508 0.260 \n", + "80 1.465 0.789 0.235 0.094 \n", + "81 1.156 0.999 0.067 0.000 \n", + "82 1.531 0.667 0.317 0.235 \n", + "83 1.294 0.838 0.345 0.185 \n", + "84 1.111 0.245 0.426 0.215 \n", + "85 1.438 0.723 0.508 0.300 \n", + "87 1.160 0.785 0.086 0.073 \n", + "88 0.782 0.782 0.418 0.036 \n", + "89 1.147 0.769 0.351 0.035 \n", + "90 1.224 0.815 0.216 0.166 \n", + "91 1.203 0.660 0.491 0.498 \n", + "92 1.125 0.893 0.521 0.058 \n", + "93 1.346 0.851 0.543 0.147 \n", + "94 1.321 0.604 0.457 0.370 \n", + "95 0.910 0.331 0.381 0.187 \n", + "97 0.868 0.486 0.381 0.245 \n", + "99 1.226 0.677 0.439 0.285 \n", + "100 1.225 0.815 0.383 0.110 \n", + "101 0.437 0.397 0.349 0.175 \n", + "102 0.799 0.508 0.372 0.105 \n", + "103 1.183 0.571 0.295 0.043 \n", + "104 1.030 0.551 0.547 0.266 \n", + "105 1.351 0.469 0.389 0.130 \n", + "106 0.848 0.874 0.383 0.178 \n", + "107 1.427 0.805 0.154 0.064 \n", + "108 1.122 0.637 0.609 0.232 \n", + "109 1.247 0.672 0.225 0.103 \n", + "110 1.134 0.571 0.292 0.153 \n", + "112 1.313 0.477 0.401 0.070 \n", + "113 0.774 0.366 0.318 0.188 \n", + "114 1.056 0.380 0.255 0.177 \n", + "115 1.055 0.815 0.283 0.095 \n", + "116 0.842 0.785 0.305 0.270 \n", + "118 0.666 0.752 0.346 0.043 \n", + "120 0.983 0.581 0.431 0.372 \n", + "121 1.167 0.489 0.066 0.106 \n", + "122 0.986 0.390 0.494 0.197 \n", + "123 1.000 0.815 0.167 0.059 \n", + "124 0.928 0.723 0.527 0.166 \n", + "126 1.125 0.357 0.269 0.212 \n", + "127 1.105 0.308 0.327 0.153 \n", + "128 0.841 0.242 0.309 0.252 \n", + "129 1.265 0.831 0.470 0.244 \n", + "130 1.181 0.555 0.525 0.566 \n", + "131 0.766 0.192 0.174 0.198 \n", + "132 1.390 0.739 0.178 0.187 \n", + "133 1.033 0.532 0.344 0.209 \n", + "135 1.069 0.443 0.356 0.252 \n", + "136 1.039 0.644 0.241 0.076 \n", + "137 1.058 0.426 0.431 0.247 \n", + "138 0.572 0.410 0.293 0.177 \n", + "139 0.765 0.588 0.498 0.200 \n", + "140 0.922 0.443 0.370 0.233 \n", + "141 0.757 0.505 0.142 0.275 \n", + "142 0.916 0.555 0.148 0.169 \n", + "143 1.169 0.168 0.359 0.107 \n", + "144 0.447 0.380 0.220 0.176 \n", + "145 1.114 0.433 0.361 0.151 \n", + "146 0.688 0.449 0.026 0.419 \n", + "148 0.378 0.440 0.013 0.331 \n", + "149 0.560 0.495 0.443 0.218 \n", + "150 1.163 0.463 0.143 0.108 \n", + "151 0.711 0.614 0.555 0.217 \n", + "152 0.885 0.499 0.417 0.276 \n", + "153 0.517 0.361 0.000 0.158 \n", + "154 0.000 0.105 0.225 0.235 \n", + "155 0.575 0.295 0.010 0.202 \n", + "\n", + " Perception of Corruption \n", + "0 0.393 \n", + "1 0.410 \n", + "2 0.341 \n", + "3 0.118 \n", + "4 0.298 \n", + "5 0.343 \n", + "6 0.373 \n", + "7 0.380 \n", + "8 0.308 \n", + "9 0.226 \n", + "10 0.290 \n", + "11 0.093 \n", + "12 0.082 \n", + "13 0.316 \n", + "14 0.278 \n", + "15 0.310 \n", + "16 0.265 \n", + "17 0.210 \n", + "18 0.128 \n", + "19 0.036 \n", + "20 0.182 \n", + "21 0.151 \n", + "22 0.073 \n", + "23 0.183 \n", + "24 0.097 \n", + "25 0.056 \n", + "26 0.078 \n", + "27 0.132 \n", + "28 0.167 \n", + "29 0.079 \n", + "30 0.054 \n", + "31 0.086 \n", + "32 0.150 \n", + "33 0.453 \n", + "34 0.074 \n", + "35 0.030 \n", + "36 0.110 \n", + "37 0.014 \n", + "38 0.016 \n", + "39 0.050 \n", + "40 0.240 \n", + "41 0.042 \n", + "42 0.034 \n", + "43 0.057 \n", + "44 0.127 \n", + "45 0.006 \n", + "46 0.050 \n", + "47 0.005 \n", + "48 0.041 \n", + "49 0.087 \n", + "50 0.097 \n", + "51 0.028 \n", + "52 0.064 \n", + "53 0.056 \n", + "54 0.161 \n", + "55 0.028 \n", + "56 0.060 \n", + "57 0.140 \n", + "58 0.078 \n", + "59 0.096 \n", + "60 0.064 \n", + "61 0.020 \n", + "62 0.080 \n", + "63 0.162 \n", + "64 0.027 \n", + "65 0.025 \n", + "66 0.098 \n", + "67 0.031 \n", + "68 0.107 \n", + "69 0.039 \n", + "70 0.000 \n", + "71 0.152 \n", + "72 0.080 \n", + "73 0.144 \n", + "74 0.022 \n", + "75 0.287 \n", + "76 0.101 \n", + "77 0.006 \n", + "78 0.106 \n", + "79 0.024 \n", + "80 0.142 \n", + "81 0.034 \n", + "82 0.038 \n", + "83 0.034 \n", + "84 0.041 \n", + "85 0.023 \n", + "87 0.114 \n", + "88 0.076 \n", + "89 0.182 \n", + "90 0.027 \n", + "91 0.028 \n", + "92 0.100 \n", + "93 0.073 \n", + "94 0.167 \n", + "95 0.037 \n", + "97 0.040 \n", + "99 0.089 \n", + "100 0.130 \n", + "101 0.082 \n", + "102 0.093 \n", + "103 0.055 \n", + "104 0.164 \n", + "105 0.055 \n", + "106 0.027 \n", + "107 0.047 \n", + "108 0.062 \n", + "109 0.066 \n", + "110 0.072 \n", + "112 0.056 \n", + "113 0.102 \n", + "114 0.113 \n", + "115 0.064 \n", + "116 0.125 \n", + "118 0.164 \n", + "120 0.053 \n", + "121 0.088 \n", + "122 0.138 \n", + "123 0.055 \n", + "124 0.143 \n", + "126 0.053 \n", + "127 0.052 \n", + "128 0.045 \n", + "129 0.047 \n", + "130 0.172 \n", + "131 0.078 \n", + "132 0.010 \n", + "133 0.100 \n", + "135 0.060 \n", + "136 0.067 \n", + "137 0.087 \n", + "138 0.085 \n", + "139 0.085 \n", + "140 0.033 \n", + "141 0.078 \n", + "142 0.041 \n", + "143 0.093 \n", + "144 0.180 \n", + "145 0.089 \n", + "146 0.110 \n", + "148 0.141 \n", + "149 0.089 \n", + "150 0.077 \n", + "151 0.411 \n", + "152 0.147 \n", + "153 0.025 \n", + "154 0.035 \n", + "155 0.091 " + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Rename the columns to make it more easy to understand\n", + "\n", + "happiness = happiness.rename(columns = {'Overall rank': 'Rank', 'Country or region': 'Country', \n", + " 'GDP per capita': 'Economy (GDP per Capita)', 'Social support': 'Social Support', \n", + " 'Healthy life expectancy': 'Health (Life Expectancy)', \n", + " 'Freedom to make life choices': 'Freedom',\n", + " 'Perceptions of corruption': 'Perception of Corruption'})\n", + "\n", + "#cleaning null value and inconsistent data\n", + "happiness.drop(index=86,axis=0 , inplace=True)\n", + "happiness.drop(index=96,axis=0 , inplace=True)\n", + "happiness.drop(index=98,axis=0 , inplace=True)\n", + "happiness.drop(index=111,axis=0 , inplace=True)\n", + "happiness.drop(index=117,axis=0 , inplace=True)\n", + "happiness.drop(index=119,axis=0 , inplace=True)\n", + "happiness.drop(index=125,axis=0 , inplace=True)\n", + "happiness.drop(index=134,axis=0 , inplace=True)\n", + "happiness.drop(index=147,axis=0 , inplace=True)\n", + "\n", + "# Dropping the unimportant columns\n", + "\n", + "happiness.drop(['Rank'], axis = 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "number of dyplicate rows: (0, 9)\n" + ] + } + ], + "source": [ + "# Checking if the rows containing any duplicate data or not\n", + "\n", + "duplicate_rows_happiness = happiness[happiness.duplicated()]\n", + "print(\"number of dyplicate rows: \", duplicate_rows_happiness.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rank 0\n", + "Country 0\n", + "Score 0\n", + "Economy (GDP per Capita) 0\n", + "Social Support 0\n", + "Health (Life Expectancy) 0\n", + "Freedom 0\n", + "Generosity 0\n", + "Perception of Corruption 0\n", + "dtype: int64\n" + ] + } + ], + "source": [ + "# Find the null values.\n", + "\n", + "print(happiness.isnull().sum())" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Rank 147\n", + "Country 147\n", + "Score 147\n", + "Economy (GDP per Capita) 147\n", + "Social Support 147\n", + "Health (Life Expectancy) 147\n", + "Freedom 147\n", + "Generosity 147\n", + "Perception of Corruption 147\n", + "dtype: int64" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Drop the missing values.\n", + "happiness = happiness.dropna() \n", + "happiness.count()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rank 0\n", + "Country 0\n", + "Score 0\n", + "Economy (GDP per Capita) 0\n", + "Social Support 0\n", + "Health (Life Expectancy) 0\n", + "Freedom 0\n", + "Generosity 0\n", + "Perception of Corruption 0\n", + "dtype: int64\n" + ] + } + ], + "source": [ + "# After dropping the values\n", + "\n", + "print(happiness.isnull().sum())" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "R2: 0.5694117211173655\n" + ] + } + ], + "source": [ + "# Decision Tree Regression\n", + "\n", + "x = pd.DataFrame(np.c_[happiness['Economy (GDP per Capita)'], happiness['Social Support'], happiness['Health (Life Expectancy)']], \n", + " columns = ['Economy (GDP per Capita)','Social Support','Health (Life Expectancy)'])\n", + "y = happiness['Score']\n", + "\n", + "# split the data using train_test_split\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.2, random_state=42)\n", + "\n", + "# build the model\n", + "from sklearn.tree import DecisionTreeRegressor\n", + "regressor = DecisionTreeRegressor()\n", + "\n", + "# Fitting Decision Tree Regression into dataset\n", + "regressor.fit(x_train, y_train)\n", + "\n", + "y_pred = regressor.predict(x_test)\n", + "\n", + "# test the accuracy/performance measurement using R2\n", + "print('R2: ', regressor.score(x_test, y_test))" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Real ValuesPredicted Values
1324.3325.261
516.0085.523
1463.5974.085
196.8526.118
1074.7076.125
127.1396.223
765.4255.523
316.3006.125
815.2875.339
97.2466.985
266.4366.253
994.9135.779
1523.2314.996
675.6485.888
1423.9334.286
665.6534.996
186.8926.825
695.6036.125
1314.3504.374
306.3216.293
296.3546.223
1084.7004.166
366.1996.446
1244.4565.208
555.8905.743
226.5955.523
645.6975.386
1413.9734.286
825.2854.696
117.1675.323
\n", + "
" + ], + "text/plain": [ + " Real Values Predicted Values\n", + "132 4.332 5.261\n", + "51 6.008 5.523\n", + "146 3.597 4.085\n", + "19 6.852 6.118\n", + "107 4.707 6.125\n", + "12 7.139 6.223\n", + "76 5.425 5.523\n", + "31 6.300 6.125\n", + "81 5.287 5.339\n", + "9 7.246 6.985\n", + "26 6.436 6.253\n", + "99 4.913 5.779\n", + "152 3.231 4.996\n", + "67 5.648 5.888\n", + "142 3.933 4.286\n", + "66 5.653 4.996\n", + "18 6.892 6.825\n", + "69 5.603 6.125\n", + "131 4.350 4.374\n", + "30 6.321 6.293\n", + "29 6.354 6.223\n", + "108 4.700 4.166\n", + "36 6.199 6.446\n", + "124 4.456 5.208\n", + "55 5.890 5.743\n", + "22 6.595 5.523\n", + "64 5.697 5.386\n", + "141 3.973 4.286\n", + "82 5.285 4.696\n", + "11 7.167 5.323" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.DataFrame({'Real Values':y_test, 'Predicted Values':y_pred})\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Visualising the Decision Tree Regression Results \n", + "\n", + "X_grid = np.arange(0, 10)\n", + "X_grid = X_grid.reshape((len(X_grid), 1))\n", + "plt.scatter(y_pred, y_test)\n", + "plt.title('Decision Tree Regression')\n", + "plt.xlabel('Predicted Score')\n", + "plt.ylabel('Score')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.5222810333333335" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn import metrics\n", + "mse = metrics.mean_squared_error(y_test, y_pred)\n", + "mse" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "mean in first_cv_scores is -0.87 and in second_cv_scores is -0.68\n" + ] + } + ], + "source": [ + "# k-fold cross validation of decision tree regression\n", + "\n", + "from sklearn.model_selection import cross_val_score\n", + "regressor = DecisionTreeRegressor()\n", + "\n", + "first_cv_scores = cross_val_score(regressor, x, y, cv=5, scoring='neg_mean_squared_error')\n", + "second_cv_scores = cross_val_score(regressor, x, y, cv=10, scoring='neg_mean_squared_error')\n", + "print('mean in first_cv_scores is {0:.2f} and in second_cv_scores is {1:.2f}'.format(np.mean\n", + "(first_cv_scores),\n", + " np.mean\n", + "(second_cv_scores)))\n", + "\n", + "# neg_mean_squared_error is better when close to 0.0" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} From 723316b28baf159519234cf62acddb45f4f6c3a8 Mon Sep 17 00:00:00 2001 From: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Date: Sun, 29 Aug 2021 04:35:25 +0000 Subject: [PATCH 02/12] updating DIRECTORY.md --- DIRECTORY.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/DIRECTORY.md b/DIRECTORY.md index 483583a..38637d8 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -15,6 +15,8 @@ * Dbscan * [Dbscan](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/dbscan/dbscan.ipynb) * [Dbscan](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/dbscan/dbscan.py) + * Decision Tree With K-Fold Cross Validation + * [K-Fold-Cross Validation Of Decision Tree Regression](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree%20with%20k-fold%20cross%20validation/k-fold-cross%20validation%20of%20decision%20tree%20regression.ipynb) * Decision Tree * [Decision Tree](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree/Decision_Tree.ipynb) * Fundamentals Of Python From 9e7dfa45d2815eaa56dc27d2f41f6f8d63df72db Mon Sep 17 00:00:00 2001 From: OngYL Date: Sun, 29 Aug 2021 12:39:54 +0800 Subject: [PATCH 03/12] Add robust linear regression into machine learning --- .../Robust Linear Regression.ipynb | 343 ++++++++++++++++++ 1 file changed, 343 insertions(+) create mode 100644 machine_learning/Robust Linear Regression.ipynb diff --git a/machine_learning/Robust Linear Regression.ipynb b/machine_learning/Robust Linear Regression.ipynb new file mode 100644 index 0000000..8694530 --- /dev/null +++ b/machine_learning/Robust Linear Regression.ipynb @@ -0,0 +1,343 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "681773a2", + "metadata": {}, + "source": [ + "# Robust Linear Regression\n", + "\n", + "In this notebook, we demonstrate HuberRegressor class from scikit-learn which is robust to outliers." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "2dc1c06a", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from sklearn.linear_model import HuberRegressor, LinearRegression\n", + "from sklearn.datasets import make_regression\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "id": "99095791", + "metadata": {}, + "source": [ + "**Creating a regression problem using make_regression method**" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "7c32f354", + "metadata": {}, + "outputs": [], + "source": [ + "rng = np.random.RandomState(0)\n", + "\n", + "X, y, coef = make_regression(n_samples = 200, n_features = 2, noise = 4.0, coef = True, random_state = 0)" + ] + }, + { + "cell_type": "markdown", + "id": "7e25a9f6", + "metadata": {}, + "source": [ + "**Plot**" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "0b521419", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fix, ax = plt.subplots(1, 2, figsize = (10, 3))\n", + "ax[0].scatter(X[:,0], y)\n", + "ax[0].grid(True)\n", + "ax[1].scatter(X[:,1], y)\n", + "ax[1].grid(True)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "7ed266d1", + "metadata": {}, + "source": [ + "**Inserting random outliers in the data**" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "1efd96b2", + "metadata": {}, + "outputs": [], + "source": [ + "X[:4] = rng.uniform(10, 20, (4, 2))\n", + "y[:4] = rng.uniform(100, 200, 4)" + ] + }, + { + "cell_type": "markdown", + "id": "505d0301", + "metadata": {}, + "source": [ + "**Plot to show the inserted outlier**" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "dc21f8e4", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fix, ax = plt.subplots(1, 2, figsize = (10, 3))\n", + "ax[0].scatter(X[:,0], y)\n", + "ax[0].grid(True)\n", + "ax[1].scatter(X[:,1], y)\n", + "ax[1].grid(True)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "e3bf337f", + "metadata": {}, + "source": [ + "**Create a HuberRegressor object and fit**\n", + "\n", + "The Huber Regressor optimizes the squared loss for the samples where $|\\frac{y - X'w}{\\sigma}| < \\epsilon$ and the absolute loss for the samples where $|\\frac{y - X'w}{\\sigma}| < \\epsilon$, where $w$ and $\\sigma$ are parameters to be optimized.\n", + "\n", + "The parameter $\\sigma$ makes sure that if $y$ is scaled up or down by a certain factor, one does not need to rescale epsilon to achieve the same robustness. Note that this does not take into account the fact that the different features of $X$ may be of different scales." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "5ec880ba", + "metadata": {}, + "outputs": [], + "source": [ + "huber = HuberRegressor()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "6bd3684c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "HuberRegressor()" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "huber.fit(X, y)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "62c25065", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[16.02763376, 15.44883183]])" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "X[1].reshape(1, -1)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "96837c28", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([763.50484115])" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "huber.predict(X[1].reshape(1, -1))" + ] + }, + { + "cell_type": "markdown", + "id": "0ecbda8e", + "metadata": {}, + "source": [ + "**A simple linear regression fir for comparison**" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "ef2a97d4", + "metadata": {}, + "outputs": [], + "source": [ + "linear = LinearRegression()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "0df053ad", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "LinearRegression()" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "linear.fit(X, y)" + ] + }, + { + "cell_type": "markdown", + "id": "60189bf7", + "metadata": {}, + "source": [ + "**Compare the estimated coefficients**\n", + "\n", + "As we will see, the Huber regressor estimates the coefficients, in the presence of outliers, far better (closer to the true values) than a simple linear model." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "c9e56d9b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True coefficients: [20.4923687 34.16981149]\n", + "Huber coefficients: [17.79064226 31.01065329]\n", + "Linear Regression coefficients: [ 1.97461433 11.65050932]\n" + ] + } + ], + "source": [ + "print(\"True coefficients:\", coef)\n", + "print(\"Huber coefficients:\", huber.coef_)\n", + "print(\"Linear Regression coefficients:\", linear.coef_)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "2d682f94", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fix, ax = plt.subplots(1, 2, figsize = (12, 3), sharey = True)\n", + "ax[0].barh(['True coef', 'Huber coef', 'Linear fit coef'], width = [coef[0], huber.coef_[0], linear.coef_[0]])\n", + "ax[0].set_title(\"1st coefficients\", fontsize = 15)\n", + "ax[1].barh(['True coef', 'Huber coef', 'Linear fit coef'], width = [coef[1], huber.coef_[1], linear.coef_[1]])\n", + "ax[1].set_title(\"2nd coefficients\", fontsize = 15)\n", + "plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 79e6773482fcaa2656f5f24b2ee54423e6a59204 Mon Sep 17 00:00:00 2001 From: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Date: Sun, 29 Aug 2021 04:40:23 +0000 Subject: [PATCH 04/12] updating DIRECTORY.md --- DIRECTORY.md | 1 + 1 file changed, 1 insertion(+) diff --git a/DIRECTORY.md b/DIRECTORY.md index 483583a..cfc7e58 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -47,6 +47,7 @@ * [Random Forest Regression](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/random_forest_regression/random_forest_regression.py) * Reuters One Vs Rest Classifier * [Reuters One Vs Rest Classifier](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Reuters_one_vs_rest_classifier/reuters_one_vs_rest_classifier.ipynb) + * [Robust Linear Regression](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Robust%20Linear%20Regression.ipynb) * Scikit-Learn * [Scikit-Learn](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Scikit-learn/Scikit-learn.ipynb) From 5a515d0b4fe19fb84c628fdd0955d88d8cdd0dd4 Mon Sep 17 00:00:00 2001 From: yenyarng Date: Sun, 29 Aug 2021 13:22:03 +0800 Subject: [PATCH 05/12] Add decision tree regression with k-fold validation 2 --- ...idation of decision tree regression2.ipynb | 5038 +++++++++++++++++ 1 file changed, 5038 insertions(+) create mode 100644 machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression2.ipynb diff --git a/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression2.ipynb b/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression2.ipynb new file mode 100644 index 0000000..712a088 --- /dev/null +++ b/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression2.ipynb @@ -0,0 +1,5038 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Overall rankCountry or regionScoreGDP per capitaSocial supportHealthy life expectancyFreedom to make life choicesGenerosityPerceptions of corruption
01Finland7.7691.3401.5870.9860.5960.1530.393
12Denmark7.6001.3831.5730.9960.5920.2520.410
23Norway7.5541.4881.5821.0280.6030.2710.341
34Iceland7.4941.3801.6241.0260.5910.3540.118
45Netherlands7.4881.3961.5220.9990.5570.3220.298
56Switzerland7.4801.4521.5261.0520.5720.2630.343
67Sweden7.3431.3871.4871.0090.5740.2670.373
78New Zealand7.3071.3031.5571.0260.5850.3300.380
89Canada7.2781.3651.5051.0390.5840.2850.308
910Austria7.2461.3761.4751.0160.5320.2440.226
1011Australia7.2281.3721.5481.0360.5570.3320.290
1112Costa Rica7.1671.0341.4410.9630.5580.1440.093
1213Israel7.1391.2761.4551.0290.3710.2610.082
1314Luxembourg7.0901.6091.4791.0120.5260.1940.316
1415United Kingdom7.0541.3331.5380.9960.4500.3480.278
1516Ireland7.0211.4991.5530.9990.5160.2980.310
1617Germany6.9851.3731.4540.9870.4950.2610.265
1718Belgium6.9231.3561.5040.9860.4730.1600.210
1819United States6.8921.4331.4570.8740.4540.2800.128
1920Czech Republic6.8521.2691.4870.9200.4570.0460.036
2021United Arab Emirates6.8251.5031.3100.8250.5980.2620.182
2122Malta6.7261.3001.5200.9990.5640.3750.151
2223Mexico6.5951.0701.3230.8610.4330.0740.073
2324France6.5921.3241.4721.0450.4360.1110.183
2425Taiwan6.4461.3681.4300.9140.3510.2420.097
2526Chile6.4441.1591.3690.9200.3570.1870.056
2627Guatemala6.4360.8001.2690.7460.5350.1750.078
2728Saudi Arabia6.3751.4031.3570.7950.4390.0800.132
2829Qatar6.3741.6841.3130.8710.5550.2200.167
2930Spain6.3541.2861.4841.0620.3620.1530.079
3031Panama6.3211.1491.4420.9100.5160.1090.054
3132Brazil6.3001.0041.4390.8020.3900.0990.086
3233Uruguay6.2931.1241.4650.8910.5230.1270.150
3334Singapore6.2621.5721.4631.1410.5560.2710.453
3435El Salvador6.2530.7941.2420.7890.4300.0930.074
3536Italy6.2231.2941.4881.0390.2310.1580.030
3637Bahrain6.1991.3621.3680.8710.5360.2550.110
3738Slovakia6.1981.2461.5040.8810.3340.1210.014
3839Trinidad & Tobago6.1921.2311.4770.7130.4890.1850.016
3940Poland6.1821.2061.4380.8840.4830.1170.050
4041Uzbekistan6.1740.7451.5290.7560.6310.3220.240
4142Lithuania6.1491.2381.5150.8180.2910.0430.042
4243Colombia6.1250.9851.4100.8410.4700.0990.034
4344Slovenia6.1181.2581.5230.9530.5640.1440.057
4445Nicaragua6.1050.6941.3250.8350.4350.2000.127
4546Kosovo6.1000.8821.2320.7580.4890.2620.006
4647Argentina6.0861.0921.4320.8810.4710.0660.050
4748Romania6.0701.1621.2320.8250.4620.0830.005
4849Cyprus6.0461.2631.2231.0420.4060.1900.041
4950Ecuador6.0280.9121.3120.8680.4980.1260.087
5051Kuwait6.0211.5001.3190.8080.4930.1420.097
5152Thailand6.0081.0501.4090.8280.5570.3590.028
5253Latvia5.9401.1871.4650.8120.2640.0750.064
5354South Korea5.8951.3011.2191.0360.1590.1750.056
5455Estonia5.8931.2371.5280.8740.4950.1030.161
5556Jamaica5.8900.8311.4780.8310.4900.1070.028
5657Mauritius5.8881.1201.4020.7980.4980.2150.060
5758Japan5.8861.3271.4191.0880.4450.0690.140
5859Honduras5.8600.6421.2360.8280.5070.2460.078
5960Kazakhstan5.8091.1731.5080.7290.4100.1460.096
6061Bolivia5.7790.7761.2090.7060.5110.1370.064
6162Hungary5.7581.2011.4100.8280.1990.0810.020
6263Paraguay5.7430.8551.4750.7770.5140.1840.080
6364Northern Cyprus5.7181.2631.2521.0420.4170.1910.162
6465Peru5.6970.9601.2740.8540.4550.0830.027
6566Portugal5.6931.2211.4310.9990.5080.0470.025
6667Pakistan5.6530.6770.8860.5350.3130.2200.098
6768Russia5.6481.1831.4520.7260.3340.0820.031
6869Philippines5.6310.8071.2930.6570.5580.1170.107
6970Serbia5.6031.0041.3830.8540.2820.1370.039
7071Moldova5.5290.6851.3280.7390.2450.1810.000
7172Libya5.5251.0441.3030.6730.4160.1330.152
7273Montenegro5.5231.0511.3610.8710.1970.1420.080
7374Tajikistan5.4670.4931.0980.7180.3890.2300.144
7475Croatia5.4321.1551.2660.9140.2960.1190.022
7576Hong Kong5.4301.4381.2771.1220.4400.2580.287
7677Dominican Republic5.4251.0151.4010.7790.4970.1130.101
7778Bosnia and Herzegovina5.3860.9451.2120.8450.2120.2630.006
7879Turkey5.3731.1831.3600.8080.1950.0830.106
7980Malaysia5.3391.2211.1710.8280.5080.2600.024
8081Belarus5.3231.0671.4650.7890.2350.0940.142
8182Greece5.2871.1811.1560.9990.0670.0000.034
8283Mongolia5.2850.9481.5310.6670.3170.2350.038
8384North Macedonia5.2740.9831.2940.8380.3450.1850.034
8485Nigeria5.2650.6961.1110.2450.4260.2150.041
8586Kyrgyzstan5.2610.5511.4380.7230.5080.3000.023
8687Turkmenistan5.2471.0521.5380.6570.3940.2440.028
8788Algeria5.2111.0021.1600.7850.0860.0730.114
8889Morocco5.2080.8010.7820.7820.4180.0360.076
8990Azerbaijan5.2081.0431.1470.7690.3510.0350.182
9091Lebanon5.1970.9871.2240.8150.2160.1660.027
9192Indonesia5.1920.9311.2030.6600.4910.4980.028
9293China5.1911.0291.1250.8930.5210.0580.100
9394Vietnam5.1750.7411.3460.8510.5430.1470.073
9495Bhutan5.0820.8131.3210.6040.4570.3700.167
9596Cameroon5.0440.5490.9100.3310.3810.1870.037
9697Bulgaria5.0111.0921.5130.8150.3110.0810.004
9798Ghana4.9960.6110.8680.4860.3810.2450.040
9899Ivory Coast4.9440.5690.8080.2320.3520.1540.090
99100Nepal4.9130.4461.2260.6770.4390.2850.089
100101Jordan4.9060.8371.2250.8150.3830.1100.130
101102Benin4.8830.3930.4370.3970.3490.1750.082
102103Congo (Brazzaville)4.8120.6730.7990.5080.3720.1050.093
103104Gabon4.7991.0571.1830.5710.2950.0430.055
104105Laos4.7960.7641.0300.5510.5470.2660.164
105106South Africa4.7220.9601.3510.4690.3890.1300.055
106107Albania4.7190.9470.8480.8740.3830.1780.027
107108Venezuela4.7070.9601.4270.8050.1540.0640.047
108109Cambodia4.7000.5741.1220.6370.6090.2320.062
109110Palestinian Territories4.6960.6571.2470.6720.2250.1030.066
110111Senegal4.6810.4501.1340.5710.2920.1530.072
111112Somalia4.6680.0000.6980.2680.5590.2430.270
112113Namibia4.6390.8791.3130.4770.4010.0700.056
113114Niger4.6280.1380.7740.3660.3180.1880.102
114115Burkina Faso4.5870.3311.0560.3800.2550.1770.113
115116Armenia4.5590.8501.0550.8150.2830.0950.064
116117Iran4.5481.1000.8420.7850.3050.2700.125
117118Guinea4.5340.3800.8290.3750.3320.2070.086
118119Georgia4.5190.8860.6660.7520.3460.0430.164
119120Gambia4.5160.3080.9390.4280.3820.2690.167
120121Kenya4.5090.5120.9830.5810.4310.3720.053
121122Mauritania4.4900.5701.1670.4890.0660.1060.088
122123Mozambique4.4660.2040.9860.3900.4940.1970.138
123124Tunisia4.4610.9211.0000.8150.1670.0590.055
124125Bangladesh4.4560.5620.9280.7230.5270.1660.143
125126Iraq4.4371.0430.9800.5740.2410.1480.089
126127Congo (Kinshasa)4.4180.0941.1250.3570.2690.2120.053
127128Mali4.3900.3851.1050.3080.3270.1530.052
128129Sierra Leone4.3740.2680.8410.2420.3090.2520.045
129130Sri Lanka4.3660.9491.2650.8310.4700.2440.047
130131Myanmar4.3600.7101.1810.5550.5250.5660.172
131132Chad4.3500.3500.7660.1920.1740.1980.078
132133Ukraine4.3320.8201.3900.7390.1780.1870.010
133134Ethiopia4.2860.3361.0330.5320.3440.2090.100
134135Swaziland4.2120.8111.1490.0000.3130.0740.135
135136Uganda4.1890.3321.0690.4430.3560.2520.060
136137Egypt4.1660.9131.0390.6440.2410.0760.067
137138Zambia4.1070.5781.0580.4260.4310.2470.087
138139Togo4.0850.2750.5720.4100.2930.1770.085
139140India4.0150.7550.7650.5880.4980.2000.085
140141Liberia3.9750.0730.9220.4430.3700.2330.033
141142Comoros3.9730.2740.7570.5050.1420.2750.078
142143Madagascar3.9330.2740.9160.5550.1480.1690.041
143144Lesotho3.8020.4891.1690.1680.3590.1070.093
144145Burundi3.7750.0460.4470.3800.2200.1760.180
145146Zimbabwe3.6630.3661.1140.4330.3610.1510.089
146147Haiti3.5970.3230.6880.4490.0260.4190.110
147148Botswana3.4881.0411.1450.5380.4550.0250.100
148149Syria3.4620.6190.3780.4400.0130.3310.141
149150Malawi3.4100.1910.5600.4950.4430.2180.089
150151Yemen3.3800.2871.1630.4630.1430.1080.077
151152Rwanda3.3340.3590.7110.6140.5550.2170.411
152153Tanzania3.2310.4760.8850.4990.4170.2760.147
153154Afghanistan3.2030.3500.5170.3610.0000.1580.025
154155Central African Republic3.0830.0260.0000.1050.2250.2350.035
155156South Sudan2.8530.3060.5750.2950.0100.2020.091
\n", + "
" + ], + "text/plain": [ + " Overall rank Country or region Score GDP per capita \\\n", + "0 1 Finland 7.769 1.340 \n", + "1 2 Denmark 7.600 1.383 \n", + "2 3 Norway 7.554 1.488 \n", + "3 4 Iceland 7.494 1.380 \n", + "4 5 Netherlands 7.488 1.396 \n", + "5 6 Switzerland 7.480 1.452 \n", + "6 7 Sweden 7.343 1.387 \n", + "7 8 New Zealand 7.307 1.303 \n", + "8 9 Canada 7.278 1.365 \n", + "9 10 Austria 7.246 1.376 \n", + "10 11 Australia 7.228 1.372 \n", + "11 12 Costa Rica 7.167 1.034 \n", + "12 13 Israel 7.139 1.276 \n", + "13 14 Luxembourg 7.090 1.609 \n", + "14 15 United Kingdom 7.054 1.333 \n", + "15 16 Ireland 7.021 1.499 \n", + "16 17 Germany 6.985 1.373 \n", + "17 18 Belgium 6.923 1.356 \n", + "18 19 United States 6.892 1.433 \n", + "19 20 Czech Republic 6.852 1.269 \n", + "20 21 United Arab Emirates 6.825 1.503 \n", + "21 22 Malta 6.726 1.300 \n", + "22 23 Mexico 6.595 1.070 \n", + "23 24 France 6.592 1.324 \n", + "24 25 Taiwan 6.446 1.368 \n", + "25 26 Chile 6.444 1.159 \n", + "26 27 Guatemala 6.436 0.800 \n", + "27 28 Saudi Arabia 6.375 1.403 \n", + "28 29 Qatar 6.374 1.684 \n", + "29 30 Spain 6.354 1.286 \n", + "30 31 Panama 6.321 1.149 \n", + "31 32 Brazil 6.300 1.004 \n", + "32 33 Uruguay 6.293 1.124 \n", + "33 34 Singapore 6.262 1.572 \n", + "34 35 El Salvador 6.253 0.794 \n", + "35 36 Italy 6.223 1.294 \n", + "36 37 Bahrain 6.199 1.362 \n", + "37 38 Slovakia 6.198 1.246 \n", + "38 39 Trinidad & Tobago 6.192 1.231 \n", + "39 40 Poland 6.182 1.206 \n", + "40 41 Uzbekistan 6.174 0.745 \n", + "41 42 Lithuania 6.149 1.238 \n", + "42 43 Colombia 6.125 0.985 \n", + "43 44 Slovenia 6.118 1.258 \n", + "44 45 Nicaragua 6.105 0.694 \n", + "45 46 Kosovo 6.100 0.882 \n", + "46 47 Argentina 6.086 1.092 \n", + "47 48 Romania 6.070 1.162 \n", + "48 49 Cyprus 6.046 1.263 \n", + "49 50 Ecuador 6.028 0.912 \n", + "50 51 Kuwait 6.021 1.500 \n", + "51 52 Thailand 6.008 1.050 \n", + "52 53 Latvia 5.940 1.187 \n", + "53 54 South Korea 5.895 1.301 \n", + "54 55 Estonia 5.893 1.237 \n", + "55 56 Jamaica 5.890 0.831 \n", + "56 57 Mauritius 5.888 1.120 \n", + "57 58 Japan 5.886 1.327 \n", + "58 59 Honduras 5.860 0.642 \n", + "59 60 Kazakhstan 5.809 1.173 \n", + "60 61 Bolivia 5.779 0.776 \n", + "61 62 Hungary 5.758 1.201 \n", + "62 63 Paraguay 5.743 0.855 \n", + "63 64 Northern Cyprus 5.718 1.263 \n", + "64 65 Peru 5.697 0.960 \n", + "65 66 Portugal 5.693 1.221 \n", + "66 67 Pakistan 5.653 0.677 \n", + "67 68 Russia 5.648 1.183 \n", + "68 69 Philippines 5.631 0.807 \n", + "69 70 Serbia 5.603 1.004 \n", + "70 71 Moldova 5.529 0.685 \n", + "71 72 Libya 5.525 1.044 \n", + "72 73 Montenegro 5.523 1.051 \n", + "73 74 Tajikistan 5.467 0.493 \n", + "74 75 Croatia 5.432 1.155 \n", + "75 76 Hong Kong 5.430 1.438 \n", + "76 77 Dominican Republic 5.425 1.015 \n", + "77 78 Bosnia and Herzegovina 5.386 0.945 \n", + "78 79 Turkey 5.373 1.183 \n", + "79 80 Malaysia 5.339 1.221 \n", + "80 81 Belarus 5.323 1.067 \n", + "81 82 Greece 5.287 1.181 \n", + "82 83 Mongolia 5.285 0.948 \n", + "83 84 North Macedonia 5.274 0.983 \n", + "84 85 Nigeria 5.265 0.696 \n", + "85 86 Kyrgyzstan 5.261 0.551 \n", + "86 87 Turkmenistan 5.247 1.052 \n", + "87 88 Algeria 5.211 1.002 \n", + "88 89 Morocco 5.208 0.801 \n", + "89 90 Azerbaijan 5.208 1.043 \n", + "90 91 Lebanon 5.197 0.987 \n", + "91 92 Indonesia 5.192 0.931 \n", + "92 93 China 5.191 1.029 \n", + "93 94 Vietnam 5.175 0.741 \n", + "94 95 Bhutan 5.082 0.813 \n", + "95 96 Cameroon 5.044 0.549 \n", + "96 97 Bulgaria 5.011 1.092 \n", + "97 98 Ghana 4.996 0.611 \n", + "98 99 Ivory Coast 4.944 0.569 \n", + "99 100 Nepal 4.913 0.446 \n", + "100 101 Jordan 4.906 0.837 \n", + "101 102 Benin 4.883 0.393 \n", + "102 103 Congo (Brazzaville) 4.812 0.673 \n", + "103 104 Gabon 4.799 1.057 \n", + "104 105 Laos 4.796 0.764 \n", + "105 106 South Africa 4.722 0.960 \n", + "106 107 Albania 4.719 0.947 \n", + "107 108 Venezuela 4.707 0.960 \n", + "108 109 Cambodia 4.700 0.574 \n", + "109 110 Palestinian Territories 4.696 0.657 \n", + "110 111 Senegal 4.681 0.450 \n", + "111 112 Somalia 4.668 0.000 \n", + "112 113 Namibia 4.639 0.879 \n", + "113 114 Niger 4.628 0.138 \n", + "114 115 Burkina Faso 4.587 0.331 \n", + "115 116 Armenia 4.559 0.850 \n", + "116 117 Iran 4.548 1.100 \n", + "117 118 Guinea 4.534 0.380 \n", + "118 119 Georgia 4.519 0.886 \n", + "119 120 Gambia 4.516 0.308 \n", + "120 121 Kenya 4.509 0.512 \n", + "121 122 Mauritania 4.490 0.570 \n", + "122 123 Mozambique 4.466 0.204 \n", + "123 124 Tunisia 4.461 0.921 \n", + "124 125 Bangladesh 4.456 0.562 \n", + "125 126 Iraq 4.437 1.043 \n", + "126 127 Congo (Kinshasa) 4.418 0.094 \n", + "127 128 Mali 4.390 0.385 \n", + "128 129 Sierra Leone 4.374 0.268 \n", + "129 130 Sri Lanka 4.366 0.949 \n", + "130 131 Myanmar 4.360 0.710 \n", + "131 132 Chad 4.350 0.350 \n", + "132 133 Ukraine 4.332 0.820 \n", + "133 134 Ethiopia 4.286 0.336 \n", + "134 135 Swaziland 4.212 0.811 \n", + "135 136 Uganda 4.189 0.332 \n", + "136 137 Egypt 4.166 0.913 \n", + "137 138 Zambia 4.107 0.578 \n", + "138 139 Togo 4.085 0.275 \n", + "139 140 India 4.015 0.755 \n", + "140 141 Liberia 3.975 0.073 \n", + "141 142 Comoros 3.973 0.274 \n", + "142 143 Madagascar 3.933 0.274 \n", + "143 144 Lesotho 3.802 0.489 \n", + "144 145 Burundi 3.775 0.046 \n", + "145 146 Zimbabwe 3.663 0.366 \n", + "146 147 Haiti 3.597 0.323 \n", + "147 148 Botswana 3.488 1.041 \n", + "148 149 Syria 3.462 0.619 \n", + "149 150 Malawi 3.410 0.191 \n", + "150 151 Yemen 3.380 0.287 \n", + "151 152 Rwanda 3.334 0.359 \n", + "152 153 Tanzania 3.231 0.476 \n", + "153 154 Afghanistan 3.203 0.350 \n", + "154 155 Central African Republic 3.083 0.026 \n", + "155 156 South Sudan 2.853 0.306 \n", + "\n", + " Social support Healthy life expectancy Freedom to make life choices \\\n", + "0 1.587 0.986 0.596 \n", + "1 1.573 0.996 0.592 \n", + "2 1.582 1.028 0.603 \n", + "3 1.624 1.026 0.591 \n", + "4 1.522 0.999 0.557 \n", + "5 1.526 1.052 0.572 \n", + "6 1.487 1.009 0.574 \n", + "7 1.557 1.026 0.585 \n", + "8 1.505 1.039 0.584 \n", + "9 1.475 1.016 0.532 \n", + "10 1.548 1.036 0.557 \n", + "11 1.441 0.963 0.558 \n", + "12 1.455 1.029 0.371 \n", + "13 1.479 1.012 0.526 \n", + "14 1.538 0.996 0.450 \n", + "15 1.553 0.999 0.516 \n", + "16 1.454 0.987 0.495 \n", + "17 1.504 0.986 0.473 \n", + "18 1.457 0.874 0.454 \n", + "19 1.487 0.920 0.457 \n", + "20 1.310 0.825 0.598 \n", + "21 1.520 0.999 0.564 \n", + "22 1.323 0.861 0.433 \n", + "23 1.472 1.045 0.436 \n", + "24 1.430 0.914 0.351 \n", + "25 1.369 0.920 0.357 \n", + "26 1.269 0.746 0.535 \n", + "27 1.357 0.795 0.439 \n", + "28 1.313 0.871 0.555 \n", + "29 1.484 1.062 0.362 \n", + "30 1.442 0.910 0.516 \n", + "31 1.439 0.802 0.390 \n", + "32 1.465 0.891 0.523 \n", + "33 1.463 1.141 0.556 \n", + "34 1.242 0.789 0.430 \n", + "35 1.488 1.039 0.231 \n", + "36 1.368 0.871 0.536 \n", + "37 1.504 0.881 0.334 \n", + "38 1.477 0.713 0.489 \n", + "39 1.438 0.884 0.483 \n", + "40 1.529 0.756 0.631 \n", + "41 1.515 0.818 0.291 \n", + "42 1.410 0.841 0.470 \n", + "43 1.523 0.953 0.564 \n", + "44 1.325 0.835 0.435 \n", + "45 1.232 0.758 0.489 \n", + "46 1.432 0.881 0.471 \n", + "47 1.232 0.825 0.462 \n", + "48 1.223 1.042 0.406 \n", + "49 1.312 0.868 0.498 \n", + "50 1.319 0.808 0.493 \n", + "51 1.409 0.828 0.557 \n", + "52 1.465 0.812 0.264 \n", + "53 1.219 1.036 0.159 \n", + "54 1.528 0.874 0.495 \n", + "55 1.478 0.831 0.490 \n", + "56 1.402 0.798 0.498 \n", + "57 1.419 1.088 0.445 \n", + "58 1.236 0.828 0.507 \n", + "59 1.508 0.729 0.410 \n", + "60 1.209 0.706 0.511 \n", + "61 1.410 0.828 0.199 \n", + "62 1.475 0.777 0.514 \n", + "63 1.252 1.042 0.417 \n", + "64 1.274 0.854 0.455 \n", + "65 1.431 0.999 0.508 \n", + "66 0.886 0.535 0.313 \n", + "67 1.452 0.726 0.334 \n", + "68 1.293 0.657 0.558 \n", + "69 1.383 0.854 0.282 \n", + "70 1.328 0.739 0.245 \n", + "71 1.303 0.673 0.416 \n", + "72 1.361 0.871 0.197 \n", + "73 1.098 0.718 0.389 \n", + "74 1.266 0.914 0.296 \n", + "75 1.277 1.122 0.440 \n", + "76 1.401 0.779 0.497 \n", + "77 1.212 0.845 0.212 \n", + "78 1.360 0.808 0.195 \n", + "79 1.171 0.828 0.508 \n", + "80 1.465 0.789 0.235 \n", + "81 1.156 0.999 0.067 \n", + "82 1.531 0.667 0.317 \n", + "83 1.294 0.838 0.345 \n", + "84 1.111 0.245 0.426 \n", + "85 1.438 0.723 0.508 \n", + "86 1.538 0.657 0.394 \n", + "87 1.160 0.785 0.086 \n", + "88 0.782 0.782 0.418 \n", + "89 1.147 0.769 0.351 \n", + "90 1.224 0.815 0.216 \n", + "91 1.203 0.660 0.491 \n", + "92 1.125 0.893 0.521 \n", + "93 1.346 0.851 0.543 \n", + "94 1.321 0.604 0.457 \n", + "95 0.910 0.331 0.381 \n", + "96 1.513 0.815 0.311 \n", + "97 0.868 0.486 0.381 \n", + "98 0.808 0.232 0.352 \n", + "99 1.226 0.677 0.439 \n", + "100 1.225 0.815 0.383 \n", + "101 0.437 0.397 0.349 \n", + "102 0.799 0.508 0.372 \n", + "103 1.183 0.571 0.295 \n", + "104 1.030 0.551 0.547 \n", + "105 1.351 0.469 0.389 \n", + "106 0.848 0.874 0.383 \n", + "107 1.427 0.805 0.154 \n", + "108 1.122 0.637 0.609 \n", + "109 1.247 0.672 0.225 \n", + "110 1.134 0.571 0.292 \n", + "111 0.698 0.268 0.559 \n", + "112 1.313 0.477 0.401 \n", + "113 0.774 0.366 0.318 \n", + "114 1.056 0.380 0.255 \n", + "115 1.055 0.815 0.283 \n", + "116 0.842 0.785 0.305 \n", + "117 0.829 0.375 0.332 \n", + "118 0.666 0.752 0.346 \n", + "119 0.939 0.428 0.382 \n", + "120 0.983 0.581 0.431 \n", + "121 1.167 0.489 0.066 \n", + "122 0.986 0.390 0.494 \n", + "123 1.000 0.815 0.167 \n", + "124 0.928 0.723 0.527 \n", + "125 0.980 0.574 0.241 \n", + "126 1.125 0.357 0.269 \n", + "127 1.105 0.308 0.327 \n", + "128 0.841 0.242 0.309 \n", + "129 1.265 0.831 0.470 \n", + "130 1.181 0.555 0.525 \n", + "131 0.766 0.192 0.174 \n", + "132 1.390 0.739 0.178 \n", + "133 1.033 0.532 0.344 \n", + "134 1.149 0.000 0.313 \n", + "135 1.069 0.443 0.356 \n", + "136 1.039 0.644 0.241 \n", + "137 1.058 0.426 0.431 \n", + "138 0.572 0.410 0.293 \n", + "139 0.765 0.588 0.498 \n", + "140 0.922 0.443 0.370 \n", + "141 0.757 0.505 0.142 \n", + "142 0.916 0.555 0.148 \n", + "143 1.169 0.168 0.359 \n", + "144 0.447 0.380 0.220 \n", + "145 1.114 0.433 0.361 \n", + "146 0.688 0.449 0.026 \n", + "147 1.145 0.538 0.455 \n", + "148 0.378 0.440 0.013 \n", + "149 0.560 0.495 0.443 \n", + "150 1.163 0.463 0.143 \n", + "151 0.711 0.614 0.555 \n", + "152 0.885 0.499 0.417 \n", + "153 0.517 0.361 0.000 \n", + "154 0.000 0.105 0.225 \n", + "155 0.575 0.295 0.010 \n", + "\n", + " Generosity Perceptions of corruption \n", + "0 0.153 0.393 \n", + "1 0.252 0.410 \n", + "2 0.271 0.341 \n", + "3 0.354 0.118 \n", + "4 0.322 0.298 \n", + "5 0.263 0.343 \n", + "6 0.267 0.373 \n", + "7 0.330 0.380 \n", + "8 0.285 0.308 \n", + "9 0.244 0.226 \n", + "10 0.332 0.290 \n", + "11 0.144 0.093 \n", + "12 0.261 0.082 \n", + "13 0.194 0.316 \n", + "14 0.348 0.278 \n", + "15 0.298 0.310 \n", + "16 0.261 0.265 \n", + "17 0.160 0.210 \n", + "18 0.280 0.128 \n", + "19 0.046 0.036 \n", + "20 0.262 0.182 \n", + "21 0.375 0.151 \n", + "22 0.074 0.073 \n", + "23 0.111 0.183 \n", + "24 0.242 0.097 \n", + "25 0.187 0.056 \n", + "26 0.175 0.078 \n", + "27 0.080 0.132 \n", + "28 0.220 0.167 \n", + "29 0.153 0.079 \n", + "30 0.109 0.054 \n", + "31 0.099 0.086 \n", + "32 0.127 0.150 \n", + "33 0.271 0.453 \n", + "34 0.093 0.074 \n", + "35 0.158 0.030 \n", + "36 0.255 0.110 \n", + "37 0.121 0.014 \n", + "38 0.185 0.016 \n", + "39 0.117 0.050 \n", + "40 0.322 0.240 \n", + "41 0.043 0.042 \n", + "42 0.099 0.034 \n", + "43 0.144 0.057 \n", + "44 0.200 0.127 \n", + "45 0.262 0.006 \n", + "46 0.066 0.050 \n", + "47 0.083 0.005 \n", + "48 0.190 0.041 \n", + "49 0.126 0.087 \n", + "50 0.142 0.097 \n", + "51 0.359 0.028 \n", + "52 0.075 0.064 \n", + "53 0.175 0.056 \n", + "54 0.103 0.161 \n", + "55 0.107 0.028 \n", + "56 0.215 0.060 \n", + "57 0.069 0.140 \n", + "58 0.246 0.078 \n", + "59 0.146 0.096 \n", + "60 0.137 0.064 \n", + "61 0.081 0.020 \n", + "62 0.184 0.080 \n", + "63 0.191 0.162 \n", + "64 0.083 0.027 \n", + "65 0.047 0.025 \n", + "66 0.220 0.098 \n", + "67 0.082 0.031 \n", + "68 0.117 0.107 \n", + "69 0.137 0.039 \n", + "70 0.181 0.000 \n", + "71 0.133 0.152 \n", + "72 0.142 0.080 \n", + "73 0.230 0.144 \n", + "74 0.119 0.022 \n", + "75 0.258 0.287 \n", + "76 0.113 0.101 \n", + "77 0.263 0.006 \n", + "78 0.083 0.106 \n", + "79 0.260 0.024 \n", + "80 0.094 0.142 \n", + "81 0.000 0.034 \n", + "82 0.235 0.038 \n", + "83 0.185 0.034 \n", + "84 0.215 0.041 \n", + "85 0.300 0.023 \n", + "86 0.244 0.028 \n", + "87 0.073 0.114 \n", + "88 0.036 0.076 \n", + "89 0.035 0.182 \n", + "90 0.166 0.027 \n", + "91 0.498 0.028 \n", + "92 0.058 0.100 \n", + "93 0.147 0.073 \n", + "94 0.370 0.167 \n", + "95 0.187 0.037 \n", + "96 0.081 0.004 \n", + "97 0.245 0.040 \n", + "98 0.154 0.090 \n", + "99 0.285 0.089 \n", + "100 0.110 0.130 \n", + "101 0.175 0.082 \n", + "102 0.105 0.093 \n", + "103 0.043 0.055 \n", + "104 0.266 0.164 \n", + "105 0.130 0.055 \n", + "106 0.178 0.027 \n", + "107 0.064 0.047 \n", + "108 0.232 0.062 \n", + "109 0.103 0.066 \n", + "110 0.153 0.072 \n", + "111 0.243 0.270 \n", + "112 0.070 0.056 \n", + "113 0.188 0.102 \n", + "114 0.177 0.113 \n", + "115 0.095 0.064 \n", + "116 0.270 0.125 \n", + "117 0.207 0.086 \n", + "118 0.043 0.164 \n", + "119 0.269 0.167 \n", + "120 0.372 0.053 \n", + "121 0.106 0.088 \n", + "122 0.197 0.138 \n", + "123 0.059 0.055 \n", + "124 0.166 0.143 \n", + "125 0.148 0.089 \n", + "126 0.212 0.053 \n", + "127 0.153 0.052 \n", + "128 0.252 0.045 \n", + "129 0.244 0.047 \n", + "130 0.566 0.172 \n", + "131 0.198 0.078 \n", + "132 0.187 0.010 \n", + "133 0.209 0.100 \n", + "134 0.074 0.135 \n", + "135 0.252 0.060 \n", + "136 0.076 0.067 \n", + "137 0.247 0.087 \n", + "138 0.177 0.085 \n", + "139 0.200 0.085 \n", + "140 0.233 0.033 \n", + "141 0.275 0.078 \n", + "142 0.169 0.041 \n", + "143 0.107 0.093 \n", + "144 0.176 0.180 \n", + "145 0.151 0.089 \n", + "146 0.419 0.110 \n", + "147 0.025 0.100 \n", + "148 0.331 0.141 \n", + "149 0.218 0.089 \n", + "150 0.108 0.077 \n", + "151 0.217 0.411 \n", + "152 0.276 0.147 \n", + "153 0.158 0.025 \n", + "154 0.235 0.035 \n", + "155 0.202 0.091 " + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Import libraries require\n", + "\n", + "import numpy as np\n", + "import pandas as pd\n", + "import seaborn as sns\n", + "import matplotlib.pyplot as plt\n", + "\n", + "%matplotlib inline\n", + "sns.set(color_codes = True)\n", + "# Load the data into data frame according to the file where you save it\n", + "\n", + "happiness = pd.read_csv(\"c://2019.csv\")\n", + "\n", + "# Let data frame to display all the data\n", + "\n", + "pd.set_option(\"display.max_rows\", None)\n", + "\n", + "# show the data\n", + "happiness" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryScoreEconomy (GDP per Capita)Social SupportHealth (Life Expectancy)FreedomGenerosityPerception of Corruption
0Finland7.7691.3401.5870.9860.5960.1530.393
1Denmark7.6001.3831.5730.9960.5920.2520.410
2Norway7.5541.4881.5821.0280.6030.2710.341
3Iceland7.4941.3801.6241.0260.5910.3540.118
4Netherlands7.4881.3961.5220.9990.5570.3220.298
5Switzerland7.4801.4521.5261.0520.5720.2630.343
6Sweden7.3431.3871.4871.0090.5740.2670.373
7New Zealand7.3071.3031.5571.0260.5850.3300.380
8Canada7.2781.3651.5051.0390.5840.2850.308
9Austria7.2461.3761.4751.0160.5320.2440.226
10Australia7.2281.3721.5481.0360.5570.3320.290
11Costa Rica7.1671.0341.4410.9630.5580.1440.093
12Israel7.1391.2761.4551.0290.3710.2610.082
13Luxembourg7.0901.6091.4791.0120.5260.1940.316
14United Kingdom7.0541.3331.5380.9960.4500.3480.278
15Ireland7.0211.4991.5530.9990.5160.2980.310
16Germany6.9851.3731.4540.9870.4950.2610.265
17Belgium6.9231.3561.5040.9860.4730.1600.210
18United States6.8921.4331.4570.8740.4540.2800.128
19Czech Republic6.8521.2691.4870.9200.4570.0460.036
20United Arab Emirates6.8251.5031.3100.8250.5980.2620.182
21Malta6.7261.3001.5200.9990.5640.3750.151
22Mexico6.5951.0701.3230.8610.4330.0740.073
23France6.5921.3241.4721.0450.4360.1110.183
24Taiwan6.4461.3681.4300.9140.3510.2420.097
25Chile6.4441.1591.3690.9200.3570.1870.056
26Guatemala6.4360.8001.2690.7460.5350.1750.078
27Saudi Arabia6.3751.4031.3570.7950.4390.0800.132
28Qatar6.3741.6841.3130.8710.5550.2200.167
29Spain6.3541.2861.4841.0620.3620.1530.079
30Panama6.3211.1491.4420.9100.5160.1090.054
31Brazil6.3001.0041.4390.8020.3900.0990.086
32Uruguay6.2931.1241.4650.8910.5230.1270.150
33Singapore6.2621.5721.4631.1410.5560.2710.453
34El Salvador6.2530.7941.2420.7890.4300.0930.074
35Italy6.2231.2941.4881.0390.2310.1580.030
36Bahrain6.1991.3621.3680.8710.5360.2550.110
37Slovakia6.1981.2461.5040.8810.3340.1210.014
38Trinidad & Tobago6.1921.2311.4770.7130.4890.1850.016
39Poland6.1821.2061.4380.8840.4830.1170.050
40Uzbekistan6.1740.7451.5290.7560.6310.3220.240
41Lithuania6.1491.2381.5150.8180.2910.0430.042
42Colombia6.1250.9851.4100.8410.4700.0990.034
43Slovenia6.1181.2581.5230.9530.5640.1440.057
44Nicaragua6.1050.6941.3250.8350.4350.2000.127
45Kosovo6.1000.8821.2320.7580.4890.2620.006
46Argentina6.0861.0921.4320.8810.4710.0660.050
47Romania6.0701.1621.2320.8250.4620.0830.005
48Cyprus6.0461.2631.2231.0420.4060.1900.041
49Ecuador6.0280.9121.3120.8680.4980.1260.087
50Kuwait6.0211.5001.3190.8080.4930.1420.097
51Thailand6.0081.0501.4090.8280.5570.3590.028
52Latvia5.9401.1871.4650.8120.2640.0750.064
53South Korea5.8951.3011.2191.0360.1590.1750.056
54Estonia5.8931.2371.5280.8740.4950.1030.161
55Jamaica5.8900.8311.4780.8310.4900.1070.028
56Mauritius5.8881.1201.4020.7980.4980.2150.060
57Japan5.8861.3271.4191.0880.4450.0690.140
58Honduras5.8600.6421.2360.8280.5070.2460.078
59Kazakhstan5.8091.1731.5080.7290.4100.1460.096
60Bolivia5.7790.7761.2090.7060.5110.1370.064
61Hungary5.7581.2011.4100.8280.1990.0810.020
62Paraguay5.7430.8551.4750.7770.5140.1840.080
63Northern Cyprus5.7181.2631.2521.0420.4170.1910.162
64Peru5.6970.9601.2740.8540.4550.0830.027
65Portugal5.6931.2211.4310.9990.5080.0470.025
66Pakistan5.6530.6770.8860.5350.3130.2200.098
67Russia5.6481.1831.4520.7260.3340.0820.031
68Philippines5.6310.8071.2930.6570.5580.1170.107
69Serbia5.6031.0041.3830.8540.2820.1370.039
70Moldova5.5290.6851.3280.7390.2450.1810.000
71Libya5.5251.0441.3030.6730.4160.1330.152
72Montenegro5.5231.0511.3610.8710.1970.1420.080
73Tajikistan5.4670.4931.0980.7180.3890.2300.144
74Croatia5.4321.1551.2660.9140.2960.1190.022
75Hong Kong5.4301.4381.2771.1220.4400.2580.287
76Dominican Republic5.4251.0151.4010.7790.4970.1130.101
77Bosnia and Herzegovina5.3860.9451.2120.8450.2120.2630.006
78Turkey5.3731.1831.3600.8080.1950.0830.106
79Malaysia5.3391.2211.1710.8280.5080.2600.024
80Belarus5.3231.0671.4650.7890.2350.0940.142
81Greece5.2871.1811.1560.9990.0670.0000.034
82Mongolia5.2850.9481.5310.6670.3170.2350.038
83North Macedonia5.2740.9831.2940.8380.3450.1850.034
84Nigeria5.2650.6961.1110.2450.4260.2150.041
85Kyrgyzstan5.2610.5511.4380.7230.5080.3000.023
87Algeria5.2111.0021.1600.7850.0860.0730.114
88Morocco5.2080.8010.7820.7820.4180.0360.076
89Azerbaijan5.2081.0431.1470.7690.3510.0350.182
90Lebanon5.1970.9871.2240.8150.2160.1660.027
91Indonesia5.1920.9311.2030.6600.4910.4980.028
92China5.1911.0291.1250.8930.5210.0580.100
93Vietnam5.1750.7411.3460.8510.5430.1470.073
94Bhutan5.0820.8131.3210.6040.4570.3700.167
95Cameroon5.0440.5490.9100.3310.3810.1870.037
97Ghana4.9960.6110.8680.4860.3810.2450.040
99Nepal4.9130.4461.2260.6770.4390.2850.089
100Jordan4.9060.8371.2250.8150.3830.1100.130
101Benin4.8830.3930.4370.3970.3490.1750.082
102Congo (Brazzaville)4.8120.6730.7990.5080.3720.1050.093
103Gabon4.7991.0571.1830.5710.2950.0430.055
104Laos4.7960.7641.0300.5510.5470.2660.164
105South Africa4.7220.9601.3510.4690.3890.1300.055
106Albania4.7190.9470.8480.8740.3830.1780.027
107Venezuela4.7070.9601.4270.8050.1540.0640.047
108Cambodia4.7000.5741.1220.6370.6090.2320.062
109Palestinian Territories4.6960.6571.2470.6720.2250.1030.066
110Senegal4.6810.4501.1340.5710.2920.1530.072
112Namibia4.6390.8791.3130.4770.4010.0700.056
113Niger4.6280.1380.7740.3660.3180.1880.102
114Burkina Faso4.5870.3311.0560.3800.2550.1770.113
115Armenia4.5590.8501.0550.8150.2830.0950.064
116Iran4.5481.1000.8420.7850.3050.2700.125
118Georgia4.5190.8860.6660.7520.3460.0430.164
120Kenya4.5090.5120.9830.5810.4310.3720.053
121Mauritania4.4900.5701.1670.4890.0660.1060.088
122Mozambique4.4660.2040.9860.3900.4940.1970.138
123Tunisia4.4610.9211.0000.8150.1670.0590.055
124Bangladesh4.4560.5620.9280.7230.5270.1660.143
126Congo (Kinshasa)4.4180.0941.1250.3570.2690.2120.053
127Mali4.3900.3851.1050.3080.3270.1530.052
128Sierra Leone4.3740.2680.8410.2420.3090.2520.045
129Sri Lanka4.3660.9491.2650.8310.4700.2440.047
130Myanmar4.3600.7101.1810.5550.5250.5660.172
131Chad4.3500.3500.7660.1920.1740.1980.078
132Ukraine4.3320.8201.3900.7390.1780.1870.010
133Ethiopia4.2860.3361.0330.5320.3440.2090.100
135Uganda4.1890.3321.0690.4430.3560.2520.060
136Egypt4.1660.9131.0390.6440.2410.0760.067
137Zambia4.1070.5781.0580.4260.4310.2470.087
138Togo4.0850.2750.5720.4100.2930.1770.085
139India4.0150.7550.7650.5880.4980.2000.085
140Liberia3.9750.0730.9220.4430.3700.2330.033
141Comoros3.9730.2740.7570.5050.1420.2750.078
142Madagascar3.9330.2740.9160.5550.1480.1690.041
143Lesotho3.8020.4891.1690.1680.3590.1070.093
144Burundi3.7750.0460.4470.3800.2200.1760.180
145Zimbabwe3.6630.3661.1140.4330.3610.1510.089
146Haiti3.5970.3230.6880.4490.0260.4190.110
148Syria3.4620.6190.3780.4400.0130.3310.141
149Malawi3.4100.1910.5600.4950.4430.2180.089
150Yemen3.3800.2871.1630.4630.1430.1080.077
151Rwanda3.3340.3590.7110.6140.5550.2170.411
152Tanzania3.2310.4760.8850.4990.4170.2760.147
153Afghanistan3.2030.3500.5170.3610.0000.1580.025
154Central African Republic3.0830.0260.0000.1050.2250.2350.035
155South Sudan2.8530.3060.5750.2950.0100.2020.091
\n", + "
" + ], + "text/plain": [ + " Country Score Economy (GDP per Capita) \\\n", + "0 Finland 7.769 1.340 \n", + "1 Denmark 7.600 1.383 \n", + "2 Norway 7.554 1.488 \n", + "3 Iceland 7.494 1.380 \n", + "4 Netherlands 7.488 1.396 \n", + "5 Switzerland 7.480 1.452 \n", + "6 Sweden 7.343 1.387 \n", + "7 New Zealand 7.307 1.303 \n", + "8 Canada 7.278 1.365 \n", + "9 Austria 7.246 1.376 \n", + "10 Australia 7.228 1.372 \n", + "11 Costa Rica 7.167 1.034 \n", + "12 Israel 7.139 1.276 \n", + "13 Luxembourg 7.090 1.609 \n", + "14 United Kingdom 7.054 1.333 \n", + "15 Ireland 7.021 1.499 \n", + "16 Germany 6.985 1.373 \n", + "17 Belgium 6.923 1.356 \n", + "18 United States 6.892 1.433 \n", + "19 Czech Republic 6.852 1.269 \n", + "20 United Arab Emirates 6.825 1.503 \n", + "21 Malta 6.726 1.300 \n", + "22 Mexico 6.595 1.070 \n", + "23 France 6.592 1.324 \n", + "24 Taiwan 6.446 1.368 \n", + "25 Chile 6.444 1.159 \n", + "26 Guatemala 6.436 0.800 \n", + "27 Saudi Arabia 6.375 1.403 \n", + "28 Qatar 6.374 1.684 \n", + "29 Spain 6.354 1.286 \n", + "30 Panama 6.321 1.149 \n", + "31 Brazil 6.300 1.004 \n", + "32 Uruguay 6.293 1.124 \n", + "33 Singapore 6.262 1.572 \n", + "34 El Salvador 6.253 0.794 \n", + "35 Italy 6.223 1.294 \n", + "36 Bahrain 6.199 1.362 \n", + "37 Slovakia 6.198 1.246 \n", + "38 Trinidad & Tobago 6.192 1.231 \n", + "39 Poland 6.182 1.206 \n", + "40 Uzbekistan 6.174 0.745 \n", + "41 Lithuania 6.149 1.238 \n", + "42 Colombia 6.125 0.985 \n", + "43 Slovenia 6.118 1.258 \n", + "44 Nicaragua 6.105 0.694 \n", + "45 Kosovo 6.100 0.882 \n", + "46 Argentina 6.086 1.092 \n", + "47 Romania 6.070 1.162 \n", + "48 Cyprus 6.046 1.263 \n", + "49 Ecuador 6.028 0.912 \n", + "50 Kuwait 6.021 1.500 \n", + "51 Thailand 6.008 1.050 \n", + "52 Latvia 5.940 1.187 \n", + "53 South Korea 5.895 1.301 \n", + "54 Estonia 5.893 1.237 \n", + "55 Jamaica 5.890 0.831 \n", + "56 Mauritius 5.888 1.120 \n", + "57 Japan 5.886 1.327 \n", + "58 Honduras 5.860 0.642 \n", + "59 Kazakhstan 5.809 1.173 \n", + "60 Bolivia 5.779 0.776 \n", + "61 Hungary 5.758 1.201 \n", + "62 Paraguay 5.743 0.855 \n", + "63 Northern Cyprus 5.718 1.263 \n", + "64 Peru 5.697 0.960 \n", + "65 Portugal 5.693 1.221 \n", + "66 Pakistan 5.653 0.677 \n", + "67 Russia 5.648 1.183 \n", + "68 Philippines 5.631 0.807 \n", + "69 Serbia 5.603 1.004 \n", + "70 Moldova 5.529 0.685 \n", + "71 Libya 5.525 1.044 \n", + "72 Montenegro 5.523 1.051 \n", + "73 Tajikistan 5.467 0.493 \n", + "74 Croatia 5.432 1.155 \n", + "75 Hong Kong 5.430 1.438 \n", + "76 Dominican Republic 5.425 1.015 \n", + "77 Bosnia and Herzegovina 5.386 0.945 \n", + "78 Turkey 5.373 1.183 \n", + "79 Malaysia 5.339 1.221 \n", + "80 Belarus 5.323 1.067 \n", + "81 Greece 5.287 1.181 \n", + "82 Mongolia 5.285 0.948 \n", + "83 North Macedonia 5.274 0.983 \n", + "84 Nigeria 5.265 0.696 \n", + "85 Kyrgyzstan 5.261 0.551 \n", + "87 Algeria 5.211 1.002 \n", + "88 Morocco 5.208 0.801 \n", + "89 Azerbaijan 5.208 1.043 \n", + "90 Lebanon 5.197 0.987 \n", + "91 Indonesia 5.192 0.931 \n", + "92 China 5.191 1.029 \n", + "93 Vietnam 5.175 0.741 \n", + "94 Bhutan 5.082 0.813 \n", + "95 Cameroon 5.044 0.549 \n", + "97 Ghana 4.996 0.611 \n", + "99 Nepal 4.913 0.446 \n", + "100 Jordan 4.906 0.837 \n", + "101 Benin 4.883 0.393 \n", + "102 Congo (Brazzaville) 4.812 0.673 \n", + "103 Gabon 4.799 1.057 \n", + "104 Laos 4.796 0.764 \n", + "105 South Africa 4.722 0.960 \n", + "106 Albania 4.719 0.947 \n", + "107 Venezuela 4.707 0.960 \n", + "108 Cambodia 4.700 0.574 \n", + "109 Palestinian Territories 4.696 0.657 \n", + "110 Senegal 4.681 0.450 \n", + "112 Namibia 4.639 0.879 \n", + "113 Niger 4.628 0.138 \n", + "114 Burkina Faso 4.587 0.331 \n", + "115 Armenia 4.559 0.850 \n", + "116 Iran 4.548 1.100 \n", + "118 Georgia 4.519 0.886 \n", + "120 Kenya 4.509 0.512 \n", + "121 Mauritania 4.490 0.570 \n", + "122 Mozambique 4.466 0.204 \n", + "123 Tunisia 4.461 0.921 \n", + "124 Bangladesh 4.456 0.562 \n", + "126 Congo (Kinshasa) 4.418 0.094 \n", + "127 Mali 4.390 0.385 \n", + "128 Sierra Leone 4.374 0.268 \n", + "129 Sri Lanka 4.366 0.949 \n", + "130 Myanmar 4.360 0.710 \n", + "131 Chad 4.350 0.350 \n", + "132 Ukraine 4.332 0.820 \n", + "133 Ethiopia 4.286 0.336 \n", + "135 Uganda 4.189 0.332 \n", + "136 Egypt 4.166 0.913 \n", + "137 Zambia 4.107 0.578 \n", + "138 Togo 4.085 0.275 \n", + "139 India 4.015 0.755 \n", + "140 Liberia 3.975 0.073 \n", + "141 Comoros 3.973 0.274 \n", + "142 Madagascar 3.933 0.274 \n", + "143 Lesotho 3.802 0.489 \n", + "144 Burundi 3.775 0.046 \n", + "145 Zimbabwe 3.663 0.366 \n", + "146 Haiti 3.597 0.323 \n", + "148 Syria 3.462 0.619 \n", + "149 Malawi 3.410 0.191 \n", + "150 Yemen 3.380 0.287 \n", + "151 Rwanda 3.334 0.359 \n", + "152 Tanzania 3.231 0.476 \n", + "153 Afghanistan 3.203 0.350 \n", + "154 Central African Republic 3.083 0.026 \n", + "155 South Sudan 2.853 0.306 \n", + "\n", + " Social Support Health (Life Expectancy) Freedom Generosity \\\n", + "0 1.587 0.986 0.596 0.153 \n", + "1 1.573 0.996 0.592 0.252 \n", + "2 1.582 1.028 0.603 0.271 \n", + "3 1.624 1.026 0.591 0.354 \n", + "4 1.522 0.999 0.557 0.322 \n", + "5 1.526 1.052 0.572 0.263 \n", + "6 1.487 1.009 0.574 0.267 \n", + "7 1.557 1.026 0.585 0.330 \n", + "8 1.505 1.039 0.584 0.285 \n", + "9 1.475 1.016 0.532 0.244 \n", + "10 1.548 1.036 0.557 0.332 \n", + "11 1.441 0.963 0.558 0.144 \n", + "12 1.455 1.029 0.371 0.261 \n", + "13 1.479 1.012 0.526 0.194 \n", + "14 1.538 0.996 0.450 0.348 \n", + "15 1.553 0.999 0.516 0.298 \n", + "16 1.454 0.987 0.495 0.261 \n", + "17 1.504 0.986 0.473 0.160 \n", + "18 1.457 0.874 0.454 0.280 \n", + "19 1.487 0.920 0.457 0.046 \n", + "20 1.310 0.825 0.598 0.262 \n", + "21 1.520 0.999 0.564 0.375 \n", + "22 1.323 0.861 0.433 0.074 \n", + "23 1.472 1.045 0.436 0.111 \n", + "24 1.430 0.914 0.351 0.242 \n", + "25 1.369 0.920 0.357 0.187 \n", + "26 1.269 0.746 0.535 0.175 \n", + "27 1.357 0.795 0.439 0.080 \n", + "28 1.313 0.871 0.555 0.220 \n", + "29 1.484 1.062 0.362 0.153 \n", + "30 1.442 0.910 0.516 0.109 \n", + "31 1.439 0.802 0.390 0.099 \n", + "32 1.465 0.891 0.523 0.127 \n", + "33 1.463 1.141 0.556 0.271 \n", + "34 1.242 0.789 0.430 0.093 \n", + "35 1.488 1.039 0.231 0.158 \n", + "36 1.368 0.871 0.536 0.255 \n", + "37 1.504 0.881 0.334 0.121 \n", + "38 1.477 0.713 0.489 0.185 \n", + "39 1.438 0.884 0.483 0.117 \n", + "40 1.529 0.756 0.631 0.322 \n", + "41 1.515 0.818 0.291 0.043 \n", + "42 1.410 0.841 0.470 0.099 \n", + "43 1.523 0.953 0.564 0.144 \n", + "44 1.325 0.835 0.435 0.200 \n", + "45 1.232 0.758 0.489 0.262 \n", + "46 1.432 0.881 0.471 0.066 \n", + "47 1.232 0.825 0.462 0.083 \n", + "48 1.223 1.042 0.406 0.190 \n", + "49 1.312 0.868 0.498 0.126 \n", + "50 1.319 0.808 0.493 0.142 \n", + "51 1.409 0.828 0.557 0.359 \n", + "52 1.465 0.812 0.264 0.075 \n", + "53 1.219 1.036 0.159 0.175 \n", + "54 1.528 0.874 0.495 0.103 \n", + "55 1.478 0.831 0.490 0.107 \n", + "56 1.402 0.798 0.498 0.215 \n", + "57 1.419 1.088 0.445 0.069 \n", + "58 1.236 0.828 0.507 0.246 \n", + "59 1.508 0.729 0.410 0.146 \n", + "60 1.209 0.706 0.511 0.137 \n", + "61 1.410 0.828 0.199 0.081 \n", + "62 1.475 0.777 0.514 0.184 \n", + "63 1.252 1.042 0.417 0.191 \n", + "64 1.274 0.854 0.455 0.083 \n", + "65 1.431 0.999 0.508 0.047 \n", + "66 0.886 0.535 0.313 0.220 \n", + "67 1.452 0.726 0.334 0.082 \n", + "68 1.293 0.657 0.558 0.117 \n", + "69 1.383 0.854 0.282 0.137 \n", + "70 1.328 0.739 0.245 0.181 \n", + "71 1.303 0.673 0.416 0.133 \n", + "72 1.361 0.871 0.197 0.142 \n", + "73 1.098 0.718 0.389 0.230 \n", + "74 1.266 0.914 0.296 0.119 \n", + "75 1.277 1.122 0.440 0.258 \n", + "76 1.401 0.779 0.497 0.113 \n", + "77 1.212 0.845 0.212 0.263 \n", + "78 1.360 0.808 0.195 0.083 \n", + "79 1.171 0.828 0.508 0.260 \n", + "80 1.465 0.789 0.235 0.094 \n", + "81 1.156 0.999 0.067 0.000 \n", + "82 1.531 0.667 0.317 0.235 \n", + "83 1.294 0.838 0.345 0.185 \n", + "84 1.111 0.245 0.426 0.215 \n", + "85 1.438 0.723 0.508 0.300 \n", + "87 1.160 0.785 0.086 0.073 \n", + "88 0.782 0.782 0.418 0.036 \n", + "89 1.147 0.769 0.351 0.035 \n", + "90 1.224 0.815 0.216 0.166 \n", + "91 1.203 0.660 0.491 0.498 \n", + "92 1.125 0.893 0.521 0.058 \n", + "93 1.346 0.851 0.543 0.147 \n", + "94 1.321 0.604 0.457 0.370 \n", + "95 0.910 0.331 0.381 0.187 \n", + "97 0.868 0.486 0.381 0.245 \n", + "99 1.226 0.677 0.439 0.285 \n", + "100 1.225 0.815 0.383 0.110 \n", + "101 0.437 0.397 0.349 0.175 \n", + "102 0.799 0.508 0.372 0.105 \n", + "103 1.183 0.571 0.295 0.043 \n", + "104 1.030 0.551 0.547 0.266 \n", + "105 1.351 0.469 0.389 0.130 \n", + "106 0.848 0.874 0.383 0.178 \n", + "107 1.427 0.805 0.154 0.064 \n", + "108 1.122 0.637 0.609 0.232 \n", + "109 1.247 0.672 0.225 0.103 \n", + "110 1.134 0.571 0.292 0.153 \n", + "112 1.313 0.477 0.401 0.070 \n", + "113 0.774 0.366 0.318 0.188 \n", + "114 1.056 0.380 0.255 0.177 \n", + "115 1.055 0.815 0.283 0.095 \n", + "116 0.842 0.785 0.305 0.270 \n", + "118 0.666 0.752 0.346 0.043 \n", + "120 0.983 0.581 0.431 0.372 \n", + "121 1.167 0.489 0.066 0.106 \n", + "122 0.986 0.390 0.494 0.197 \n", + "123 1.000 0.815 0.167 0.059 \n", + "124 0.928 0.723 0.527 0.166 \n", + "126 1.125 0.357 0.269 0.212 \n", + "127 1.105 0.308 0.327 0.153 \n", + "128 0.841 0.242 0.309 0.252 \n", + "129 1.265 0.831 0.470 0.244 \n", + "130 1.181 0.555 0.525 0.566 \n", + "131 0.766 0.192 0.174 0.198 \n", + "132 1.390 0.739 0.178 0.187 \n", + "133 1.033 0.532 0.344 0.209 \n", + "135 1.069 0.443 0.356 0.252 \n", + "136 1.039 0.644 0.241 0.076 \n", + "137 1.058 0.426 0.431 0.247 \n", + "138 0.572 0.410 0.293 0.177 \n", + "139 0.765 0.588 0.498 0.200 \n", + "140 0.922 0.443 0.370 0.233 \n", + "141 0.757 0.505 0.142 0.275 \n", + "142 0.916 0.555 0.148 0.169 \n", + "143 1.169 0.168 0.359 0.107 \n", + "144 0.447 0.380 0.220 0.176 \n", + "145 1.114 0.433 0.361 0.151 \n", + "146 0.688 0.449 0.026 0.419 \n", + "148 0.378 0.440 0.013 0.331 \n", + "149 0.560 0.495 0.443 0.218 \n", + "150 1.163 0.463 0.143 0.108 \n", + "151 0.711 0.614 0.555 0.217 \n", + "152 0.885 0.499 0.417 0.276 \n", + "153 0.517 0.361 0.000 0.158 \n", + "154 0.000 0.105 0.225 0.235 \n", + "155 0.575 0.295 0.010 0.202 \n", + "\n", + " Perception of Corruption \n", + "0 0.393 \n", + "1 0.410 \n", + "2 0.341 \n", + "3 0.118 \n", + "4 0.298 \n", + "5 0.343 \n", + "6 0.373 \n", + "7 0.380 \n", + "8 0.308 \n", + "9 0.226 \n", + "10 0.290 \n", + "11 0.093 \n", + "12 0.082 \n", + "13 0.316 \n", + "14 0.278 \n", + "15 0.310 \n", + "16 0.265 \n", + "17 0.210 \n", + "18 0.128 \n", + "19 0.036 \n", + "20 0.182 \n", + "21 0.151 \n", + "22 0.073 \n", + "23 0.183 \n", + "24 0.097 \n", + "25 0.056 \n", + "26 0.078 \n", + "27 0.132 \n", + "28 0.167 \n", + "29 0.079 \n", + "30 0.054 \n", + "31 0.086 \n", + "32 0.150 \n", + "33 0.453 \n", + "34 0.074 \n", + "35 0.030 \n", + "36 0.110 \n", + "37 0.014 \n", + "38 0.016 \n", + "39 0.050 \n", + "40 0.240 \n", + "41 0.042 \n", + "42 0.034 \n", + "43 0.057 \n", + "44 0.127 \n", + "45 0.006 \n", + "46 0.050 \n", + "47 0.005 \n", + "48 0.041 \n", + "49 0.087 \n", + "50 0.097 \n", + "51 0.028 \n", + "52 0.064 \n", + "53 0.056 \n", + "54 0.161 \n", + "55 0.028 \n", + "56 0.060 \n", + "57 0.140 \n", + "58 0.078 \n", + "59 0.096 \n", + "60 0.064 \n", + "61 0.020 \n", + "62 0.080 \n", + "63 0.162 \n", + "64 0.027 \n", + "65 0.025 \n", + "66 0.098 \n", + "67 0.031 \n", + "68 0.107 \n", + "69 0.039 \n", + "70 0.000 \n", + "71 0.152 \n", + "72 0.080 \n", + "73 0.144 \n", + "74 0.022 \n", + "75 0.287 \n", + "76 0.101 \n", + "77 0.006 \n", + "78 0.106 \n", + "79 0.024 \n", + "80 0.142 \n", + "81 0.034 \n", + "82 0.038 \n", + "83 0.034 \n", + "84 0.041 \n", + "85 0.023 \n", + "87 0.114 \n", + "88 0.076 \n", + "89 0.182 \n", + "90 0.027 \n", + "91 0.028 \n", + "92 0.100 \n", + "93 0.073 \n", + "94 0.167 \n", + "95 0.037 \n", + "97 0.040 \n", + "99 0.089 \n", + "100 0.130 \n", + "101 0.082 \n", + "102 0.093 \n", + "103 0.055 \n", + "104 0.164 \n", + "105 0.055 \n", + "106 0.027 \n", + "107 0.047 \n", + "108 0.062 \n", + "109 0.066 \n", + "110 0.072 \n", + "112 0.056 \n", + "113 0.102 \n", + "114 0.113 \n", + "115 0.064 \n", + "116 0.125 \n", + "118 0.164 \n", + "120 0.053 \n", + "121 0.088 \n", + "122 0.138 \n", + "123 0.055 \n", + "124 0.143 \n", + "126 0.053 \n", + "127 0.052 \n", + "128 0.045 \n", + "129 0.047 \n", + "130 0.172 \n", + "131 0.078 \n", + "132 0.010 \n", + "133 0.100 \n", + "135 0.060 \n", + "136 0.067 \n", + "137 0.087 \n", + "138 0.085 \n", + "139 0.085 \n", + "140 0.033 \n", + "141 0.078 \n", + "142 0.041 \n", + "143 0.093 \n", + "144 0.180 \n", + "145 0.089 \n", + "146 0.110 \n", + "148 0.141 \n", + "149 0.089 \n", + "150 0.077 \n", + "151 0.411 \n", + "152 0.147 \n", + "153 0.025 \n", + "154 0.035 \n", + "155 0.091 " + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Rename the columns to make it more easy to understand\n", + "\n", + "happiness = happiness.rename(columns = {'Overall rank': 'Rank', 'Country or region': 'Country', \n", + " 'GDP per capita': 'Economy (GDP per Capita)', 'Social support': 'Social Support', \n", + " 'Healthy life expectancy': 'Health (Life Expectancy)', \n", + " 'Freedom to make life choices': 'Freedom',\n", + " 'Perceptions of corruption': 'Perception of Corruption'})\n", + "\n", + "#cleaning null value and inconsistent data\n", + "happiness.drop(index=86,axis=0 , inplace=True)\n", + "happiness.drop(index=96,axis=0 , inplace=True)\n", + "happiness.drop(index=98,axis=0 , inplace=True)\n", + "happiness.drop(index=111,axis=0 , inplace=True)\n", + "happiness.drop(index=117,axis=0 , inplace=True)\n", + "happiness.drop(index=119,axis=0 , inplace=True)\n", + "happiness.drop(index=125,axis=0 , inplace=True)\n", + "happiness.drop(index=134,axis=0 , inplace=True)\n", + "happiness.drop(index=147,axis=0 , inplace=True)\n", + "\n", + "# Dropping the unimportant columns\n", + "\n", + "happiness.drop(['Rank'], axis = 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "number of dyplicate rows: (0, 9)\n" + ] + } + ], + "source": [ + "# Checking if the rows containing any duplicate data or not\n", + "\n", + "duplicate_rows_happiness = happiness[happiness.duplicated()]\n", + "print(\"number of dyplicate rows: \", duplicate_rows_happiness.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rank 0\n", + "Country 0\n", + "Score 0\n", + "Economy (GDP per Capita) 0\n", + "Social Support 0\n", + "Health (Life Expectancy) 0\n", + "Freedom 0\n", + "Generosity 0\n", + "Perception of Corruption 0\n", + "dtype: int64\n" + ] + } + ], + "source": [ + "# Find the null values.\n", + "\n", + "print(happiness.isnull().sum())" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Rank 147\n", + "Country 147\n", + "Score 147\n", + "Economy (GDP per Capita) 147\n", + "Social Support 147\n", + "Health (Life Expectancy) 147\n", + "Freedom 147\n", + "Generosity 147\n", + "Perception of Corruption 147\n", + "dtype: int64" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Drop the missing values.\n", + "happiness = happiness.dropna() \n", + "happiness.count()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Rank 0\n", + "Country 0\n", + "Score 0\n", + "Economy (GDP per Capita) 0\n", + "Social Support 0\n", + "Health (Life Expectancy) 0\n", + "Freedom 0\n", + "Generosity 0\n", + "Perception of Corruption 0\n", + "dtype: int64\n" + ] + } + ], + "source": [ + "# After dropping the values\n", + "\n", + "print(happiness.isnull().sum())" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "R2: 0.5694117211173655\n" + ] + } + ], + "source": [ + "# Decision Tree Regression\n", + "\n", + "x = pd.DataFrame(np.c_[happiness['Economy (GDP per Capita)'], happiness['Social Support'], happiness['Health (Life Expectancy)']], \n", + " columns = ['Economy (GDP per Capita)','Social Support','Health (Life Expectancy)'])\n", + "y = happiness['Score']\n", + "\n", + "# split the data using train_test_split\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.2, random_state=42)\n", + "\n", + "# build the model\n", + "from sklearn.tree import DecisionTreeRegressor\n", + "regressor = DecisionTreeRegressor()\n", + "\n", + "# Fitting Decision Tree Regression into dataset\n", + "regressor.fit(x_train, y_train)\n", + "\n", + "y_pred = regressor.predict(x_test)\n", + "\n", + "# test the accuracy/performance measurement using R2\n", + "print('R2: ', regressor.score(x_test, y_test))" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Real ValuesPredicted Values
1324.3325.261
516.0085.523
1463.5974.085
196.8526.118
1074.7076.125
127.1396.223
765.4255.523
316.3006.125
815.2875.339
97.2466.985
266.4366.253
994.9135.779
1523.2314.996
675.6485.888
1423.9334.286
665.6534.996
186.8926.825
695.6036.125
1314.3504.374
306.3216.293
296.3546.223
1084.7004.166
366.1996.446
1244.4565.208
555.8905.743
226.5955.523
645.6975.386
1413.9734.286
825.2854.696
117.1675.323
\n", + "
" + ], + "text/plain": [ + " Real Values Predicted Values\n", + "132 4.332 5.261\n", + "51 6.008 5.523\n", + "146 3.597 4.085\n", + "19 6.852 6.118\n", + "107 4.707 6.125\n", + "12 7.139 6.223\n", + "76 5.425 5.523\n", + "31 6.300 6.125\n", + "81 5.287 5.339\n", + "9 7.246 6.985\n", + "26 6.436 6.253\n", + "99 4.913 5.779\n", + "152 3.231 4.996\n", + "67 5.648 5.888\n", + "142 3.933 4.286\n", + "66 5.653 4.996\n", + "18 6.892 6.825\n", + "69 5.603 6.125\n", + "131 4.350 4.374\n", + "30 6.321 6.293\n", + "29 6.354 6.223\n", + "108 4.700 4.166\n", + "36 6.199 6.446\n", + "124 4.456 5.208\n", + "55 5.890 5.743\n", + "22 6.595 5.523\n", + "64 5.697 5.386\n", + "141 3.973 4.286\n", + "82 5.285 4.696\n", + "11 7.167 5.323" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df = pd.DataFrame({'Real Values':y_test, 'Predicted Values':y_pred})\n", + "df" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Visualising the Decision Tree Regression Results \n", + "\n", + "X_grid = np.arange(0, 10)\n", + "X_grid = X_grid.reshape((len(X_grid), 1))\n", + "plt.scatter(y_pred, y_test)\n", + "plt.title('Decision Tree Regression')\n", + "plt.xlabel('Predicted Score')\n", + "plt.ylabel('Score')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.5222810333333335" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn import metrics\n", + "mse = metrics.mean_squared_error(y_test, y_pred)\n", + "mse" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "mean in first_cv_scores is -0.87 and in second_cv_scores is -0.68\n" + ] + } + ], + "source": [ + "# k-fold cross validation of decision tree regression\n", + "\n", + "from sklearn.model_selection import cross_val_score\n", + "regressor = DecisionTreeRegressor()\n", + "\n", + "first_cv_scores = cross_val_score(regressor, x, y, cv=5, scoring='neg_mean_squared_error')\n", + "second_cv_scores = cross_val_score(regressor, x, y, cv=10, scoring='neg_mean_squared_error')\n", + "print('mean in first_cv_scores is {0:.2f} and in second_cv_scores is {1:.2f}'.format(np.mean\n", + "(first_cv_scores),\n", + " np.mean\n", + "(second_cv_scores)))\n", + "\n", + "# neg_mean_squared_error is better when close to 0.0" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} From e7b9457e78ffb750890265ad1bcc32c2540c0b37 Mon Sep 17 00:00:00 2001 From: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Date: Sun, 29 Aug 2021 05:22:37 +0000 Subject: [PATCH 06/12] updating DIRECTORY.md --- DIRECTORY.md | 1 + 1 file changed, 1 insertion(+) diff --git a/DIRECTORY.md b/DIRECTORY.md index de99f5a..649c8ca 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -17,6 +17,7 @@ * [Dbscan](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/dbscan/dbscan.py) * Decision Tree With K-Fold Cross Validation * [K-Fold-Cross Validation Of Decision Tree Regression](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree%20with%20k-fold%20cross%20validation/k-fold-cross%20validation%20of%20decision%20tree%20regression.ipynb) + * [K-Fold-Cross Validation Of Decision Tree Regression2](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree%20with%20k-fold%20cross%20validation/k-fold-cross%20validation%20of%20decision%20tree%20regression2.ipynb) * Decision Tree * [Decision Tree](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree/Decision_Tree.ipynb) * Fundamentals Of Python From 6ce11e9ddf70f0ce4e58c0a209192939bdf4032b Mon Sep 17 00:00:00 2001 From: yenyarng Date: Sun, 29 Aug 2021 13:37:49 +0800 Subject: [PATCH 07/12] Add decision tree regression with K-fold validation --- ...lidation of decision tree regression.ipynb | 5038 ----------------- 1 file changed, 5038 deletions(-) delete mode 100644 machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb diff --git a/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb b/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb deleted file mode 100644 index 712a088..0000000 --- a/machine_learning/Decision tree with k-fold cross validation/k-fold-cross validation of decision tree regression.ipynb +++ /dev/null @@ -1,5038 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Overall rankCountry or regionScoreGDP per capitaSocial supportHealthy life expectancyFreedom to make life choicesGenerosityPerceptions of corruption
01Finland7.7691.3401.5870.9860.5960.1530.393
12Denmark7.6001.3831.5730.9960.5920.2520.410
23Norway7.5541.4881.5821.0280.6030.2710.341
34Iceland7.4941.3801.6241.0260.5910.3540.118
45Netherlands7.4881.3961.5220.9990.5570.3220.298
56Switzerland7.4801.4521.5261.0520.5720.2630.343
67Sweden7.3431.3871.4871.0090.5740.2670.373
78New Zealand7.3071.3031.5571.0260.5850.3300.380
89Canada7.2781.3651.5051.0390.5840.2850.308
910Austria7.2461.3761.4751.0160.5320.2440.226
1011Australia7.2281.3721.5481.0360.5570.3320.290
1112Costa Rica7.1671.0341.4410.9630.5580.1440.093
1213Israel7.1391.2761.4551.0290.3710.2610.082
1314Luxembourg7.0901.6091.4791.0120.5260.1940.316
1415United Kingdom7.0541.3331.5380.9960.4500.3480.278
1516Ireland7.0211.4991.5530.9990.5160.2980.310
1617Germany6.9851.3731.4540.9870.4950.2610.265
1718Belgium6.9231.3561.5040.9860.4730.1600.210
1819United States6.8921.4331.4570.8740.4540.2800.128
1920Czech Republic6.8521.2691.4870.9200.4570.0460.036
2021United Arab Emirates6.8251.5031.3100.8250.5980.2620.182
2122Malta6.7261.3001.5200.9990.5640.3750.151
2223Mexico6.5951.0701.3230.8610.4330.0740.073
2324France6.5921.3241.4721.0450.4360.1110.183
2425Taiwan6.4461.3681.4300.9140.3510.2420.097
2526Chile6.4441.1591.3690.9200.3570.1870.056
2627Guatemala6.4360.8001.2690.7460.5350.1750.078
2728Saudi Arabia6.3751.4031.3570.7950.4390.0800.132
2829Qatar6.3741.6841.3130.8710.5550.2200.167
2930Spain6.3541.2861.4841.0620.3620.1530.079
3031Panama6.3211.1491.4420.9100.5160.1090.054
3132Brazil6.3001.0041.4390.8020.3900.0990.086
3233Uruguay6.2931.1241.4650.8910.5230.1270.150
3334Singapore6.2621.5721.4631.1410.5560.2710.453
3435El Salvador6.2530.7941.2420.7890.4300.0930.074
3536Italy6.2231.2941.4881.0390.2310.1580.030
3637Bahrain6.1991.3621.3680.8710.5360.2550.110
3738Slovakia6.1981.2461.5040.8810.3340.1210.014
3839Trinidad & Tobago6.1921.2311.4770.7130.4890.1850.016
3940Poland6.1821.2061.4380.8840.4830.1170.050
4041Uzbekistan6.1740.7451.5290.7560.6310.3220.240
4142Lithuania6.1491.2381.5150.8180.2910.0430.042
4243Colombia6.1250.9851.4100.8410.4700.0990.034
4344Slovenia6.1181.2581.5230.9530.5640.1440.057
4445Nicaragua6.1050.6941.3250.8350.4350.2000.127
4546Kosovo6.1000.8821.2320.7580.4890.2620.006
4647Argentina6.0861.0921.4320.8810.4710.0660.050
4748Romania6.0701.1621.2320.8250.4620.0830.005
4849Cyprus6.0461.2631.2231.0420.4060.1900.041
4950Ecuador6.0280.9121.3120.8680.4980.1260.087
5051Kuwait6.0211.5001.3190.8080.4930.1420.097
5152Thailand6.0081.0501.4090.8280.5570.3590.028
5253Latvia5.9401.1871.4650.8120.2640.0750.064
5354South Korea5.8951.3011.2191.0360.1590.1750.056
5455Estonia5.8931.2371.5280.8740.4950.1030.161
5556Jamaica5.8900.8311.4780.8310.4900.1070.028
5657Mauritius5.8881.1201.4020.7980.4980.2150.060
5758Japan5.8861.3271.4191.0880.4450.0690.140
5859Honduras5.8600.6421.2360.8280.5070.2460.078
5960Kazakhstan5.8091.1731.5080.7290.4100.1460.096
6061Bolivia5.7790.7761.2090.7060.5110.1370.064
6162Hungary5.7581.2011.4100.8280.1990.0810.020
6263Paraguay5.7430.8551.4750.7770.5140.1840.080
6364Northern Cyprus5.7181.2631.2521.0420.4170.1910.162
6465Peru5.6970.9601.2740.8540.4550.0830.027
6566Portugal5.6931.2211.4310.9990.5080.0470.025
6667Pakistan5.6530.6770.8860.5350.3130.2200.098
6768Russia5.6481.1831.4520.7260.3340.0820.031
6869Philippines5.6310.8071.2930.6570.5580.1170.107
6970Serbia5.6031.0041.3830.8540.2820.1370.039
7071Moldova5.5290.6851.3280.7390.2450.1810.000
7172Libya5.5251.0441.3030.6730.4160.1330.152
7273Montenegro5.5231.0511.3610.8710.1970.1420.080
7374Tajikistan5.4670.4931.0980.7180.3890.2300.144
7475Croatia5.4321.1551.2660.9140.2960.1190.022
7576Hong Kong5.4301.4381.2771.1220.4400.2580.287
7677Dominican Republic5.4251.0151.4010.7790.4970.1130.101
7778Bosnia and Herzegovina5.3860.9451.2120.8450.2120.2630.006
7879Turkey5.3731.1831.3600.8080.1950.0830.106
7980Malaysia5.3391.2211.1710.8280.5080.2600.024
8081Belarus5.3231.0671.4650.7890.2350.0940.142
8182Greece5.2871.1811.1560.9990.0670.0000.034
8283Mongolia5.2850.9481.5310.6670.3170.2350.038
8384North Macedonia5.2740.9831.2940.8380.3450.1850.034
8485Nigeria5.2650.6961.1110.2450.4260.2150.041
8586Kyrgyzstan5.2610.5511.4380.7230.5080.3000.023
8687Turkmenistan5.2471.0521.5380.6570.3940.2440.028
8788Algeria5.2111.0021.1600.7850.0860.0730.114
8889Morocco5.2080.8010.7820.7820.4180.0360.076
8990Azerbaijan5.2081.0431.1470.7690.3510.0350.182
9091Lebanon5.1970.9871.2240.8150.2160.1660.027
9192Indonesia5.1920.9311.2030.6600.4910.4980.028
9293China5.1911.0291.1250.8930.5210.0580.100
9394Vietnam5.1750.7411.3460.8510.5430.1470.073
9495Bhutan5.0820.8131.3210.6040.4570.3700.167
9596Cameroon5.0440.5490.9100.3310.3810.1870.037
9697Bulgaria5.0111.0921.5130.8150.3110.0810.004
9798Ghana4.9960.6110.8680.4860.3810.2450.040
9899Ivory Coast4.9440.5690.8080.2320.3520.1540.090
99100Nepal4.9130.4461.2260.6770.4390.2850.089
100101Jordan4.9060.8371.2250.8150.3830.1100.130
101102Benin4.8830.3930.4370.3970.3490.1750.082
102103Congo (Brazzaville)4.8120.6730.7990.5080.3720.1050.093
103104Gabon4.7991.0571.1830.5710.2950.0430.055
104105Laos4.7960.7641.0300.5510.5470.2660.164
105106South Africa4.7220.9601.3510.4690.3890.1300.055
106107Albania4.7190.9470.8480.8740.3830.1780.027
107108Venezuela4.7070.9601.4270.8050.1540.0640.047
108109Cambodia4.7000.5741.1220.6370.6090.2320.062
109110Palestinian Territories4.6960.6571.2470.6720.2250.1030.066
110111Senegal4.6810.4501.1340.5710.2920.1530.072
111112Somalia4.6680.0000.6980.2680.5590.2430.270
112113Namibia4.6390.8791.3130.4770.4010.0700.056
113114Niger4.6280.1380.7740.3660.3180.1880.102
114115Burkina Faso4.5870.3311.0560.3800.2550.1770.113
115116Armenia4.5590.8501.0550.8150.2830.0950.064
116117Iran4.5481.1000.8420.7850.3050.2700.125
117118Guinea4.5340.3800.8290.3750.3320.2070.086
118119Georgia4.5190.8860.6660.7520.3460.0430.164
119120Gambia4.5160.3080.9390.4280.3820.2690.167
120121Kenya4.5090.5120.9830.5810.4310.3720.053
121122Mauritania4.4900.5701.1670.4890.0660.1060.088
122123Mozambique4.4660.2040.9860.3900.4940.1970.138
123124Tunisia4.4610.9211.0000.8150.1670.0590.055
124125Bangladesh4.4560.5620.9280.7230.5270.1660.143
125126Iraq4.4371.0430.9800.5740.2410.1480.089
126127Congo (Kinshasa)4.4180.0941.1250.3570.2690.2120.053
127128Mali4.3900.3851.1050.3080.3270.1530.052
128129Sierra Leone4.3740.2680.8410.2420.3090.2520.045
129130Sri Lanka4.3660.9491.2650.8310.4700.2440.047
130131Myanmar4.3600.7101.1810.5550.5250.5660.172
131132Chad4.3500.3500.7660.1920.1740.1980.078
132133Ukraine4.3320.8201.3900.7390.1780.1870.010
133134Ethiopia4.2860.3361.0330.5320.3440.2090.100
134135Swaziland4.2120.8111.1490.0000.3130.0740.135
135136Uganda4.1890.3321.0690.4430.3560.2520.060
136137Egypt4.1660.9131.0390.6440.2410.0760.067
137138Zambia4.1070.5781.0580.4260.4310.2470.087
138139Togo4.0850.2750.5720.4100.2930.1770.085
139140India4.0150.7550.7650.5880.4980.2000.085
140141Liberia3.9750.0730.9220.4430.3700.2330.033
141142Comoros3.9730.2740.7570.5050.1420.2750.078
142143Madagascar3.9330.2740.9160.5550.1480.1690.041
143144Lesotho3.8020.4891.1690.1680.3590.1070.093
144145Burundi3.7750.0460.4470.3800.2200.1760.180
145146Zimbabwe3.6630.3661.1140.4330.3610.1510.089
146147Haiti3.5970.3230.6880.4490.0260.4190.110
147148Botswana3.4881.0411.1450.5380.4550.0250.100
148149Syria3.4620.6190.3780.4400.0130.3310.141
149150Malawi3.4100.1910.5600.4950.4430.2180.089
150151Yemen3.3800.2871.1630.4630.1430.1080.077
151152Rwanda3.3340.3590.7110.6140.5550.2170.411
152153Tanzania3.2310.4760.8850.4990.4170.2760.147
153154Afghanistan3.2030.3500.5170.3610.0000.1580.025
154155Central African Republic3.0830.0260.0000.1050.2250.2350.035
155156South Sudan2.8530.3060.5750.2950.0100.2020.091
\n", - "
" - ], - "text/plain": [ - " Overall rank Country or region Score GDP per capita \\\n", - "0 1 Finland 7.769 1.340 \n", - "1 2 Denmark 7.600 1.383 \n", - "2 3 Norway 7.554 1.488 \n", - "3 4 Iceland 7.494 1.380 \n", - "4 5 Netherlands 7.488 1.396 \n", - "5 6 Switzerland 7.480 1.452 \n", - "6 7 Sweden 7.343 1.387 \n", - "7 8 New Zealand 7.307 1.303 \n", - "8 9 Canada 7.278 1.365 \n", - "9 10 Austria 7.246 1.376 \n", - "10 11 Australia 7.228 1.372 \n", - "11 12 Costa Rica 7.167 1.034 \n", - "12 13 Israel 7.139 1.276 \n", - "13 14 Luxembourg 7.090 1.609 \n", - "14 15 United Kingdom 7.054 1.333 \n", - "15 16 Ireland 7.021 1.499 \n", - "16 17 Germany 6.985 1.373 \n", - "17 18 Belgium 6.923 1.356 \n", - "18 19 United States 6.892 1.433 \n", - "19 20 Czech Republic 6.852 1.269 \n", - "20 21 United Arab Emirates 6.825 1.503 \n", - "21 22 Malta 6.726 1.300 \n", - "22 23 Mexico 6.595 1.070 \n", - "23 24 France 6.592 1.324 \n", - "24 25 Taiwan 6.446 1.368 \n", - "25 26 Chile 6.444 1.159 \n", - "26 27 Guatemala 6.436 0.800 \n", - "27 28 Saudi Arabia 6.375 1.403 \n", - "28 29 Qatar 6.374 1.684 \n", - "29 30 Spain 6.354 1.286 \n", - "30 31 Panama 6.321 1.149 \n", - "31 32 Brazil 6.300 1.004 \n", - "32 33 Uruguay 6.293 1.124 \n", - "33 34 Singapore 6.262 1.572 \n", - "34 35 El Salvador 6.253 0.794 \n", - "35 36 Italy 6.223 1.294 \n", - "36 37 Bahrain 6.199 1.362 \n", - "37 38 Slovakia 6.198 1.246 \n", - "38 39 Trinidad & Tobago 6.192 1.231 \n", - "39 40 Poland 6.182 1.206 \n", - "40 41 Uzbekistan 6.174 0.745 \n", - "41 42 Lithuania 6.149 1.238 \n", - "42 43 Colombia 6.125 0.985 \n", - "43 44 Slovenia 6.118 1.258 \n", - "44 45 Nicaragua 6.105 0.694 \n", - "45 46 Kosovo 6.100 0.882 \n", - "46 47 Argentina 6.086 1.092 \n", - "47 48 Romania 6.070 1.162 \n", - "48 49 Cyprus 6.046 1.263 \n", - "49 50 Ecuador 6.028 0.912 \n", - "50 51 Kuwait 6.021 1.500 \n", - "51 52 Thailand 6.008 1.050 \n", - "52 53 Latvia 5.940 1.187 \n", - "53 54 South Korea 5.895 1.301 \n", - "54 55 Estonia 5.893 1.237 \n", - "55 56 Jamaica 5.890 0.831 \n", - "56 57 Mauritius 5.888 1.120 \n", - "57 58 Japan 5.886 1.327 \n", - "58 59 Honduras 5.860 0.642 \n", - "59 60 Kazakhstan 5.809 1.173 \n", - "60 61 Bolivia 5.779 0.776 \n", - "61 62 Hungary 5.758 1.201 \n", - "62 63 Paraguay 5.743 0.855 \n", - "63 64 Northern Cyprus 5.718 1.263 \n", - "64 65 Peru 5.697 0.960 \n", - "65 66 Portugal 5.693 1.221 \n", - "66 67 Pakistan 5.653 0.677 \n", - "67 68 Russia 5.648 1.183 \n", - "68 69 Philippines 5.631 0.807 \n", - "69 70 Serbia 5.603 1.004 \n", - "70 71 Moldova 5.529 0.685 \n", - "71 72 Libya 5.525 1.044 \n", - "72 73 Montenegro 5.523 1.051 \n", - "73 74 Tajikistan 5.467 0.493 \n", - "74 75 Croatia 5.432 1.155 \n", - "75 76 Hong Kong 5.430 1.438 \n", - "76 77 Dominican Republic 5.425 1.015 \n", - "77 78 Bosnia and Herzegovina 5.386 0.945 \n", - "78 79 Turkey 5.373 1.183 \n", - "79 80 Malaysia 5.339 1.221 \n", - "80 81 Belarus 5.323 1.067 \n", - "81 82 Greece 5.287 1.181 \n", - "82 83 Mongolia 5.285 0.948 \n", - "83 84 North Macedonia 5.274 0.983 \n", - "84 85 Nigeria 5.265 0.696 \n", - "85 86 Kyrgyzstan 5.261 0.551 \n", - "86 87 Turkmenistan 5.247 1.052 \n", - "87 88 Algeria 5.211 1.002 \n", - "88 89 Morocco 5.208 0.801 \n", - "89 90 Azerbaijan 5.208 1.043 \n", - "90 91 Lebanon 5.197 0.987 \n", - "91 92 Indonesia 5.192 0.931 \n", - "92 93 China 5.191 1.029 \n", - "93 94 Vietnam 5.175 0.741 \n", - "94 95 Bhutan 5.082 0.813 \n", - "95 96 Cameroon 5.044 0.549 \n", - "96 97 Bulgaria 5.011 1.092 \n", - "97 98 Ghana 4.996 0.611 \n", - "98 99 Ivory Coast 4.944 0.569 \n", - "99 100 Nepal 4.913 0.446 \n", - "100 101 Jordan 4.906 0.837 \n", - "101 102 Benin 4.883 0.393 \n", - "102 103 Congo (Brazzaville) 4.812 0.673 \n", - "103 104 Gabon 4.799 1.057 \n", - "104 105 Laos 4.796 0.764 \n", - "105 106 South Africa 4.722 0.960 \n", - "106 107 Albania 4.719 0.947 \n", - "107 108 Venezuela 4.707 0.960 \n", - "108 109 Cambodia 4.700 0.574 \n", - "109 110 Palestinian Territories 4.696 0.657 \n", - "110 111 Senegal 4.681 0.450 \n", - "111 112 Somalia 4.668 0.000 \n", - "112 113 Namibia 4.639 0.879 \n", - "113 114 Niger 4.628 0.138 \n", - "114 115 Burkina Faso 4.587 0.331 \n", - "115 116 Armenia 4.559 0.850 \n", - "116 117 Iran 4.548 1.100 \n", - "117 118 Guinea 4.534 0.380 \n", - "118 119 Georgia 4.519 0.886 \n", - "119 120 Gambia 4.516 0.308 \n", - "120 121 Kenya 4.509 0.512 \n", - "121 122 Mauritania 4.490 0.570 \n", - "122 123 Mozambique 4.466 0.204 \n", - "123 124 Tunisia 4.461 0.921 \n", - "124 125 Bangladesh 4.456 0.562 \n", - "125 126 Iraq 4.437 1.043 \n", - "126 127 Congo (Kinshasa) 4.418 0.094 \n", - "127 128 Mali 4.390 0.385 \n", - "128 129 Sierra Leone 4.374 0.268 \n", - "129 130 Sri Lanka 4.366 0.949 \n", - "130 131 Myanmar 4.360 0.710 \n", - "131 132 Chad 4.350 0.350 \n", - "132 133 Ukraine 4.332 0.820 \n", - "133 134 Ethiopia 4.286 0.336 \n", - "134 135 Swaziland 4.212 0.811 \n", - "135 136 Uganda 4.189 0.332 \n", - "136 137 Egypt 4.166 0.913 \n", - "137 138 Zambia 4.107 0.578 \n", - "138 139 Togo 4.085 0.275 \n", - "139 140 India 4.015 0.755 \n", - "140 141 Liberia 3.975 0.073 \n", - "141 142 Comoros 3.973 0.274 \n", - "142 143 Madagascar 3.933 0.274 \n", - "143 144 Lesotho 3.802 0.489 \n", - "144 145 Burundi 3.775 0.046 \n", - "145 146 Zimbabwe 3.663 0.366 \n", - "146 147 Haiti 3.597 0.323 \n", - "147 148 Botswana 3.488 1.041 \n", - "148 149 Syria 3.462 0.619 \n", - "149 150 Malawi 3.410 0.191 \n", - "150 151 Yemen 3.380 0.287 \n", - "151 152 Rwanda 3.334 0.359 \n", - "152 153 Tanzania 3.231 0.476 \n", - "153 154 Afghanistan 3.203 0.350 \n", - "154 155 Central African Republic 3.083 0.026 \n", - "155 156 South Sudan 2.853 0.306 \n", - "\n", - " Social support Healthy life expectancy Freedom to make life choices \\\n", - "0 1.587 0.986 0.596 \n", - "1 1.573 0.996 0.592 \n", - "2 1.582 1.028 0.603 \n", - "3 1.624 1.026 0.591 \n", - "4 1.522 0.999 0.557 \n", - "5 1.526 1.052 0.572 \n", - "6 1.487 1.009 0.574 \n", - "7 1.557 1.026 0.585 \n", - "8 1.505 1.039 0.584 \n", - "9 1.475 1.016 0.532 \n", - "10 1.548 1.036 0.557 \n", - "11 1.441 0.963 0.558 \n", - "12 1.455 1.029 0.371 \n", - "13 1.479 1.012 0.526 \n", - "14 1.538 0.996 0.450 \n", - "15 1.553 0.999 0.516 \n", - "16 1.454 0.987 0.495 \n", - "17 1.504 0.986 0.473 \n", - "18 1.457 0.874 0.454 \n", - "19 1.487 0.920 0.457 \n", - "20 1.310 0.825 0.598 \n", - "21 1.520 0.999 0.564 \n", - "22 1.323 0.861 0.433 \n", - "23 1.472 1.045 0.436 \n", - "24 1.430 0.914 0.351 \n", - "25 1.369 0.920 0.357 \n", - "26 1.269 0.746 0.535 \n", - "27 1.357 0.795 0.439 \n", - "28 1.313 0.871 0.555 \n", - "29 1.484 1.062 0.362 \n", - "30 1.442 0.910 0.516 \n", - "31 1.439 0.802 0.390 \n", - "32 1.465 0.891 0.523 \n", - "33 1.463 1.141 0.556 \n", - "34 1.242 0.789 0.430 \n", - "35 1.488 1.039 0.231 \n", - "36 1.368 0.871 0.536 \n", - "37 1.504 0.881 0.334 \n", - "38 1.477 0.713 0.489 \n", - "39 1.438 0.884 0.483 \n", - "40 1.529 0.756 0.631 \n", - "41 1.515 0.818 0.291 \n", - "42 1.410 0.841 0.470 \n", - "43 1.523 0.953 0.564 \n", - "44 1.325 0.835 0.435 \n", - "45 1.232 0.758 0.489 \n", - "46 1.432 0.881 0.471 \n", - "47 1.232 0.825 0.462 \n", - "48 1.223 1.042 0.406 \n", - "49 1.312 0.868 0.498 \n", - "50 1.319 0.808 0.493 \n", - "51 1.409 0.828 0.557 \n", - "52 1.465 0.812 0.264 \n", - "53 1.219 1.036 0.159 \n", - "54 1.528 0.874 0.495 \n", - "55 1.478 0.831 0.490 \n", - "56 1.402 0.798 0.498 \n", - "57 1.419 1.088 0.445 \n", - "58 1.236 0.828 0.507 \n", - "59 1.508 0.729 0.410 \n", - "60 1.209 0.706 0.511 \n", - "61 1.410 0.828 0.199 \n", - "62 1.475 0.777 0.514 \n", - "63 1.252 1.042 0.417 \n", - "64 1.274 0.854 0.455 \n", - "65 1.431 0.999 0.508 \n", - "66 0.886 0.535 0.313 \n", - "67 1.452 0.726 0.334 \n", - "68 1.293 0.657 0.558 \n", - "69 1.383 0.854 0.282 \n", - "70 1.328 0.739 0.245 \n", - "71 1.303 0.673 0.416 \n", - "72 1.361 0.871 0.197 \n", - "73 1.098 0.718 0.389 \n", - "74 1.266 0.914 0.296 \n", - "75 1.277 1.122 0.440 \n", - "76 1.401 0.779 0.497 \n", - "77 1.212 0.845 0.212 \n", - "78 1.360 0.808 0.195 \n", - "79 1.171 0.828 0.508 \n", - "80 1.465 0.789 0.235 \n", - "81 1.156 0.999 0.067 \n", - "82 1.531 0.667 0.317 \n", - "83 1.294 0.838 0.345 \n", - "84 1.111 0.245 0.426 \n", - "85 1.438 0.723 0.508 \n", - "86 1.538 0.657 0.394 \n", - "87 1.160 0.785 0.086 \n", - "88 0.782 0.782 0.418 \n", - "89 1.147 0.769 0.351 \n", - "90 1.224 0.815 0.216 \n", - "91 1.203 0.660 0.491 \n", - "92 1.125 0.893 0.521 \n", - "93 1.346 0.851 0.543 \n", - "94 1.321 0.604 0.457 \n", - "95 0.910 0.331 0.381 \n", - "96 1.513 0.815 0.311 \n", - "97 0.868 0.486 0.381 \n", - "98 0.808 0.232 0.352 \n", - "99 1.226 0.677 0.439 \n", - "100 1.225 0.815 0.383 \n", - "101 0.437 0.397 0.349 \n", - "102 0.799 0.508 0.372 \n", - "103 1.183 0.571 0.295 \n", - "104 1.030 0.551 0.547 \n", - "105 1.351 0.469 0.389 \n", - "106 0.848 0.874 0.383 \n", - "107 1.427 0.805 0.154 \n", - "108 1.122 0.637 0.609 \n", - "109 1.247 0.672 0.225 \n", - "110 1.134 0.571 0.292 \n", - "111 0.698 0.268 0.559 \n", - "112 1.313 0.477 0.401 \n", - "113 0.774 0.366 0.318 \n", - "114 1.056 0.380 0.255 \n", - "115 1.055 0.815 0.283 \n", - "116 0.842 0.785 0.305 \n", - "117 0.829 0.375 0.332 \n", - "118 0.666 0.752 0.346 \n", - "119 0.939 0.428 0.382 \n", - "120 0.983 0.581 0.431 \n", - "121 1.167 0.489 0.066 \n", - "122 0.986 0.390 0.494 \n", - "123 1.000 0.815 0.167 \n", - "124 0.928 0.723 0.527 \n", - "125 0.980 0.574 0.241 \n", - "126 1.125 0.357 0.269 \n", - "127 1.105 0.308 0.327 \n", - "128 0.841 0.242 0.309 \n", - "129 1.265 0.831 0.470 \n", - "130 1.181 0.555 0.525 \n", - "131 0.766 0.192 0.174 \n", - "132 1.390 0.739 0.178 \n", - "133 1.033 0.532 0.344 \n", - "134 1.149 0.000 0.313 \n", - "135 1.069 0.443 0.356 \n", - "136 1.039 0.644 0.241 \n", - "137 1.058 0.426 0.431 \n", - "138 0.572 0.410 0.293 \n", - "139 0.765 0.588 0.498 \n", - "140 0.922 0.443 0.370 \n", - "141 0.757 0.505 0.142 \n", - "142 0.916 0.555 0.148 \n", - "143 1.169 0.168 0.359 \n", - "144 0.447 0.380 0.220 \n", - "145 1.114 0.433 0.361 \n", - "146 0.688 0.449 0.026 \n", - "147 1.145 0.538 0.455 \n", - "148 0.378 0.440 0.013 \n", - "149 0.560 0.495 0.443 \n", - "150 1.163 0.463 0.143 \n", - "151 0.711 0.614 0.555 \n", - "152 0.885 0.499 0.417 \n", - "153 0.517 0.361 0.000 \n", - "154 0.000 0.105 0.225 \n", - "155 0.575 0.295 0.010 \n", - "\n", - " Generosity Perceptions of corruption \n", - "0 0.153 0.393 \n", - "1 0.252 0.410 \n", - "2 0.271 0.341 \n", - "3 0.354 0.118 \n", - "4 0.322 0.298 \n", - "5 0.263 0.343 \n", - "6 0.267 0.373 \n", - "7 0.330 0.380 \n", - "8 0.285 0.308 \n", - "9 0.244 0.226 \n", - "10 0.332 0.290 \n", - "11 0.144 0.093 \n", - "12 0.261 0.082 \n", - "13 0.194 0.316 \n", - "14 0.348 0.278 \n", - "15 0.298 0.310 \n", - "16 0.261 0.265 \n", - "17 0.160 0.210 \n", - "18 0.280 0.128 \n", - "19 0.046 0.036 \n", - "20 0.262 0.182 \n", - "21 0.375 0.151 \n", - "22 0.074 0.073 \n", - "23 0.111 0.183 \n", - "24 0.242 0.097 \n", - "25 0.187 0.056 \n", - "26 0.175 0.078 \n", - "27 0.080 0.132 \n", - "28 0.220 0.167 \n", - "29 0.153 0.079 \n", - "30 0.109 0.054 \n", - "31 0.099 0.086 \n", - "32 0.127 0.150 \n", - "33 0.271 0.453 \n", - "34 0.093 0.074 \n", - "35 0.158 0.030 \n", - "36 0.255 0.110 \n", - "37 0.121 0.014 \n", - "38 0.185 0.016 \n", - "39 0.117 0.050 \n", - "40 0.322 0.240 \n", - "41 0.043 0.042 \n", - "42 0.099 0.034 \n", - "43 0.144 0.057 \n", - "44 0.200 0.127 \n", - "45 0.262 0.006 \n", - "46 0.066 0.050 \n", - "47 0.083 0.005 \n", - "48 0.190 0.041 \n", - "49 0.126 0.087 \n", - "50 0.142 0.097 \n", - "51 0.359 0.028 \n", - "52 0.075 0.064 \n", - "53 0.175 0.056 \n", - "54 0.103 0.161 \n", - "55 0.107 0.028 \n", - "56 0.215 0.060 \n", - "57 0.069 0.140 \n", - "58 0.246 0.078 \n", - "59 0.146 0.096 \n", - "60 0.137 0.064 \n", - "61 0.081 0.020 \n", - "62 0.184 0.080 \n", - "63 0.191 0.162 \n", - "64 0.083 0.027 \n", - "65 0.047 0.025 \n", - "66 0.220 0.098 \n", - "67 0.082 0.031 \n", - "68 0.117 0.107 \n", - "69 0.137 0.039 \n", - "70 0.181 0.000 \n", - "71 0.133 0.152 \n", - "72 0.142 0.080 \n", - "73 0.230 0.144 \n", - "74 0.119 0.022 \n", - "75 0.258 0.287 \n", - "76 0.113 0.101 \n", - "77 0.263 0.006 \n", - "78 0.083 0.106 \n", - "79 0.260 0.024 \n", - "80 0.094 0.142 \n", - "81 0.000 0.034 \n", - "82 0.235 0.038 \n", - "83 0.185 0.034 \n", - "84 0.215 0.041 \n", - "85 0.300 0.023 \n", - "86 0.244 0.028 \n", - "87 0.073 0.114 \n", - "88 0.036 0.076 \n", - "89 0.035 0.182 \n", - "90 0.166 0.027 \n", - "91 0.498 0.028 \n", - "92 0.058 0.100 \n", - "93 0.147 0.073 \n", - "94 0.370 0.167 \n", - "95 0.187 0.037 \n", - "96 0.081 0.004 \n", - "97 0.245 0.040 \n", - "98 0.154 0.090 \n", - "99 0.285 0.089 \n", - "100 0.110 0.130 \n", - "101 0.175 0.082 \n", - "102 0.105 0.093 \n", - "103 0.043 0.055 \n", - "104 0.266 0.164 \n", - "105 0.130 0.055 \n", - "106 0.178 0.027 \n", - "107 0.064 0.047 \n", - "108 0.232 0.062 \n", - "109 0.103 0.066 \n", - "110 0.153 0.072 \n", - "111 0.243 0.270 \n", - "112 0.070 0.056 \n", - "113 0.188 0.102 \n", - "114 0.177 0.113 \n", - "115 0.095 0.064 \n", - "116 0.270 0.125 \n", - "117 0.207 0.086 \n", - "118 0.043 0.164 \n", - "119 0.269 0.167 \n", - "120 0.372 0.053 \n", - "121 0.106 0.088 \n", - "122 0.197 0.138 \n", - "123 0.059 0.055 \n", - "124 0.166 0.143 \n", - "125 0.148 0.089 \n", - "126 0.212 0.053 \n", - "127 0.153 0.052 \n", - "128 0.252 0.045 \n", - "129 0.244 0.047 \n", - "130 0.566 0.172 \n", - "131 0.198 0.078 \n", - "132 0.187 0.010 \n", - "133 0.209 0.100 \n", - "134 0.074 0.135 \n", - "135 0.252 0.060 \n", - "136 0.076 0.067 \n", - "137 0.247 0.087 \n", - "138 0.177 0.085 \n", - "139 0.200 0.085 \n", - "140 0.233 0.033 \n", - "141 0.275 0.078 \n", - "142 0.169 0.041 \n", - "143 0.107 0.093 \n", - "144 0.176 0.180 \n", - "145 0.151 0.089 \n", - "146 0.419 0.110 \n", - "147 0.025 0.100 \n", - "148 0.331 0.141 \n", - "149 0.218 0.089 \n", - "150 0.108 0.077 \n", - "151 0.217 0.411 \n", - "152 0.276 0.147 \n", - "153 0.158 0.025 \n", - "154 0.235 0.035 \n", - "155 0.202 0.091 " - ] - }, - "execution_count": 1, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Import libraries require\n", - "\n", - "import numpy as np\n", - "import pandas as pd\n", - "import seaborn as sns\n", - "import matplotlib.pyplot as plt\n", - "\n", - "%matplotlib inline\n", - "sns.set(color_codes = True)\n", - "# Load the data into data frame according to the file where you save it\n", - "\n", - "happiness = pd.read_csv(\"c://2019.csv\")\n", - "\n", - "# Let data frame to display all the data\n", - "\n", - "pd.set_option(\"display.max_rows\", None)\n", - "\n", - "# show the data\n", - "happiness" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
CountryScoreEconomy (GDP per Capita)Social SupportHealth (Life Expectancy)FreedomGenerosityPerception of Corruption
0Finland7.7691.3401.5870.9860.5960.1530.393
1Denmark7.6001.3831.5730.9960.5920.2520.410
2Norway7.5541.4881.5821.0280.6030.2710.341
3Iceland7.4941.3801.6241.0260.5910.3540.118
4Netherlands7.4881.3961.5220.9990.5570.3220.298
5Switzerland7.4801.4521.5261.0520.5720.2630.343
6Sweden7.3431.3871.4871.0090.5740.2670.373
7New Zealand7.3071.3031.5571.0260.5850.3300.380
8Canada7.2781.3651.5051.0390.5840.2850.308
9Austria7.2461.3761.4751.0160.5320.2440.226
10Australia7.2281.3721.5481.0360.5570.3320.290
11Costa Rica7.1671.0341.4410.9630.5580.1440.093
12Israel7.1391.2761.4551.0290.3710.2610.082
13Luxembourg7.0901.6091.4791.0120.5260.1940.316
14United Kingdom7.0541.3331.5380.9960.4500.3480.278
15Ireland7.0211.4991.5530.9990.5160.2980.310
16Germany6.9851.3731.4540.9870.4950.2610.265
17Belgium6.9231.3561.5040.9860.4730.1600.210
18United States6.8921.4331.4570.8740.4540.2800.128
19Czech Republic6.8521.2691.4870.9200.4570.0460.036
20United Arab Emirates6.8251.5031.3100.8250.5980.2620.182
21Malta6.7261.3001.5200.9990.5640.3750.151
22Mexico6.5951.0701.3230.8610.4330.0740.073
23France6.5921.3241.4721.0450.4360.1110.183
24Taiwan6.4461.3681.4300.9140.3510.2420.097
25Chile6.4441.1591.3690.9200.3570.1870.056
26Guatemala6.4360.8001.2690.7460.5350.1750.078
27Saudi Arabia6.3751.4031.3570.7950.4390.0800.132
28Qatar6.3741.6841.3130.8710.5550.2200.167
29Spain6.3541.2861.4841.0620.3620.1530.079
30Panama6.3211.1491.4420.9100.5160.1090.054
31Brazil6.3001.0041.4390.8020.3900.0990.086
32Uruguay6.2931.1241.4650.8910.5230.1270.150
33Singapore6.2621.5721.4631.1410.5560.2710.453
34El Salvador6.2530.7941.2420.7890.4300.0930.074
35Italy6.2231.2941.4881.0390.2310.1580.030
36Bahrain6.1991.3621.3680.8710.5360.2550.110
37Slovakia6.1981.2461.5040.8810.3340.1210.014
38Trinidad & Tobago6.1921.2311.4770.7130.4890.1850.016
39Poland6.1821.2061.4380.8840.4830.1170.050
40Uzbekistan6.1740.7451.5290.7560.6310.3220.240
41Lithuania6.1491.2381.5150.8180.2910.0430.042
42Colombia6.1250.9851.4100.8410.4700.0990.034
43Slovenia6.1181.2581.5230.9530.5640.1440.057
44Nicaragua6.1050.6941.3250.8350.4350.2000.127
45Kosovo6.1000.8821.2320.7580.4890.2620.006
46Argentina6.0861.0921.4320.8810.4710.0660.050
47Romania6.0701.1621.2320.8250.4620.0830.005
48Cyprus6.0461.2631.2231.0420.4060.1900.041
49Ecuador6.0280.9121.3120.8680.4980.1260.087
50Kuwait6.0211.5001.3190.8080.4930.1420.097
51Thailand6.0081.0501.4090.8280.5570.3590.028
52Latvia5.9401.1871.4650.8120.2640.0750.064
53South Korea5.8951.3011.2191.0360.1590.1750.056
54Estonia5.8931.2371.5280.8740.4950.1030.161
55Jamaica5.8900.8311.4780.8310.4900.1070.028
56Mauritius5.8881.1201.4020.7980.4980.2150.060
57Japan5.8861.3271.4191.0880.4450.0690.140
58Honduras5.8600.6421.2360.8280.5070.2460.078
59Kazakhstan5.8091.1731.5080.7290.4100.1460.096
60Bolivia5.7790.7761.2090.7060.5110.1370.064
61Hungary5.7581.2011.4100.8280.1990.0810.020
62Paraguay5.7430.8551.4750.7770.5140.1840.080
63Northern Cyprus5.7181.2631.2521.0420.4170.1910.162
64Peru5.6970.9601.2740.8540.4550.0830.027
65Portugal5.6931.2211.4310.9990.5080.0470.025
66Pakistan5.6530.6770.8860.5350.3130.2200.098
67Russia5.6481.1831.4520.7260.3340.0820.031
68Philippines5.6310.8071.2930.6570.5580.1170.107
69Serbia5.6031.0041.3830.8540.2820.1370.039
70Moldova5.5290.6851.3280.7390.2450.1810.000
71Libya5.5251.0441.3030.6730.4160.1330.152
72Montenegro5.5231.0511.3610.8710.1970.1420.080
73Tajikistan5.4670.4931.0980.7180.3890.2300.144
74Croatia5.4321.1551.2660.9140.2960.1190.022
75Hong Kong5.4301.4381.2771.1220.4400.2580.287
76Dominican Republic5.4251.0151.4010.7790.4970.1130.101
77Bosnia and Herzegovina5.3860.9451.2120.8450.2120.2630.006
78Turkey5.3731.1831.3600.8080.1950.0830.106
79Malaysia5.3391.2211.1710.8280.5080.2600.024
80Belarus5.3231.0671.4650.7890.2350.0940.142
81Greece5.2871.1811.1560.9990.0670.0000.034
82Mongolia5.2850.9481.5310.6670.3170.2350.038
83North Macedonia5.2740.9831.2940.8380.3450.1850.034
84Nigeria5.2650.6961.1110.2450.4260.2150.041
85Kyrgyzstan5.2610.5511.4380.7230.5080.3000.023
87Algeria5.2111.0021.1600.7850.0860.0730.114
88Morocco5.2080.8010.7820.7820.4180.0360.076
89Azerbaijan5.2081.0431.1470.7690.3510.0350.182
90Lebanon5.1970.9871.2240.8150.2160.1660.027
91Indonesia5.1920.9311.2030.6600.4910.4980.028
92China5.1911.0291.1250.8930.5210.0580.100
93Vietnam5.1750.7411.3460.8510.5430.1470.073
94Bhutan5.0820.8131.3210.6040.4570.3700.167
95Cameroon5.0440.5490.9100.3310.3810.1870.037
97Ghana4.9960.6110.8680.4860.3810.2450.040
99Nepal4.9130.4461.2260.6770.4390.2850.089
100Jordan4.9060.8371.2250.8150.3830.1100.130
101Benin4.8830.3930.4370.3970.3490.1750.082
102Congo (Brazzaville)4.8120.6730.7990.5080.3720.1050.093
103Gabon4.7991.0571.1830.5710.2950.0430.055
104Laos4.7960.7641.0300.5510.5470.2660.164
105South Africa4.7220.9601.3510.4690.3890.1300.055
106Albania4.7190.9470.8480.8740.3830.1780.027
107Venezuela4.7070.9601.4270.8050.1540.0640.047
108Cambodia4.7000.5741.1220.6370.6090.2320.062
109Palestinian Territories4.6960.6571.2470.6720.2250.1030.066
110Senegal4.6810.4501.1340.5710.2920.1530.072
112Namibia4.6390.8791.3130.4770.4010.0700.056
113Niger4.6280.1380.7740.3660.3180.1880.102
114Burkina Faso4.5870.3311.0560.3800.2550.1770.113
115Armenia4.5590.8501.0550.8150.2830.0950.064
116Iran4.5481.1000.8420.7850.3050.2700.125
118Georgia4.5190.8860.6660.7520.3460.0430.164
120Kenya4.5090.5120.9830.5810.4310.3720.053
121Mauritania4.4900.5701.1670.4890.0660.1060.088
122Mozambique4.4660.2040.9860.3900.4940.1970.138
123Tunisia4.4610.9211.0000.8150.1670.0590.055
124Bangladesh4.4560.5620.9280.7230.5270.1660.143
126Congo (Kinshasa)4.4180.0941.1250.3570.2690.2120.053
127Mali4.3900.3851.1050.3080.3270.1530.052
128Sierra Leone4.3740.2680.8410.2420.3090.2520.045
129Sri Lanka4.3660.9491.2650.8310.4700.2440.047
130Myanmar4.3600.7101.1810.5550.5250.5660.172
131Chad4.3500.3500.7660.1920.1740.1980.078
132Ukraine4.3320.8201.3900.7390.1780.1870.010
133Ethiopia4.2860.3361.0330.5320.3440.2090.100
135Uganda4.1890.3321.0690.4430.3560.2520.060
136Egypt4.1660.9131.0390.6440.2410.0760.067
137Zambia4.1070.5781.0580.4260.4310.2470.087
138Togo4.0850.2750.5720.4100.2930.1770.085
139India4.0150.7550.7650.5880.4980.2000.085
140Liberia3.9750.0730.9220.4430.3700.2330.033
141Comoros3.9730.2740.7570.5050.1420.2750.078
142Madagascar3.9330.2740.9160.5550.1480.1690.041
143Lesotho3.8020.4891.1690.1680.3590.1070.093
144Burundi3.7750.0460.4470.3800.2200.1760.180
145Zimbabwe3.6630.3661.1140.4330.3610.1510.089
146Haiti3.5970.3230.6880.4490.0260.4190.110
148Syria3.4620.6190.3780.4400.0130.3310.141
149Malawi3.4100.1910.5600.4950.4430.2180.089
150Yemen3.3800.2871.1630.4630.1430.1080.077
151Rwanda3.3340.3590.7110.6140.5550.2170.411
152Tanzania3.2310.4760.8850.4990.4170.2760.147
153Afghanistan3.2030.3500.5170.3610.0000.1580.025
154Central African Republic3.0830.0260.0000.1050.2250.2350.035
155South Sudan2.8530.3060.5750.2950.0100.2020.091
\n", - "
" - ], - "text/plain": [ - " Country Score Economy (GDP per Capita) \\\n", - "0 Finland 7.769 1.340 \n", - "1 Denmark 7.600 1.383 \n", - "2 Norway 7.554 1.488 \n", - "3 Iceland 7.494 1.380 \n", - "4 Netherlands 7.488 1.396 \n", - "5 Switzerland 7.480 1.452 \n", - "6 Sweden 7.343 1.387 \n", - "7 New Zealand 7.307 1.303 \n", - "8 Canada 7.278 1.365 \n", - "9 Austria 7.246 1.376 \n", - "10 Australia 7.228 1.372 \n", - "11 Costa Rica 7.167 1.034 \n", - "12 Israel 7.139 1.276 \n", - "13 Luxembourg 7.090 1.609 \n", - "14 United Kingdom 7.054 1.333 \n", - "15 Ireland 7.021 1.499 \n", - "16 Germany 6.985 1.373 \n", - "17 Belgium 6.923 1.356 \n", - "18 United States 6.892 1.433 \n", - "19 Czech Republic 6.852 1.269 \n", - "20 United Arab Emirates 6.825 1.503 \n", - "21 Malta 6.726 1.300 \n", - "22 Mexico 6.595 1.070 \n", - "23 France 6.592 1.324 \n", - "24 Taiwan 6.446 1.368 \n", - "25 Chile 6.444 1.159 \n", - "26 Guatemala 6.436 0.800 \n", - "27 Saudi Arabia 6.375 1.403 \n", - "28 Qatar 6.374 1.684 \n", - "29 Spain 6.354 1.286 \n", - "30 Panama 6.321 1.149 \n", - "31 Brazil 6.300 1.004 \n", - "32 Uruguay 6.293 1.124 \n", - "33 Singapore 6.262 1.572 \n", - "34 El Salvador 6.253 0.794 \n", - "35 Italy 6.223 1.294 \n", - "36 Bahrain 6.199 1.362 \n", - "37 Slovakia 6.198 1.246 \n", - "38 Trinidad & Tobago 6.192 1.231 \n", - "39 Poland 6.182 1.206 \n", - "40 Uzbekistan 6.174 0.745 \n", - "41 Lithuania 6.149 1.238 \n", - "42 Colombia 6.125 0.985 \n", - "43 Slovenia 6.118 1.258 \n", - "44 Nicaragua 6.105 0.694 \n", - "45 Kosovo 6.100 0.882 \n", - "46 Argentina 6.086 1.092 \n", - "47 Romania 6.070 1.162 \n", - "48 Cyprus 6.046 1.263 \n", - "49 Ecuador 6.028 0.912 \n", - "50 Kuwait 6.021 1.500 \n", - "51 Thailand 6.008 1.050 \n", - "52 Latvia 5.940 1.187 \n", - "53 South Korea 5.895 1.301 \n", - "54 Estonia 5.893 1.237 \n", - "55 Jamaica 5.890 0.831 \n", - "56 Mauritius 5.888 1.120 \n", - "57 Japan 5.886 1.327 \n", - "58 Honduras 5.860 0.642 \n", - "59 Kazakhstan 5.809 1.173 \n", - "60 Bolivia 5.779 0.776 \n", - "61 Hungary 5.758 1.201 \n", - "62 Paraguay 5.743 0.855 \n", - "63 Northern Cyprus 5.718 1.263 \n", - "64 Peru 5.697 0.960 \n", - "65 Portugal 5.693 1.221 \n", - "66 Pakistan 5.653 0.677 \n", - "67 Russia 5.648 1.183 \n", - "68 Philippines 5.631 0.807 \n", - "69 Serbia 5.603 1.004 \n", - "70 Moldova 5.529 0.685 \n", - "71 Libya 5.525 1.044 \n", - "72 Montenegro 5.523 1.051 \n", - "73 Tajikistan 5.467 0.493 \n", - "74 Croatia 5.432 1.155 \n", - "75 Hong Kong 5.430 1.438 \n", - "76 Dominican Republic 5.425 1.015 \n", - "77 Bosnia and Herzegovina 5.386 0.945 \n", - "78 Turkey 5.373 1.183 \n", - "79 Malaysia 5.339 1.221 \n", - "80 Belarus 5.323 1.067 \n", - "81 Greece 5.287 1.181 \n", - "82 Mongolia 5.285 0.948 \n", - "83 North Macedonia 5.274 0.983 \n", - "84 Nigeria 5.265 0.696 \n", - "85 Kyrgyzstan 5.261 0.551 \n", - "87 Algeria 5.211 1.002 \n", - "88 Morocco 5.208 0.801 \n", - "89 Azerbaijan 5.208 1.043 \n", - "90 Lebanon 5.197 0.987 \n", - "91 Indonesia 5.192 0.931 \n", - "92 China 5.191 1.029 \n", - "93 Vietnam 5.175 0.741 \n", - "94 Bhutan 5.082 0.813 \n", - "95 Cameroon 5.044 0.549 \n", - "97 Ghana 4.996 0.611 \n", - "99 Nepal 4.913 0.446 \n", - "100 Jordan 4.906 0.837 \n", - "101 Benin 4.883 0.393 \n", - "102 Congo (Brazzaville) 4.812 0.673 \n", - "103 Gabon 4.799 1.057 \n", - "104 Laos 4.796 0.764 \n", - "105 South Africa 4.722 0.960 \n", - "106 Albania 4.719 0.947 \n", - "107 Venezuela 4.707 0.960 \n", - "108 Cambodia 4.700 0.574 \n", - "109 Palestinian Territories 4.696 0.657 \n", - "110 Senegal 4.681 0.450 \n", - "112 Namibia 4.639 0.879 \n", - "113 Niger 4.628 0.138 \n", - "114 Burkina Faso 4.587 0.331 \n", - "115 Armenia 4.559 0.850 \n", - "116 Iran 4.548 1.100 \n", - "118 Georgia 4.519 0.886 \n", - "120 Kenya 4.509 0.512 \n", - "121 Mauritania 4.490 0.570 \n", - "122 Mozambique 4.466 0.204 \n", - "123 Tunisia 4.461 0.921 \n", - "124 Bangladesh 4.456 0.562 \n", - "126 Congo (Kinshasa) 4.418 0.094 \n", - "127 Mali 4.390 0.385 \n", - "128 Sierra Leone 4.374 0.268 \n", - "129 Sri Lanka 4.366 0.949 \n", - "130 Myanmar 4.360 0.710 \n", - "131 Chad 4.350 0.350 \n", - "132 Ukraine 4.332 0.820 \n", - "133 Ethiopia 4.286 0.336 \n", - "135 Uganda 4.189 0.332 \n", - "136 Egypt 4.166 0.913 \n", - "137 Zambia 4.107 0.578 \n", - "138 Togo 4.085 0.275 \n", - "139 India 4.015 0.755 \n", - "140 Liberia 3.975 0.073 \n", - "141 Comoros 3.973 0.274 \n", - "142 Madagascar 3.933 0.274 \n", - "143 Lesotho 3.802 0.489 \n", - "144 Burundi 3.775 0.046 \n", - "145 Zimbabwe 3.663 0.366 \n", - "146 Haiti 3.597 0.323 \n", - "148 Syria 3.462 0.619 \n", - "149 Malawi 3.410 0.191 \n", - "150 Yemen 3.380 0.287 \n", - "151 Rwanda 3.334 0.359 \n", - "152 Tanzania 3.231 0.476 \n", - "153 Afghanistan 3.203 0.350 \n", - "154 Central African Republic 3.083 0.026 \n", - "155 South Sudan 2.853 0.306 \n", - "\n", - " Social Support Health (Life Expectancy) Freedom Generosity \\\n", - "0 1.587 0.986 0.596 0.153 \n", - "1 1.573 0.996 0.592 0.252 \n", - "2 1.582 1.028 0.603 0.271 \n", - "3 1.624 1.026 0.591 0.354 \n", - "4 1.522 0.999 0.557 0.322 \n", - "5 1.526 1.052 0.572 0.263 \n", - "6 1.487 1.009 0.574 0.267 \n", - "7 1.557 1.026 0.585 0.330 \n", - "8 1.505 1.039 0.584 0.285 \n", - "9 1.475 1.016 0.532 0.244 \n", - "10 1.548 1.036 0.557 0.332 \n", - "11 1.441 0.963 0.558 0.144 \n", - "12 1.455 1.029 0.371 0.261 \n", - "13 1.479 1.012 0.526 0.194 \n", - "14 1.538 0.996 0.450 0.348 \n", - "15 1.553 0.999 0.516 0.298 \n", - "16 1.454 0.987 0.495 0.261 \n", - "17 1.504 0.986 0.473 0.160 \n", - "18 1.457 0.874 0.454 0.280 \n", - "19 1.487 0.920 0.457 0.046 \n", - "20 1.310 0.825 0.598 0.262 \n", - "21 1.520 0.999 0.564 0.375 \n", - "22 1.323 0.861 0.433 0.074 \n", - "23 1.472 1.045 0.436 0.111 \n", - "24 1.430 0.914 0.351 0.242 \n", - "25 1.369 0.920 0.357 0.187 \n", - "26 1.269 0.746 0.535 0.175 \n", - "27 1.357 0.795 0.439 0.080 \n", - "28 1.313 0.871 0.555 0.220 \n", - "29 1.484 1.062 0.362 0.153 \n", - "30 1.442 0.910 0.516 0.109 \n", - "31 1.439 0.802 0.390 0.099 \n", - "32 1.465 0.891 0.523 0.127 \n", - "33 1.463 1.141 0.556 0.271 \n", - "34 1.242 0.789 0.430 0.093 \n", - "35 1.488 1.039 0.231 0.158 \n", - "36 1.368 0.871 0.536 0.255 \n", - "37 1.504 0.881 0.334 0.121 \n", - "38 1.477 0.713 0.489 0.185 \n", - "39 1.438 0.884 0.483 0.117 \n", - "40 1.529 0.756 0.631 0.322 \n", - "41 1.515 0.818 0.291 0.043 \n", - "42 1.410 0.841 0.470 0.099 \n", - "43 1.523 0.953 0.564 0.144 \n", - "44 1.325 0.835 0.435 0.200 \n", - "45 1.232 0.758 0.489 0.262 \n", - "46 1.432 0.881 0.471 0.066 \n", - "47 1.232 0.825 0.462 0.083 \n", - "48 1.223 1.042 0.406 0.190 \n", - "49 1.312 0.868 0.498 0.126 \n", - "50 1.319 0.808 0.493 0.142 \n", - "51 1.409 0.828 0.557 0.359 \n", - "52 1.465 0.812 0.264 0.075 \n", - "53 1.219 1.036 0.159 0.175 \n", - "54 1.528 0.874 0.495 0.103 \n", - "55 1.478 0.831 0.490 0.107 \n", - "56 1.402 0.798 0.498 0.215 \n", - "57 1.419 1.088 0.445 0.069 \n", - "58 1.236 0.828 0.507 0.246 \n", - "59 1.508 0.729 0.410 0.146 \n", - "60 1.209 0.706 0.511 0.137 \n", - "61 1.410 0.828 0.199 0.081 \n", - "62 1.475 0.777 0.514 0.184 \n", - "63 1.252 1.042 0.417 0.191 \n", - "64 1.274 0.854 0.455 0.083 \n", - "65 1.431 0.999 0.508 0.047 \n", - "66 0.886 0.535 0.313 0.220 \n", - "67 1.452 0.726 0.334 0.082 \n", - "68 1.293 0.657 0.558 0.117 \n", - "69 1.383 0.854 0.282 0.137 \n", - "70 1.328 0.739 0.245 0.181 \n", - "71 1.303 0.673 0.416 0.133 \n", - "72 1.361 0.871 0.197 0.142 \n", - "73 1.098 0.718 0.389 0.230 \n", - "74 1.266 0.914 0.296 0.119 \n", - "75 1.277 1.122 0.440 0.258 \n", - "76 1.401 0.779 0.497 0.113 \n", - "77 1.212 0.845 0.212 0.263 \n", - "78 1.360 0.808 0.195 0.083 \n", - "79 1.171 0.828 0.508 0.260 \n", - "80 1.465 0.789 0.235 0.094 \n", - "81 1.156 0.999 0.067 0.000 \n", - "82 1.531 0.667 0.317 0.235 \n", - "83 1.294 0.838 0.345 0.185 \n", - "84 1.111 0.245 0.426 0.215 \n", - "85 1.438 0.723 0.508 0.300 \n", - "87 1.160 0.785 0.086 0.073 \n", - "88 0.782 0.782 0.418 0.036 \n", - "89 1.147 0.769 0.351 0.035 \n", - "90 1.224 0.815 0.216 0.166 \n", - "91 1.203 0.660 0.491 0.498 \n", - "92 1.125 0.893 0.521 0.058 \n", - "93 1.346 0.851 0.543 0.147 \n", - "94 1.321 0.604 0.457 0.370 \n", - "95 0.910 0.331 0.381 0.187 \n", - "97 0.868 0.486 0.381 0.245 \n", - "99 1.226 0.677 0.439 0.285 \n", - "100 1.225 0.815 0.383 0.110 \n", - "101 0.437 0.397 0.349 0.175 \n", - "102 0.799 0.508 0.372 0.105 \n", - "103 1.183 0.571 0.295 0.043 \n", - "104 1.030 0.551 0.547 0.266 \n", - "105 1.351 0.469 0.389 0.130 \n", - "106 0.848 0.874 0.383 0.178 \n", - "107 1.427 0.805 0.154 0.064 \n", - "108 1.122 0.637 0.609 0.232 \n", - "109 1.247 0.672 0.225 0.103 \n", - "110 1.134 0.571 0.292 0.153 \n", - "112 1.313 0.477 0.401 0.070 \n", - "113 0.774 0.366 0.318 0.188 \n", - "114 1.056 0.380 0.255 0.177 \n", - "115 1.055 0.815 0.283 0.095 \n", - "116 0.842 0.785 0.305 0.270 \n", - "118 0.666 0.752 0.346 0.043 \n", - "120 0.983 0.581 0.431 0.372 \n", - "121 1.167 0.489 0.066 0.106 \n", - "122 0.986 0.390 0.494 0.197 \n", - "123 1.000 0.815 0.167 0.059 \n", - "124 0.928 0.723 0.527 0.166 \n", - "126 1.125 0.357 0.269 0.212 \n", - "127 1.105 0.308 0.327 0.153 \n", - "128 0.841 0.242 0.309 0.252 \n", - "129 1.265 0.831 0.470 0.244 \n", - "130 1.181 0.555 0.525 0.566 \n", - "131 0.766 0.192 0.174 0.198 \n", - "132 1.390 0.739 0.178 0.187 \n", - "133 1.033 0.532 0.344 0.209 \n", - "135 1.069 0.443 0.356 0.252 \n", - "136 1.039 0.644 0.241 0.076 \n", - "137 1.058 0.426 0.431 0.247 \n", - "138 0.572 0.410 0.293 0.177 \n", - "139 0.765 0.588 0.498 0.200 \n", - "140 0.922 0.443 0.370 0.233 \n", - "141 0.757 0.505 0.142 0.275 \n", - "142 0.916 0.555 0.148 0.169 \n", - "143 1.169 0.168 0.359 0.107 \n", - "144 0.447 0.380 0.220 0.176 \n", - "145 1.114 0.433 0.361 0.151 \n", - "146 0.688 0.449 0.026 0.419 \n", - "148 0.378 0.440 0.013 0.331 \n", - "149 0.560 0.495 0.443 0.218 \n", - "150 1.163 0.463 0.143 0.108 \n", - "151 0.711 0.614 0.555 0.217 \n", - "152 0.885 0.499 0.417 0.276 \n", - "153 0.517 0.361 0.000 0.158 \n", - "154 0.000 0.105 0.225 0.235 \n", - "155 0.575 0.295 0.010 0.202 \n", - "\n", - " Perception of Corruption \n", - "0 0.393 \n", - "1 0.410 \n", - "2 0.341 \n", - "3 0.118 \n", - "4 0.298 \n", - "5 0.343 \n", - "6 0.373 \n", - "7 0.380 \n", - "8 0.308 \n", - "9 0.226 \n", - "10 0.290 \n", - "11 0.093 \n", - "12 0.082 \n", - "13 0.316 \n", - "14 0.278 \n", - "15 0.310 \n", - "16 0.265 \n", - "17 0.210 \n", - "18 0.128 \n", - "19 0.036 \n", - "20 0.182 \n", - "21 0.151 \n", - "22 0.073 \n", - "23 0.183 \n", - "24 0.097 \n", - "25 0.056 \n", - "26 0.078 \n", - "27 0.132 \n", - "28 0.167 \n", - "29 0.079 \n", - "30 0.054 \n", - "31 0.086 \n", - "32 0.150 \n", - "33 0.453 \n", - "34 0.074 \n", - "35 0.030 \n", - "36 0.110 \n", - "37 0.014 \n", - "38 0.016 \n", - "39 0.050 \n", - "40 0.240 \n", - "41 0.042 \n", - "42 0.034 \n", - "43 0.057 \n", - "44 0.127 \n", - "45 0.006 \n", - "46 0.050 \n", - "47 0.005 \n", - "48 0.041 \n", - "49 0.087 \n", - "50 0.097 \n", - "51 0.028 \n", - "52 0.064 \n", - "53 0.056 \n", - "54 0.161 \n", - "55 0.028 \n", - "56 0.060 \n", - "57 0.140 \n", - "58 0.078 \n", - "59 0.096 \n", - "60 0.064 \n", - "61 0.020 \n", - "62 0.080 \n", - "63 0.162 \n", - "64 0.027 \n", - "65 0.025 \n", - "66 0.098 \n", - "67 0.031 \n", - "68 0.107 \n", - "69 0.039 \n", - "70 0.000 \n", - "71 0.152 \n", - "72 0.080 \n", - "73 0.144 \n", - "74 0.022 \n", - "75 0.287 \n", - "76 0.101 \n", - "77 0.006 \n", - "78 0.106 \n", - "79 0.024 \n", - "80 0.142 \n", - "81 0.034 \n", - "82 0.038 \n", - "83 0.034 \n", - "84 0.041 \n", - "85 0.023 \n", - "87 0.114 \n", - "88 0.076 \n", - "89 0.182 \n", - "90 0.027 \n", - "91 0.028 \n", - "92 0.100 \n", - "93 0.073 \n", - "94 0.167 \n", - "95 0.037 \n", - "97 0.040 \n", - "99 0.089 \n", - "100 0.130 \n", - "101 0.082 \n", - "102 0.093 \n", - "103 0.055 \n", - "104 0.164 \n", - "105 0.055 \n", - "106 0.027 \n", - "107 0.047 \n", - "108 0.062 \n", - "109 0.066 \n", - "110 0.072 \n", - "112 0.056 \n", - "113 0.102 \n", - "114 0.113 \n", - "115 0.064 \n", - "116 0.125 \n", - "118 0.164 \n", - "120 0.053 \n", - "121 0.088 \n", - "122 0.138 \n", - "123 0.055 \n", - "124 0.143 \n", - "126 0.053 \n", - "127 0.052 \n", - "128 0.045 \n", - "129 0.047 \n", - "130 0.172 \n", - "131 0.078 \n", - "132 0.010 \n", - "133 0.100 \n", - "135 0.060 \n", - "136 0.067 \n", - "137 0.087 \n", - "138 0.085 \n", - "139 0.085 \n", - "140 0.033 \n", - "141 0.078 \n", - "142 0.041 \n", - "143 0.093 \n", - "144 0.180 \n", - "145 0.089 \n", - "146 0.110 \n", - "148 0.141 \n", - "149 0.089 \n", - "150 0.077 \n", - "151 0.411 \n", - "152 0.147 \n", - "153 0.025 \n", - "154 0.035 \n", - "155 0.091 " - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Rename the columns to make it more easy to understand\n", - "\n", - "happiness = happiness.rename(columns = {'Overall rank': 'Rank', 'Country or region': 'Country', \n", - " 'GDP per capita': 'Economy (GDP per Capita)', 'Social support': 'Social Support', \n", - " 'Healthy life expectancy': 'Health (Life Expectancy)', \n", - " 'Freedom to make life choices': 'Freedom',\n", - " 'Perceptions of corruption': 'Perception of Corruption'})\n", - "\n", - "#cleaning null value and inconsistent data\n", - "happiness.drop(index=86,axis=0 , inplace=True)\n", - "happiness.drop(index=96,axis=0 , inplace=True)\n", - "happiness.drop(index=98,axis=0 , inplace=True)\n", - "happiness.drop(index=111,axis=0 , inplace=True)\n", - "happiness.drop(index=117,axis=0 , inplace=True)\n", - "happiness.drop(index=119,axis=0 , inplace=True)\n", - "happiness.drop(index=125,axis=0 , inplace=True)\n", - "happiness.drop(index=134,axis=0 , inplace=True)\n", - "happiness.drop(index=147,axis=0 , inplace=True)\n", - "\n", - "# Dropping the unimportant columns\n", - "\n", - "happiness.drop(['Rank'], axis = 1)" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "number of dyplicate rows: (0, 9)\n" - ] - } - ], - "source": [ - "# Checking if the rows containing any duplicate data or not\n", - "\n", - "duplicate_rows_happiness = happiness[happiness.duplicated()]\n", - "print(\"number of dyplicate rows: \", duplicate_rows_happiness.shape)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Rank 0\n", - "Country 0\n", - "Score 0\n", - "Economy (GDP per Capita) 0\n", - "Social Support 0\n", - "Health (Life Expectancy) 0\n", - "Freedom 0\n", - "Generosity 0\n", - "Perception of Corruption 0\n", - "dtype: int64\n" - ] - } - ], - "source": [ - "# Find the null values.\n", - "\n", - "print(happiness.isnull().sum())" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Rank 147\n", - "Country 147\n", - "Score 147\n", - "Economy (GDP per Capita) 147\n", - "Social Support 147\n", - "Health (Life Expectancy) 147\n", - "Freedom 147\n", - "Generosity 147\n", - "Perception of Corruption 147\n", - "dtype: int64" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Drop the missing values.\n", - "happiness = happiness.dropna() \n", - "happiness.count()" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Rank 0\n", - "Country 0\n", - "Score 0\n", - "Economy (GDP per Capita) 0\n", - "Social Support 0\n", - "Health (Life Expectancy) 0\n", - "Freedom 0\n", - "Generosity 0\n", - "Perception of Corruption 0\n", - "dtype: int64\n" - ] - } - ], - "source": [ - "# After dropping the values\n", - "\n", - "print(happiness.isnull().sum())" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "R2: 0.5694117211173655\n" - ] - } - ], - "source": [ - "# Decision Tree Regression\n", - "\n", - "x = pd.DataFrame(np.c_[happiness['Economy (GDP per Capita)'], happiness['Social Support'], happiness['Health (Life Expectancy)']], \n", - " columns = ['Economy (GDP per Capita)','Social Support','Health (Life Expectancy)'])\n", - "y = happiness['Score']\n", - "\n", - "# split the data using train_test_split\n", - "from sklearn.model_selection import train_test_split\n", - "x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.2, random_state=42)\n", - "\n", - "# build the model\n", - "from sklearn.tree import DecisionTreeRegressor\n", - "regressor = DecisionTreeRegressor()\n", - "\n", - "# Fitting Decision Tree Regression into dataset\n", - "regressor.fit(x_train, y_train)\n", - "\n", - "y_pred = regressor.predict(x_test)\n", - "\n", - "# test the accuracy/performance measurement using R2\n", - "print('R2: ', regressor.score(x_test, y_test))" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Real ValuesPredicted Values
1324.3325.261
516.0085.523
1463.5974.085
196.8526.118
1074.7076.125
127.1396.223
765.4255.523
316.3006.125
815.2875.339
97.2466.985
266.4366.253
994.9135.779
1523.2314.996
675.6485.888
1423.9334.286
665.6534.996
186.8926.825
695.6036.125
1314.3504.374
306.3216.293
296.3546.223
1084.7004.166
366.1996.446
1244.4565.208
555.8905.743
226.5955.523
645.6975.386
1413.9734.286
825.2854.696
117.1675.323
\n", - "
" - ], - "text/plain": [ - " Real Values Predicted Values\n", - "132 4.332 5.261\n", - "51 6.008 5.523\n", - "146 3.597 4.085\n", - "19 6.852 6.118\n", - "107 4.707 6.125\n", - "12 7.139 6.223\n", - "76 5.425 5.523\n", - "31 6.300 6.125\n", - "81 5.287 5.339\n", - "9 7.246 6.985\n", - "26 6.436 6.253\n", - "99 4.913 5.779\n", - "152 3.231 4.996\n", - "67 5.648 5.888\n", - "142 3.933 4.286\n", - "66 5.653 4.996\n", - "18 6.892 6.825\n", - "69 5.603 6.125\n", - "131 4.350 4.374\n", - "30 6.321 6.293\n", - "29 6.354 6.223\n", - "108 4.700 4.166\n", - "36 6.199 6.446\n", - "124 4.456 5.208\n", - "55 5.890 5.743\n", - "22 6.595 5.523\n", - "64 5.697 5.386\n", - "141 3.973 4.286\n", - "82 5.285 4.696\n", - "11 7.167 5.323" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "df = pd.DataFrame({'Real Values':y_test, 'Predicted Values':y_pred})\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Visualising the Decision Tree Regression Results \n", - "\n", - "X_grid = np.arange(0, 10)\n", - "X_grid = X_grid.reshape((len(X_grid), 1))\n", - "plt.scatter(y_pred, y_test)\n", - "plt.title('Decision Tree Regression')\n", - "plt.xlabel('Predicted Score')\n", - "plt.ylabel('Score')\n", - "plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0.5222810333333335" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from sklearn import metrics\n", - "mse = metrics.mean_squared_error(y_test, y_pred)\n", - "mse" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "mean in first_cv_scores is -0.87 and in second_cv_scores is -0.68\n" - ] - } - ], - "source": [ - "# k-fold cross validation of decision tree regression\n", - "\n", - "from sklearn.model_selection import cross_val_score\n", - "regressor = DecisionTreeRegressor()\n", - "\n", - "first_cv_scores = cross_val_score(regressor, x, y, cv=5, scoring='neg_mean_squared_error')\n", - "second_cv_scores = cross_val_score(regressor, x, y, cv=10, scoring='neg_mean_squared_error')\n", - "print('mean in first_cv_scores is {0:.2f} and in second_cv_scores is {1:.2f}'.format(np.mean\n", - "(first_cv_scores),\n", - " np.mean\n", - "(second_cv_scores)))\n", - "\n", - "# neg_mean_squared_error is better when close to 0.0" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.5" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} From 28f0c826a7b72739d14fb66ce2887b81d6fa6d27 Mon Sep 17 00:00:00 2001 From: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Date: Sun, 29 Aug 2021 05:38:19 +0000 Subject: [PATCH 08/12] updating DIRECTORY.md --- DIRECTORY.md | 1 - 1 file changed, 1 deletion(-) diff --git a/DIRECTORY.md b/DIRECTORY.md index 649c8ca..4b32606 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -16,7 +16,6 @@ * [Dbscan](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/dbscan/dbscan.ipynb) * [Dbscan](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/dbscan/dbscan.py) * Decision Tree With K-Fold Cross Validation - * [K-Fold-Cross Validation Of Decision Tree Regression](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree%20with%20k-fold%20cross%20validation/k-fold-cross%20validation%20of%20decision%20tree%20regression.ipynb) * [K-Fold-Cross Validation Of Decision Tree Regression2](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree%20with%20k-fold%20cross%20validation/k-fold-cross%20validation%20of%20decision%20tree%20regression2.ipynb) * Decision Tree * [Decision Tree](https://github.com/TheAlgorithms/Jupyter/blob/master/machine_learning/Decision%20tree/Decision_Tree.ipynb) From 1adff0381b59935d17abfdb5d436ae4600014589 Mon Sep 17 00:00:00 2001 From: kunyaw12 Date: Sun, 29 Aug 2021 14:54:45 +0800 Subject: [PATCH 09/12] Add First Unique Character to machine learning --- First Unique Character.txt | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 First Unique Character.txt diff --git a/First Unique Character.txt b/First Unique Character.txt new file mode 100644 index 0000000..43ee638 --- /dev/null +++ b/First Unique Character.txt @@ -0,0 +1,38 @@ +# Given a string, find the first non-repeating character in it and return its index. +# If it doesn't exist, return -1. # Note: all the input strings are already lowercase. + +#Approach 1 +def solution(s): + frequency = {} + for i in s: + if i not in frequency: + frequency[i] = 1 + else: + frequency[i] +=1 + for i in range(len(s)): + if frequency[s[i]] == 1: + return i + return -1 + +print(solution('alphabet')) +print(solution('barbados')) +print(solution('crunchy')) + +print('###') + +#Approach 2 +import collections + +def solution(s): + # build hash map : character and how often it appears + count = collections.Counter(s) # <-- gives back a dictionary with words occurrence count + #Counter({'l': 1, 'e': 3, 't': 1, 'c': 1, 'o': 1, 'd': 1}) + # find the index + for idx, ch in enumerate(s): + if count[ch] == 1: + return idx + return -1 + +print(solution('alphabet')) +print(solution('barbados')) +print(solution('crunchy')) \ No newline at end of file From c77fa75465f22df56a99f28ccd5ba391c60fc7be Mon Sep 17 00:00:00 2001 From: kunyaw12 Date: Sun, 29 Aug 2021 15:15:28 +0800 Subject: [PATCH 10/12] Add First Unique Character into machine learning --- First Unique Character.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/First Unique Character.txt b/First Unique Character.txt index 43ee638..8930fd8 100644 --- a/First Unique Character.txt +++ b/First Unique Character.txt @@ -1,3 +1,4 @@ +#First Unique Character # Given a string, find the first non-repeating character in it and return its index. # If it doesn't exist, return -1. # Note: all the input strings are already lowercase. From fe887cdea49fbe9004e27f840de356e35ce66ba2 Mon Sep 17 00:00:00 2001 From: kunyaw12 Date: Sun, 29 Aug 2021 15:42:34 +0800 Subject: [PATCH 11/12] Add First Unique Character ta machine learning --- First Unique Character.txt | 39 -------------------------------------- 1 file changed, 39 deletions(-) diff --git a/First Unique Character.txt b/First Unique Character.txt index 8930fd8..e69de29 100644 --- a/First Unique Character.txt +++ b/First Unique Character.txt @@ -1,39 +0,0 @@ -#First Unique Character -# Given a string, find the first non-repeating character in it and return its index. -# If it doesn't exist, return -1. # Note: all the input strings are already lowercase. - -#Approach 1 -def solution(s): - frequency = {} - for i in s: - if i not in frequency: - frequency[i] = 1 - else: - frequency[i] +=1 - for i in range(len(s)): - if frequency[s[i]] == 1: - return i - return -1 - -print(solution('alphabet')) -print(solution('barbados')) -print(solution('crunchy')) - -print('###') - -#Approach 2 -import collections - -def solution(s): - # build hash map : character and how often it appears - count = collections.Counter(s) # <-- gives back a dictionary with words occurrence count - #Counter({'l': 1, 'e': 3, 't': 1, 'c': 1, 'o': 1, 'd': 1}) - # find the index - for idx, ch in enumerate(s): - if count[ch] == 1: - return idx - return -1 - -print(solution('alphabet')) -print(solution('barbados')) -print(solution('crunchy')) \ No newline at end of file From 79181a1ff392c0735129c1f363b8f7b0c72622de Mon Sep 17 00:00:00 2001 From: kunyaw12 Date: Sun, 29 Aug 2021 15:46:57 +0800 Subject: [PATCH 12/12] Add First Unique Character ta machine learning --- First Unique Character.txt | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/First Unique Character.txt b/First Unique Character.txt index e69de29..43ee638 100644 --- a/First Unique Character.txt +++ b/First Unique Character.txt @@ -0,0 +1,38 @@ +# Given a string, find the first non-repeating character in it and return its index. +# If it doesn't exist, return -1. # Note: all the input strings are already lowercase. + +#Approach 1 +def solution(s): + frequency = {} + for i in s: + if i not in frequency: + frequency[i] = 1 + else: + frequency[i] +=1 + for i in range(len(s)): + if frequency[s[i]] == 1: + return i + return -1 + +print(solution('alphabet')) +print(solution('barbados')) +print(solution('crunchy')) + +print('###') + +#Approach 2 +import collections + +def solution(s): + # build hash map : character and how often it appears + count = collections.Counter(s) # <-- gives back a dictionary with words occurrence count + #Counter({'l': 1, 'e': 3, 't': 1, 'c': 1, 'o': 1, 'd': 1}) + # find the index + for idx, ch in enumerate(s): + if count[ch] == 1: + return idx + return -1 + +print(solution('alphabet')) +print(solution('barbados')) +print(solution('crunchy')) \ No newline at end of file