In [20]:
# tmp
!git commit -am 'notebook structure'
!git push
[master 6f52d7a] notebook structure
2 files changed, 264 insertions(+), 6 deletions(-)
create mode 100644 task.md
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 1.78 KiB | 0 bytes/s, done.
Total 3 (delta 1), reused 0 (delta 0)
To git@github.com:Djabbz/epidemium_ramp01_startingkit.git
49fc817..6f52d7a master -> master
In [1]:
from IPython.display import Markdown
Djalel Benbouzid, Edouard Debonneuil
In [2]:
Markdown(open('intro.md').read())
Out[2]:
Intro goes here.
The easiest : https://www.continuum.io/downloads
In [3]:
Markdown(open('desc.md').read())
Out[3]:
In [4]:
!touch task.md
In [5]:
Markdown(open('task.md').read())
Out[5]:
In [6]:
%matplotlib inline
In [7]:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()
In [8]:
pd.set_option('display.max_columns', None)
In [ ]:
In [15]:
class FeatureExtractor(object):
def __init__(self):
pass
def fit(self, X_df, y_array):
pass
def transform(self, X):
return X
In [17]:
from sklearn.base import BaseEstimator
In [2]:
from sklearn.cross_validation import train_test_split
In [3]:
from sklearn.linear_model import LinearRegression
from sklearn.cross_validation import cross_val_score, ShuffleSplit
In [18]:
class Regressor(BaseEstimator):
def __init__(self):
self.clf = RandomForestRegressor(n_estimators=10, max_depth=10, max_features=10)
def fit(self, X, y):
self.clf.fit(X, y)
def predict(self, X):
return self.clf.predict(X)
In [ ]:
In [32]:
df = pd.read_excel('XYworld_mini.xlsx', skiprows=1)
In [33]:
df.head()
Out[33]:
Unnamed: 0
Unnamed: 1
Unnamed: 2
Unnamed: 3
All cancers (C00-97,B21)
All cancers but lung (C00-97/C33-34)
Bladder (C67)
Brain, central nervous system (C70-72)
Breast (C50)
Cervix uteri (C53)
Colon (C18)
Colon, rectum and anus (C18-21)
Corpus uteri (C54)
Gallbladder (C23-24)
Hodgkin lymphoma (C81)
Intestine (C17-21)
Kidney (C64)
Larynx (C32)
Leukaemia (C91-95)
Lip, oral cavity and pharynx (C00-14)
Lip, oral cavity, pharynx, larynx and oesophagus (C00-15,C32)
Liver (C22)
Lung (C33-34)
Melanoma of skin (C43)
Mesothelioma (C45)
Multiple myeloma (C88+C90)
Nasopharynx (C11)
Non-Hodgkin lymphoma (C82-85,C96)
Oesophagus (C15)
Ovary (C56)
Pancreas (C25)
Prostate (C61)
Rectum and anus (C19-21)
Stomach (C16)
Testis (C62)
Thyroid (C73)
country1
country2
age
asbestos_emission
asbestos_production
arsenic_emission
arsenic_concentration
beryllium_emission
cadmium_emission
cadmium_intake
cadmium_concentration_cortex
cadmium_concentration_soil
cadmium_export
chromium_emission
chromium_concentration
crystalline_silica_concentration
hexavalent_chromium_compounds
nickel_emission
nickel_concentration
thorium_deposit
thorium_concentration
metal_water_concentration
copper_emission
mercury_emission
lead_emission
pm10_emission
pm2.5_emission
so2_emission
nmvok_emission
tsp_emission
nox_emission
benzo(a)pyren_emission
benzo(b)fluoranthen_emission
benzo(k)fluoranthen_emission
Indeno(1|2|3-cd)pyren_emission
pah_emission
pcb_emission
dioxin_emission
hcb_emission
aspartame_consumption
no_sugar
fluoride_consumption
vitamine_D_summer
vitamine_D_winter
black_tea_consumption
dietary_characteristics_fat
dietary_characteristics_cholesterol
dietary_characteristics_proteins
dietary_characteristics_vitamine_A
dietary_characteristics_vitamine_D
dietary_characteristics_vitamine_E
dietary_characteristics_vitamine_B1
dietary_characteristics_vitamine_B2
dietary_characteristics_vitamine_B6
dietary_characteristics_vitamine_B12
dietary_characteristics_vitamine_C
dietary_characteristics_iodine
dietary_characteristics_calcis
dietary_characteristics_fruit_2_3
dietary_characteristics_fruit_3_4
dietary_characteristics_fruit_4_5
dietary_characteristics_fruit_5+
dietary_characteristics_fruit_0
dietary_characteristics_fruit_0_1
dietary_characteristics_fruit_1_2
dietary_characteristics_fruit_2_3.1
dietary_characteristics_fruit_3_4.1
dietary_characteristics_fruit_4_5.1
dietary_characteristics_fruit_5+.1
dietary_characteristics_fruit_0_4
dietary_characteristics_fruit
dietary_characteristics_fats
dietary_characteristics_cereals_bread
dietary_characteristics_vegetables
dietary_characteristics_potatoes
dietary_characteristics_meat
dietary_characteristics_fish
dietary_characteristics_eggs
dietary_characteristics_cheese_milk
dietary_characteristics_alcohol
dietary_characteristics_soup
dietary_characteristics_confectionery
dietary_characteristics_snacks
dietary_characteristics_coffee_tea
cholesterol_prevalence
transplants_donation
transplants_prevalence
liver_transplant_prevalence
HIV
HPV_vacc_3
HPV_vacc_1+
HPV_vacc_2+
HPV_vacc_3+
HPV
HCV
HBV
HAV
leukemia
hhv8
diphteria_vacc
tetanus_vacc
pertussis_vacc
hib_vacc
polio_vacc
hepb_vacc
measles_vacc_1
measles_vacc_2
mumps_vacc_1
mumps_vacc_2
rubella_vacc_1
rubella_vacc_2
varicella_vacc_1
varicella_vacc_2
menC_vacc
pneumo_vacc
radon_level
radon_high
uv_radiation
x_rays
gamma_rays
smoker_prevlence
past_smoker_prevalence
no_smoker_prevalence
smoking_20+cigarets
smoking_10_19cigarets
smoking_10-cigarets
past_smoker_prevalence.1
occasion_smoker_prevalence
ever_smoker_prevalence
smoker_prevalence
alcool_prevalence_beer
alcool_prevalence_wine
alcool_consumption
alcool_consumption_beer
alcool_consumption_wine
alcool_consumption_spirit
alcool_death
drugs_opiates
drugs_crack
drugs_inject
overweight
bmi_score
bmi_18.5-
bmi_18.5_25
bmi_25_30
bmi_30+
aluminium_production
aluminium_water_concentration
benzene_emission
benzene_air_concentration
butadiene_emission
butadiene_air_concentration
ethylene_emission
formaldehyde_emission
formaldehyde_water_concentration
sulfuric_acid_emission
vinyl_chlorid_emission
vinyl_chlorid_water_concentration
iso_9001
iso_14001
iso/iec_27001
iso_50001
iso_13485
iso_22000
mobile_subscription
pork_consumption
chicken_consumption
beef_consumption
adolescent_birth
income
race_white
race_mixed
race_asian
race_black
race_other
height
first_birth
never_birth
coke_ovens_co2_emission
sintering_co2_emission
blast_furnaces_co2_emission
oxygen_furnaces_co2_emission
flared_gases_co2_emission
combustion_plant_co2_emission
fuels_sold_co2_emission
poverty_prevalence
poverty_prevalence_1person_household
poverty_prevalence_4person_household
pap_test
mammogram
sigmoidoscopy
no_exercise
pneumonia_vacc
flu_vacc
blood_pressure
diabetes
uninsured
first_birth_age
shale_oil
fastfood_spending
menarche_age
first_menstruation_age
coal_to_electricity
gas_to_electricity
nuclear_to_electricity
renewable_to_electricity
other_to_electricity
0
NaN
Albania
2013
Male
0.00
0.00
0.00
0.0
0
0
0.0
0.0
0
0.0
0.0
0.00
0.00
0.00
0.0
0.00
0.00
0.00
0.0
0.00
0.0
0.0
0.00
0.0
0.0
0
0.00
0.00
0
0.0
0.00
0.0
Albania
Albania2013
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
9961
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
1
NaN
Argentina
2013
Male
0.00
0.00
0.00
0.0
0
0
0.0
0.0
0
0.0
0.0
0.00
0.00
0.00
0.0
0.00
0.00
0.00
0.0
0.00
0.0
0.0
0.00
0.0
0.0
0
0.00
0.00
0
0.0
0.00
0.0
Argentina
Argentina2013
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
17629
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
2
NaN
Armenia
2013
Male
0.00
0.00
0.00
0.0
0
0
0.0
0.0
0
0.0
0.0
0.00
0.00
0.00
0.0
0.00
0.00
0.00
0.0
0.00
0.0
0.0
0.00
0.0
0.0
0
0.00
0.00
0
0.0
0.00
0.0
Armenia
Armenia2013
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
7527
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
3
NaN
Australia
2013
Male
0.00
0.00
0.00
0.0
0
0
0.0
0.0
0
0.0
0.0
0.00
0.00
0.00
0.0
0.00
0.00
0.00
0.0
0.00
0.0
0.0
0.00
0.0
0.0
0
0.00
0.00
0
0.0
0.00
0.0
Australia
Australia2013
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
42840
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
4
NaN
Austria
2013
Male
12200.65
9281.95
314.25
421.3
0
0
749.2
1230.6
0
143.7
22.2
1262.75
241.45
162.85
466.9
447.65
976.45
719.55
2918.6
258.15
89.6
207.9
23.75
333.6
366.1
0
830.95
1032.95
481
548.4
27.15
34.5
Austria
Austria2013
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
44059
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
NaN
In [34]:
df.shape
Out[34]:
(4420, 243)
In [48]:
n
Out[48]:
array([ nan, 0.])
In [56]:
((n == 0.))# or (np.isnan(n)))
Out[56]:
array([False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False, False, False, False, False, False,
False, False, False, False], dtype=bool)
In [52]:
for i in range(df.shape[1]):
n = df.iloc[:,i].unique()
print(df.columns[i][:5], ' |', n.size, '\t', end='')
if True or n.size < 10:
if ((n == 0.) or (np.isnan(n))).all():
continue
for j in n[:7]:
print(' |', j, end='')
print('')
Unnam | 1 Unnam | 85
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-52-6eb3adfae28b> in <module>()
3 print(df.columns[i][:5], ' |', n.size, '\t', end='')
4 if True or n.size < 10:
----> 5 if ((n == 0.) or (np.isnan(n))).all():
6 continue
7 for j in n[:7]:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
In [44]:
df.country2
Out[44]:
0 Albania2013
1 Argentina2013
2 Armenia2013
3 Australia2013
4 Austria2013
5 Azerbaijan2013
6 Barbados2013
7 Belarus2013
8 Belgium2013
9 Belize2013
10 Brazil2013
11 Bulgaria2013
12 Canada2013
13 Chile2013
14 #2013
15 #2013
16 #2013
17 #2013
18 Colombia2013
19 Costa Rica2013
20 Croatia2013
21 Cuba2013
22 Czech rep.2013
23 Denmark2013
24 Dominican rep.2013
25 Ecuador2013
26 Egypt2013
27 El Salvador2013
28 Estonia2013
29 Finland2013
...
4390 NaN
4391 NaN
4392 NaN
4393 NaN
4394 NaN
4395 NaN
4396 NaN
4397 NaN
4398 NaN
4399 NaN
4400 NaN
4401 NaN
4402 NaN
4403 NaN
4404 NaN
4405 NaN
4406 NaN
4407 NaN
4408 NaN
4409 NaN
4410 NaN
4411 NaN
4412 NaN
4413 NaN
4414 NaN
4415 NaN
4416 NaN
4417 NaN
4418 NaN
4419 NaN
Name: country2, dtype: object
In [43]:
df.country2.str.extract('([A-Za-z_-]+)(\d+)')
Out[43]:
0
1
0
Albania
2013
1
Argentina
2013
2
Armenia
2013
3
Australia
2013
4
Austria
2013
5
Azerbaijan
2013
6
Barbados
2013
7
Belarus
2013
8
Belgium
2013
9
Belize
2013
10
Brazil
2013
11
Bulgaria
2013
12
Canada
2013
13
Chile
2013
14
NaN
NaN
15
NaN
NaN
16
NaN
NaN
17
NaN
NaN
18
Colombia
2013
19
Rica
2013
20
Croatia
2013
21
Cuba
2013
22
NaN
NaN
23
Denmark
2013
24
NaN
NaN
25
Ecuador
2013
26
Egypt
2013
27
Salvador
2013
28
Estonia
2013
29
Finland
2013
...
...
...
4390
NaN
NaN
4391
NaN
NaN
4392
NaN
NaN
4393
NaN
NaN
4394
NaN
NaN
4395
NaN
NaN
4396
NaN
NaN
4397
NaN
NaN
4398
NaN
NaN
4399
NaN
NaN
4400
NaN
NaN
4401
NaN
NaN
4402
NaN
NaN
4403
NaN
NaN
4404
NaN
NaN
4405
NaN
NaN
4406
NaN
NaN
4407
NaN
NaN
4408
NaN
NaN
4409
NaN
NaN
4410
NaN
NaN
4411
NaN
NaN
4412
NaN
NaN
4413
NaN
NaN
4414
NaN
NaN
4415
NaN
NaN
4416
NaN
NaN
4417
NaN
NaN
4418
NaN
NaN
4419
NaN
NaN
4420 rows × 2 columns
In [49]:
df.columns
Out[49]:
Index(['Unnamed: 0', 'Unnamed: 1', 'Unnamed: 2', 'Unnamed: 3',
'All cancers (C00-97,B21)', 'All cancers but lung (C00-97/C33-34)',
'Bladder (C67)', 'Brain, central nervous system (C70-72)',
'Breast (C50)', 'Cervix uteri (C53)',
...
'first_birth_age', 'shale_oil', 'fastfood_spending', 'menarche_age',
'first_menstruation_age', 'coal_to_electricity', 'gas_to_electricity',
'nuclear_to_electricity', 'renewable_to_electricity',
'other_to_electricity'],
dtype='object', length=243)
In [ ]:
Content source: Djabbz/epidemium_ramp01_startingkit
Similar notebooks: