Commits

Miki Tebeka committed 892673b

death

  • Participants
  • Parent commits 3166157

Comments (0)

Files changed (3)

 ax.scatter(female['Height'], female['Weight'], color='red',
            alpha=alpha)
 
-xs = np.linspace(df['Height'].min(), df['Height'].max(), 100)
-ys = np.linspace(df['Weight'].min(), df['Weight'].max(), 100)
-X1, X2 = np.meshgrid(xs, ys)
-Z = np.empty(X1.shape)
-for (i, j), val in np.ndenumerate(X1):
-    x1 = val
-    x2 = X2[i, j]
-    p = clf.decision_function([x1, x2])
-    Z[i, j] = p
-
-ax.contour(X1, X2, Z, levels=[0.5])
+# xs = np.linspace(df['Height'].min(), df['Height'].max(), 100)
+# ys = np.linspace(df['Weight'].min(), df['Weight'].max(), 100)
+# X1, X2 = np.meshgrid(xs, ys)
+# Z = np.empty(X1.shape)
+# for (i, j), val in np.ndenumerate(X1):
+#     x1 = val
+#     x2 = X2[i, j]
+#     Z[i, j] = clf.predict([x1, x2])
+# 
+# ax.contour(X1, X2, Z, levels=[0.5])
+f = lambda p: clf.intercept_ + (clf.coef_ * p).sum()
+ll = df['Height'].min(), df['Weight'].min()
+ur = df['Height'].max(), df['Weight'].max()
 fig.show()
 raw_input()

File ch5-death.py

+#!/usr/bin/env python2
+
+import matplotlib.pyplot as plt
+import pandas as pd
+import numpy as np
+from statsmodels.nonparametric import KDE
+
+df = pd.read_csv('longevity.csv')
+d0 = KDE(df[df['Smokes'] == 0]['AgeAtDeath'].astype(np.double))
+d0.fit()
+d1 = KDE(df[df['Smokes'] == 1]['AgeAtDeath'].astype(np.double))
+d1.fit()
+
+fig = plt.figure()
+ax = fig.add_subplot(211)
+ax.fill(d1.support, d1.density, color='steelblue', alpha=.7, label='Smoker')
+ax.legend(frameon=False)
+am = d1.support[d1.density.argmax()]
+ax.axvline(am, linestyle = '--')
+
+ax = fig.add_subplot(212, sharex=ax)
+ax.fill(d0.support, d0.density, color='red', alpha=.7, label='Non Smoker')
+ax.legend(frameon=False)
+am = d0.support[d0.density.argmax()]
+ax.axvline(am, linestyle = '--')
+
+xs = np.append(d0.support, d1.support)
+ax.set_xlim(np.min(xs), np.max(xs))
+ys = np.append(d0.density, d1.density)
+ax.set_ylim(0, np.max(ys))
+
+ax.set_ylabel('Density')
+ax.set_xlabel('Age At Death')
+ax.legend(frameon=False)
+fig.savefig('smokers.png')

File longevity.csv

+"Smokes","AgeAtDeath"
+1,75
+1,72
+1,66
+1,74
+1,69
+1,65
+1,72
+1,76
+1,67
+1,65
+1,65
+1,76
+1,68
+1,66
+1,73
+1,73
+1,67
+1,71
+1,66
+1,70
+1,69
+1,66
+1,72
+1,66
+1,65
+1,70
+1,73
+1,74
+1,72
+1,76
+1,69
+1,67
+1,68
+1,71
+1,71
+1,73
+1,76
+1,63
+1,65
+1,67
+1,71
+1,70
+1,75
+1,57
+1,64
+1,58
+1,65
+1,63
+1,64
+1,68
+1,64
+1,76
+1,65
+1,67
+1,69
+1,64
+1,69
+1,71
+1,63
+1,69
+1,64
+1,74
+1,70
+1,60
+1,79
+1,69
+1,72
+1,63
+1,70
+1,68
+1,72
+1,76
+1,63
+1,73
+1,74
+1,77
+1,70
+1,72
+1,79
+1,64
+1,70
+1,65
+1,76
+1,71
+1,66
+1,77
+1,71
+1,69
+1,69
+1,71
+1,63
+1,71
+1,78
+1,77
+1,76
+1,73
+1,68
+1,66
+1,68
+1,68
+1,75
+1,72
+1,75
+1,71
+1,62
+1,75
+1,69
+1,73
+1,71
+1,61
+1,77
+1,75
+1,72
+1,83
+1,71
+1,73
+1,74
+1,71
+1,72
+1,74
+1,75
+1,69
+1,79
+1,76
+1,70
+1,84
+1,76
+1,79
+1,67
+1,72
+1,69
+1,64
+1,77
+1,69
+1,68
+1,75
+1,74
+1,67
+1,76
+1,67
+1,71
+1,72
+1,73
+1,58
+1,71
+1,68
+1,75
+1,68
+1,74
+1,76
+1,68
+1,73
+1,66
+1,75
+1,64
+1,69
+1,71
+1,79
+1,66
+1,69
+1,74
+1,65
+1,62
+1,70
+1,77
+1,68
+1,69
+1,64
+1,71
+1,64
+1,70
+1,60
+1,77
+1,71
+1,70
+1,73
+1,74
+1,73
+1,67
+1,66
+1,66
+1,68
+1,79
+1,74
+1,74
+1,74
+1,69
+1,67
+1,71
+1,64
+1,70
+1,69
+1,76
+1,66
+1,71
+1,65
+1,70
+1,65
+1,77
+1,76
+1,66
+1,69
+1,73
+1,69
+1,69
+1,71
+1,72
+1,71
+1,74
+1,70
+1,65
+1,66
+1,73
+1,67
+1,65
+1,66
+1,70
+1,70
+1,66
+1,68
+1,72
+1,85
+1,72
+1,66
+1,75
+1,66
+1,68
+1,72
+1,67
+1,73
+1,69
+1,66
+1,80
+1,81
+1,66
+1,74
+1,65
+1,77
+1,75
+1,71
+1,80
+1,69
+1,83
+1,66
+1,65
+1,71
+1,65
+1,65
+1,71
+1,69
+1,64
+1,67
+1,78
+1,68
+1,73
+1,76
+1,74
+1,81
+1,76
+1,75
+1,66
+1,68
+1,74
+1,72
+1,75
+1,61
+1,76
+1,62
+1,69
+1,73
+1,83
+1,75
+1,75
+1,67
+1,66
+1,68
+1,76
+1,66
+1,67
+1,60
+1,67
+1,69
+1,79
+1,69
+1,71
+1,73
+1,68
+1,63
+1,72
+1,64
+1,71
+1,70
+1,75
+1,71
+1,74
+1,69
+1,68
+1,70
+1,70
+1,73
+1,60
+1,74
+1,78
+1,69
+1,72
+1,64
+1,73
+1,72
+1,65
+1,73
+1,63
+1,65
+1,63
+1,63
+1,74
+1,76
+1,69
+1,75
+1,75
+1,63
+1,72
+1,76
+1,69
+1,72
+1,70
+1,67
+1,60
+1,69
+1,81
+1,78
+1,74
+1,53
+1,71
+1,75
+1,70
+1,67
+1,69
+1,70
+1,59
+1,78
+1,60
+1,73
+1,69
+1,67
+1,79
+1,77
+1,63
+1,77
+1,66
+1,74
+1,75
+1,77
+1,66
+1,69
+1,72
+1,72
+1,68
+1,64
+1,73
+1,69
+1,65
+1,75
+1,74
+1,73
+1,71
+1,70
+1,75
+1,67
+1,65
+1,58
+1,66
+1,82
+1,71
+1,70
+1,66
+1,73
+1,80
+1,78
+1,73
+1,70
+1,76
+1,73
+1,68
+1,58
+1,63
+1,76
+1,71
+1,65
+1,58
+1,69
+1,65
+1,72
+1,78
+1,65
+1,71
+1,69
+1,73
+1,70
+1,69
+1,72
+1,64
+1,62
+1,77
+1,72
+1,75
+1,74
+1,69
+1,81
+1,70
+1,65
+1,69
+1,65
+1,63
+1,78
+1,70
+1,79
+1,71
+1,72
+1,71
+1,77
+1,69
+1,73
+1,75
+1,65
+1,62
+1,65
+1,65
+1,76
+1,71
+1,72
+1,67
+1,68
+1,63
+1,77
+1,65
+1,74
+1,73
+1,74
+1,66
+1,66
+1,61
+1,67
+1,68
+1,70
+1,74
+1,73
+1,69
+1,67
+1,67
+1,78
+1,72
+1,79
+1,73
+1,64
+1,68
+1,72
+1,70
+1,66
+1,70
+1,68
+1,75
+1,70
+1,68
+1,73
+1,83
+1,67
+1,66
+1,64
+1,76
+1,66
+1,68
+1,67
+1,62
+1,68
+1,71
+1,73
+1,68
+1,74
+1,68
+1,68
+1,76
+1,69
+1,76
+1,70
+1,71
+1,69
+1,60
+1,71
+1,77
+1,64
+1,76
+1,52
+1,81
+1,71
+1,71
+1,73
+1,68
+1,64
+1,66
+1,66
+0,66
+0,80
+0,84
+0,63
+0,79
+0,76
+0,82
+0,82
+0,73
+0,68
+0,74
+0,73
+0,77
+0,66
+0,90
+0,79
+0,81
+0,76
+0,75
+0,76
+0,74
+0,76
+0,77
+0,73
+0,75
+0,74
+0,81
+0,79
+0,85
+0,64
+0,81
+0,72
+0,88
+0,80
+0,78
+0,82
+0,72
+0,83
+0,72
+0,79
+0,75
+0,76
+0,77
+0,74
+0,80
+0,75
+0,79
+0,72
+0,80
+0,73
+0,73
+0,62
+0,76
+0,80
+0,81
+0,69
+0,69
+0,79
+0,78
+0,72
+0,70
+0,71
+0,80
+0,83
+0,74
+0,74
+0,70
+0,77
+0,83
+0,73
+0,74
+0,72
+0,75
+0,69
+0,61
+0,70
+0,67
+0,79
+0,76
+0,84
+0,78
+0,72
+0,78
+0,70
+0,65
+0,77
+0,77
+0,85
+0,84
+0,72
+0,66
+0,70
+0,84
+0,71
+0,79
+0,77
+0,71
+0,80
+0,80
+0,70
+0,80
+0,72
+0,69
+0,78
+0,81
+0,77
+0,70
+0,74
+0,75
+0,70
+0,67
+0,75
+0,80
+0,73
+0,71
+0,82
+0,74
+0,78
+0,74
+0,78
+0,72
+0,81
+0,82
+0,74
+0,80
+0,79
+0,84
+0,80
+0,75
+0,90
+0,85
+0,79
+0,70
+0,72
+0,73
+0,74
+0,66
+0,78
+0,72
+0,70
+0,69
+0,74
+0,79
+0,81
+0,76
+0,83
+0,82
+0,75
+0,70
+0,76
+0,68
+0,79
+0,79
+0,65
+0,77
+0,77
+0,70
+0,79
+0,74
+0,78
+0,81
+0,72
+0,82
+0,71
+0,65
+0,65
+0,73
+0,65
+0,81
+0,62
+0,76
+0,77
+0,85
+0,76
+0,77
+0,75
+0,76
+0,71
+0,67
+0,69
+0,79
+0,66
+0,69
+0,75
+0,74
+0,73
+0,71
+0,74
+0,76
+0,73
+0,72
+0,85
+0,77
+0,82
+0,76
+0,69
+0,77
+0,75
+0,77
+0,85
+0,74
+0,74
+0,89
+0,79
+0,72
+0,79
+0,68
+0,77
+0,81
+0,65
+0,67
+0,67
+0,76
+0,65
+0,74
+0,76
+0,74
+0,79
+0,71
+0,72
+0,81
+0,76
+0,65
+0,68
+0,82
+0,69
+0,76
+0,82
+0,77
+0,81
+0,73
+0,70
+0,76
+0,80
+0,82
+0,78
+0,74
+0,75
+0,74
+0,74
+0,77
+0,75
+0,73
+0,77
+0,77
+0,67
+0,84
+0,78
+0,77
+0,72
+0,89
+0,64
+0,70
+0,72
+0,71
+0,68
+0,72
+0,72
+0,69
+0,75
+0,76
+0,74
+0,72
+0,73
+0,79
+0,76
+0,76
+0,74
+0,76
+0,64
+0,77
+0,76
+0,80
+0,76
+0,67
+0,70
+0,78
+0,80
+0,76
+0,76
+0,70
+0,81
+0,71
+0,82
+0,71
+0,78
+0,83
+0,74
+0,75
+0,83
+0,72
+0,79
+0,75
+0,81
+0,71
+0,77
+0,72
+0,72
+0,72
+0,88
+0,72
+0,83
+0,71
+0,69
+0,78
+0,78
+0,72
+0,81
+0,73
+0,77
+0,72
+0,89
+0,81
+0,70
+0,73
+0,72
+0,73
+0,75
+0,73
+0,73
+0,74
+0,74
+0,81
+0,70
+0,67
+0,81
+0,81
+0,69
+0,79
+0,76
+0,79
+0,73
+0,66
+0,70
+0,70
+0,78
+0,86
+0,69
+0,82
+0,76
+0,77
+0,81
+0,71
+0,76
+0,73
+0,86
+0,72
+0,76
+0,77
+0,75
+0,66
+0,72
+0,74
+0,69
+0,69
+0,75
+0,74
+0,74
+0,79
+0,77
+0,75
+0,70
+0,70
+0,73
+0,75
+0,73
+0,73
+0,71
+0,73
+0,70
+0,81
+0,83
+0,72
+0,74
+0,69
+0,76
+0,73
+0,84
+0,87
+0,76
+0,72
+0,75
+0,73
+0,67
+0,73
+0,71
+0,81
+0,79
+0,82
+0,80
+0,68
+0,78
+0,74
+0,79
+0,68
+0,71
+0,71
+0,77
+0,67
+0,80
+0,79
+0,70
+0,73
+0,72
+0,72
+0,72
+0,81
+0,71
+0,74
+0,75
+0,72
+0,82
+0,67
+0,75
+0,81
+0,69
+0,77
+0,77
+0,67
+0,74
+0,79
+0,73
+0,73
+0,85
+0,75
+0,78
+0,74
+0,79
+0,68
+0,79
+0,65
+0,72
+0,77
+0,73
+0,79
+0,75
+0,80
+0,73
+0,72
+0,85
+0,79
+0,77
+0,72
+0,76
+0,74
+0,73
+0,81
+0,77
+0,69
+0,70
+0,75
+0,72
+0,70
+0,72
+0,76
+0,64
+0,82
+0,75
+0,79
+0,80
+0,84
+0,78
+0,76
+0,78
+0,87
+0,73
+0,75
+0,70
+0,67
+0,77
+0,75
+0,84
+0,83
+0,77
+0,71
+0,74
+0,73
+0,70
+0,81
+0,78
+0,74
+0,79
+0,79
+0,84
+0,75
+0,74
+0,84
+0,77
+0,78
+0,78
+0,79
+0,79
+0,77
+0,77
+0,77
+0,83
+0,78
+0,79
+0,71
+0,81