Compare commits
48 Commits
e9ac770dd6
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
d1872712c4
|
|||
|
6d6cc9f917
|
|||
|
cd5581ada4
|
|||
|
b53476cf3b
|
|||
|
7cd7220cef
|
|||
|
0ed9ecdb7d
|
|||
|
5e4151d261
|
|||
|
1410c6c990
|
|||
|
e397f031cc
|
|||
|
3cb192fc5f
|
|||
|
3d4a91052a
|
|||
|
f5d32750b1
|
|||
|
fd460ee658
|
|||
|
26081fdf44
|
|||
|
3c62074697
|
|||
|
cdd3ddde69
|
|||
|
9192f62614
|
|||
|
27b99f18ab
|
|||
|
4768232a96
|
|||
|
414c248549
|
|||
|
41e15ed275
|
|||
|
2fce3281a3
|
|||
|
7ed665a524
|
|||
|
9a11d75461
|
|||
|
2e9c1a3a23
|
|||
|
fd0dc3cdf0
|
|||
|
17ba7e6376
|
|||
|
b490d11a80
|
|||
|
0734fdc511
|
|||
|
d8898598ba
|
|||
|
ab483da421
|
|||
|
b556147dde
|
|||
|
d5258a6edf
|
|||
|
959e53b7b3
|
|||
|
611da9538f
|
|||
|
749c5eaef8
|
|||
|
28bb039e58
|
|||
|
a375173ec1
|
|||
|
0943cfd2bb
|
|||
|
36172948a6
|
|||
|
aa374a7f53
|
|||
|
dbc2b765a7
|
|||
|
9a8d59290b
|
|||
|
fc5cd0fb58
|
|||
|
5cef52cd01
|
|||
|
628c0a3beb
|
|||
|
a87b454bc5
|
|||
|
cbbc24179c
|
@@ -0,0 +1,148 @@
|
|||||||
|
|
||||||
|
============================================================
|
||||||
|
IRIS
|
||||||
|
============================================================
|
||||||
|
|
||||||
|
--- Decision Tree ---
|
||||||
|
Accuracy: 1.000
|
||||||
|
Adj. Rand: 1.000
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
setosa 1.00 1.00 1.00 19
|
||||||
|
versicolor 1.00 1.00 1.00 13
|
||||||
|
virginica 1.00 1.00 1.00 13
|
||||||
|
|
||||||
|
accuracy 1.00 45
|
||||||
|
macro avg 1.00 1.00 1.00 45
|
||||||
|
weighted avg 1.00 1.00 1.00 45
|
||||||
|
|
||||||
|
|
||||||
|
--- Naive Bayes ---
|
||||||
|
Accuracy: 0.978
|
||||||
|
Adj. Rand: 0.943
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
setosa 1.00 1.00 1.00 19
|
||||||
|
versicolor 1.00 0.92 0.96 13
|
||||||
|
virginica 0.93 1.00 0.96 13
|
||||||
|
|
||||||
|
accuracy 0.98 45
|
||||||
|
macro avg 0.98 0.97 0.97 45
|
||||||
|
weighted avg 0.98 0.98 0.98 45
|
||||||
|
|
||||||
|
|
||||||
|
--- Random Forest ---
|
||||||
|
Accuracy: 1.000
|
||||||
|
Adj. Rand: 1.000
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
setosa 1.00 1.00 1.00 19
|
||||||
|
versicolor 1.00 1.00 1.00 13
|
||||||
|
virginica 1.00 1.00 1.00 13
|
||||||
|
|
||||||
|
accuracy 1.00 45
|
||||||
|
macro avg 1.00 1.00 1.00 45
|
||||||
|
weighted avg 1.00 1.00 1.00 45
|
||||||
|
|
||||||
|
|
||||||
|
--- K-Means (mapped) ---
|
||||||
|
Accuracy: 0.893
|
||||||
|
Adj. Rand: 0.730
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
setosa 1.00 1.00 1.00 50
|
||||||
|
versicolor 0.77 0.96 0.86 50
|
||||||
|
virginica 0.95 0.72 0.82 50
|
||||||
|
|
||||||
|
accuracy 0.89 150
|
||||||
|
macro avg 0.91 0.89 0.89 150
|
||||||
|
weighted avg 0.91 0.89 0.89 150
|
||||||
|
|
||||||
|
|
||||||
|
============================================================
|
||||||
|
DIGITS
|
||||||
|
============================================================
|
||||||
|
|
||||||
|
--- Decision Tree ---
|
||||||
|
Accuracy: 0.843
|
||||||
|
Adj. Rand: 0.685
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
0 0.92 0.91 0.91 53
|
||||||
|
1 0.74 0.78 0.76 50
|
||||||
|
2 0.83 0.74 0.79 47
|
||||||
|
3 0.78 0.85 0.81 54
|
||||||
|
4 0.81 0.85 0.83 60
|
||||||
|
5 0.92 0.86 0.89 66
|
||||||
|
6 0.93 0.94 0.93 53
|
||||||
|
7 0.85 0.84 0.84 55
|
||||||
|
8 0.89 0.77 0.82 43
|
||||||
|
9 0.78 0.85 0.81 59
|
||||||
|
|
||||||
|
accuracy 0.84 540
|
||||||
|
macro avg 0.85 0.84 0.84 540
|
||||||
|
weighted avg 0.85 0.84 0.84 540
|
||||||
|
|
||||||
|
|
||||||
|
--- Naive Bayes ---
|
||||||
|
Accuracy: 0.852
|
||||||
|
Adj. Rand: 0.710
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
0 1.00 0.98 0.99 53
|
||||||
|
1 0.86 0.74 0.80 50
|
||||||
|
2 0.86 0.66 0.75 47
|
||||||
|
3 0.95 0.76 0.85 54
|
||||||
|
4 0.98 0.85 0.91 60
|
||||||
|
5 0.94 0.94 0.94 66
|
||||||
|
6 0.89 0.96 0.93 53
|
||||||
|
7 0.72 0.98 0.83 55
|
||||||
|
8 0.57 0.91 0.70 43
|
||||||
|
9 0.89 0.71 0.79 59
|
||||||
|
|
||||||
|
accuracy 0.85 540
|
||||||
|
macro avg 0.87 0.85 0.85 540
|
||||||
|
weighted avg 0.88 0.85 0.85 540
|
||||||
|
|
||||||
|
|
||||||
|
--- Random Forest ---
|
||||||
|
Accuracy: 0.976
|
||||||
|
Adj. Rand: 0.946
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
0 1.00 0.98 0.99 53
|
||||||
|
1 0.96 1.00 0.98 50
|
||||||
|
2 1.00 1.00 1.00 47
|
||||||
|
3 0.98 0.96 0.97 54
|
||||||
|
4 0.97 1.00 0.98 60
|
||||||
|
5 0.97 0.95 0.96 66
|
||||||
|
6 0.98 0.98 0.98 53
|
||||||
|
7 0.98 0.98 0.98 55
|
||||||
|
8 0.95 0.95 0.95 43
|
||||||
|
9 0.97 0.95 0.96 59
|
||||||
|
|
||||||
|
accuracy 0.98 540
|
||||||
|
macro avg 0.98 0.98 0.98 540
|
||||||
|
weighted avg 0.98 0.98 0.98 540
|
||||||
|
|
||||||
|
|
||||||
|
--- K-Means (mapped) ---
|
||||||
|
Accuracy: 0.794
|
||||||
|
Adj. Rand: 0.667
|
||||||
|
precision recall f1-score support
|
||||||
|
|
||||||
|
0 0.99 0.99 0.99 178
|
||||||
|
1 0.62 0.30 0.41 182
|
||||||
|
2 0.84 0.84 0.84 177
|
||||||
|
3 0.86 0.85 0.85 183
|
||||||
|
4 0.99 0.92 0.95 181
|
||||||
|
5 0.87 0.75 0.81 182
|
||||||
|
6 0.97 0.98 0.98 181
|
||||||
|
7 0.86 0.95 0.90 179
|
||||||
|
8 0.45 0.59 0.51 174
|
||||||
|
9 0.58 0.77 0.66 180
|
||||||
|
|
||||||
|
accuracy 0.79 1797
|
||||||
|
macro avg 0.80 0.79 0.79 1797
|
||||||
|
weighted avg 0.80 0.79 0.79 1797
|
||||||
|
|
||||||
@@ -0,0 +1,96 @@
|
|||||||
|
"""
|
||||||
|
Compare different ML algorithms against iris & digits dataset.
|
||||||
|
|
||||||
|
Supervised:
|
||||||
|
- Decision Tree
|
||||||
|
- Naive Bayes (GaussianNB)
|
||||||
|
Unsuprvised:
|
||||||
|
- K-Means
|
||||||
|
|
||||||
|
Use metrics (classification_report) to try to evaluate the algorithms.
|
||||||
|
"""
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn.model_selection import train_test_split
|
||||||
|
from sklearn.tree import DecisionTreeClassifier
|
||||||
|
from sklearn.naive_bayes import GaussianNB
|
||||||
|
from sklearn.cluster import KMeans
|
||||||
|
from sklearn.ensemble import RandomForestClassifier
|
||||||
|
from sklearn.metrics import accuracy_score, classification_report, adjusted_rand_score
|
||||||
|
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
|
||||||
|
def kmeans_true_labels(X, y, n_classes):
|
||||||
|
"""
|
||||||
|
Since k-means is unsupervised it comes up with its own classes, that
|
||||||
|
do not reflect the classes from the gold standard.
|
||||||
|
This function maps each cluster to its majority true label, to help compute accuracy.
|
||||||
|
|
||||||
|
Each cluster gets assigned the most common true label in it.
|
||||||
|
"""
|
||||||
|
# train classifier and do a fit, set the rng seed to a fixed value
|
||||||
|
kmeans = KMeans(n_clusters=n_classes, init="k-means++", n_init=10, random_state=42)
|
||||||
|
kmeans.fit(X)
|
||||||
|
|
||||||
|
# creates an empty array the same shape as the cluster assignments
|
||||||
|
labels = np.zeros_like(kmeans.labels_)
|
||||||
|
# for each cluster i ...
|
||||||
|
for i in range(n_classes):
|
||||||
|
# boolean array, true for every sample that K-Means put in cluster i
|
||||||
|
mask = kmeans.labels_ == i
|
||||||
|
# just skip empty clusters
|
||||||
|
if mask.sum() == 0:
|
||||||
|
continue
|
||||||
|
# set true label as the label most prominent in this cluster
|
||||||
|
# e.g: if cluster 2 contains a mix of digits 7, 7, 7, 3, 7 this gives you 7
|
||||||
|
labels[mask] = np.bincount(y[mask]).argmax()
|
||||||
|
return labels, kmeans
|
||||||
|
|
||||||
|
|
||||||
|
def evaluate(name, dataset, target_names):
|
||||||
|
"""
|
||||||
|
Evaluate unsupervised and supervised ML algorithms on the same dataset, split with the train_test_split function.
|
||||||
|
Use the classification_report to evaluate the function.
|
||||||
|
"""
|
||||||
|
print(f"\n{'=' * 60}")
|
||||||
|
print(f" {name}")
|
||||||
|
print(f"{'=' * 60}")
|
||||||
|
|
||||||
|
# split the dataset into train and test data and use a fixed rng seed
|
||||||
|
X_train, X_test, y_train, y_test = train_test_split(
|
||||||
|
dataset.data, dataset.target, test_size=0.3, random_state=42
|
||||||
|
)
|
||||||
|
|
||||||
|
# all the supervised leanring algorithms to test
|
||||||
|
algorithms = [
|
||||||
|
("Decision Tree", DecisionTreeClassifier(random_state=42)),
|
||||||
|
("Naive Bayes", GaussianNB()),
|
||||||
|
("Random Forest", RandomForestClassifier(n_estimators=100, random_state=42)),
|
||||||
|
]
|
||||||
|
|
||||||
|
# do the test on the supervised learning algorithms
|
||||||
|
for classifier_name, classifier in algorithms:
|
||||||
|
classifier.fit(X_train, y_train)
|
||||||
|
y_pred = classifier.predict(X_test)
|
||||||
|
print(f"\n--- {classifier_name} ---")
|
||||||
|
print(f"Accuracy: {accuracy_score(y_test, y_pred):.3f}")
|
||||||
|
print(f"Adj. Rand: {adjusted_rand_score(y_test, y_pred):.3f}")
|
||||||
|
print(classification_report(y_test, y_pred, target_names=target_names))
|
||||||
|
|
||||||
|
# tdo the test on the unsupervised learning algorithm (evaluated on full dataset)
|
||||||
|
n_classes = len(target_names)
|
||||||
|
mapped_labels, kmeans = kmeans_true_labels(dataset.data, dataset.target, n_classes)
|
||||||
|
print(f"\n--- K-Means (mapped) ---")
|
||||||
|
print(f"Accuracy: {accuracy_score(dataset.target, mapped_labels):.3f}")
|
||||||
|
print(f"Adj. Rand: {adjusted_rand_score(dataset.target, kmeans.labels_):.3f}")
|
||||||
|
print(classification_report(dataset.target, mapped_labels, target_names=target_names))
|
||||||
|
|
||||||
|
|
||||||
|
# evaluate all ML algorithms on iris
|
||||||
|
iris = datasets.load_iris()
|
||||||
|
evaluate("IRIS", iris, list(iris.target_names))
|
||||||
|
|
||||||
|
# evaluate all ML algorithms on digits
|
||||||
|
digits = datasets.load_digits()
|
||||||
|
evaluate("DIGITS", digits, [str(n) for n in digits.target_names])
|
||||||
|
After Width: | Height: | Size: 834 KiB |
@@ -0,0 +1,44 @@
|
|||||||
|
"""
|
||||||
|
Use a decisiontree classifier to predict handwritten digits
|
||||||
|
|
||||||
|
- This is an example of a supervised ML algorithm
|
||||||
|
- it has labels on the training data
|
||||||
|
- you tell the model: this is class X during training
|
||||||
|
"""
|
||||||
|
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn.tree import DecisionTreeClassifier
|
||||||
|
from sklearn import tree
|
||||||
|
|
||||||
|
# load the digits dataset
|
||||||
|
digits = datasets.load_digits()
|
||||||
|
# get a feel for it
|
||||||
|
print(digits.data.size)
|
||||||
|
print(digits.target.size)
|
||||||
|
print(digits.feature_names)
|
||||||
|
print(digits.target_names)
|
||||||
|
|
||||||
|
# use a decision tree classifier
|
||||||
|
# set max_depth to 5 otherwise the tree will get huge
|
||||||
|
classifier = DecisionTreeClassifier(max_depth=5)
|
||||||
|
# use all but the last sample for training
|
||||||
|
classifier.fit(digits.data[:-1], digits.target[:-1])
|
||||||
|
|
||||||
|
# use the model to predict the last data sample
|
||||||
|
last_sample = digits.data[-1:]
|
||||||
|
last_target = digits.target[-1:]
|
||||||
|
print(f"predicted: {classifier.predict(last_sample)} vs real: {last_target}")
|
||||||
|
|
||||||
|
# print the tree for visual inspection
|
||||||
|
fig, ax = plt.subplots(figsize=(20, 10))
|
||||||
|
tree.plot_tree(
|
||||||
|
classifier,
|
||||||
|
feature_names=digits.feature_names,
|
||||||
|
class_names=[str(i) for i in digits.target_names],
|
||||||
|
filled=True,
|
||||||
|
rounded=True,
|
||||||
|
ax=ax,
|
||||||
|
)
|
||||||
|
fig.savefig("decisiontree_digits.png", dpi=500, bbox_inches="tight")
|
||||||
|
After Width: | Height: | Size: 281 KiB |
@@ -0,0 +1,42 @@
|
|||||||
|
"""
|
||||||
|
Use a decisiontree classifier to predict flowers based on sepal and petal features
|
||||||
|
|
||||||
|
- This is an example of a supervised ML algorithm
|
||||||
|
- it has labels on the training data
|
||||||
|
- you tell the model: this is class X during training
|
||||||
|
"""
|
||||||
|
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn.tree import DecisionTreeClassifier
|
||||||
|
from sklearn import tree
|
||||||
|
|
||||||
|
# load the iris data set and look at its dimensions
|
||||||
|
iris = datasets.load_iris()
|
||||||
|
print(iris.data.size)
|
||||||
|
print(iris.target.size)
|
||||||
|
print(iris.feature_names)
|
||||||
|
print(iris.target_names)
|
||||||
|
|
||||||
|
# use a decision tree classifier
|
||||||
|
classifier = DecisionTreeClassifier()
|
||||||
|
# use all but the last sample for training
|
||||||
|
classifier.fit(iris.data[:-1], iris.target[:-1])
|
||||||
|
|
||||||
|
# use the model to predict the last data sample
|
||||||
|
last_sample = iris.data[-1:]
|
||||||
|
last_target = iris.target[-1:]
|
||||||
|
print(f"predicted: {last_sample} vs real: {last_target}")
|
||||||
|
|
||||||
|
# print the tree for visual inspection
|
||||||
|
fig, ax = plt.subplots(figsize=(20, 10))
|
||||||
|
tree.plot_tree(
|
||||||
|
classifier,
|
||||||
|
feature_names=iris.feature_names,
|
||||||
|
class_names=iris.target_names,
|
||||||
|
filled=True,
|
||||||
|
rounded=True,
|
||||||
|
ax=ax,
|
||||||
|
)
|
||||||
|
fig.savefig("decisiontree_iris.png", dpi=150, bbox_inches="tight")
|
||||||
@@ -3,11 +3,11 @@
|
|||||||
"devenv": {
|
"devenv": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "src/modules",
|
"dir": "src/modules",
|
||||||
"lastModified": 1777372895,
|
"lastModified": 1777498918,
|
||||||
"narHash": "sha256-PGesjpeDbEPigEP7tdRw8Sm0mmOmonUdOOthBY+nhJA=",
|
"narHash": "sha256-SBx9JMs4OGrhADeU6qlfTZzJ7Dp/RuVgXErECF0adUo=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "devenv",
|
"repo": "devenv",
|
||||||
"rev": "cb344e4a5ab9241ae49739352c24268d5f8be13b",
|
"rev": "28668b6851e4e649aadd329527059344d14561cf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -17,6 +17,22 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-compat": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1767039857,
|
||||||
|
"narHash": "sha256-vNpUSpF5Nuw8xvDLj2KCwwksIbjua2LZCqhV1LNRDns=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "5edf11c44bc78a0d334f6334cdaf7d60d732daab",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs-src": "nixpkgs-src"
|
"nixpkgs-src": "nixpkgs-src"
|
||||||
@@ -36,6 +52,27 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-python": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1777318902,
|
||||||
|
"narHash": "sha256-gb9ZqzELCkn6pcRZkC4A8mIm3KQxjoheTRyfodOwMeo=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "nixpkgs-python",
|
||||||
|
"rev": "0a64f05ab0bc39dd83f544c3f00c2b32dab4ab85",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "nixpkgs-python",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs-src": {
|
"nixpkgs-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -56,7 +93,8 @@
|
|||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"devenv": "devenv",
|
"devenv": "devenv",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs",
|
||||||
|
"nixpkgs-python": "nixpkgs-python"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
{
|
{
|
||||||
languages.python = {
|
languages.python = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
version = "3.14.4";
|
||||||
venv.enable = true;
|
venv.enable = true;
|
||||||
venv.requirements = ''
|
venv.requirements = ''
|
||||||
ipython
|
ipython
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
inputs:
|
||||||
|
nixpkgs-python:
|
||||||
|
url: github:cachix/nixpkgs-python
|
||||||
|
inputs:
|
||||||
|
nixpkgs:
|
||||||
|
follows: nixpkgs
|
||||||
|
After Width: | Height: | Size: 403 KiB |
@@ -0,0 +1,69 @@
|
|||||||
|
"""
|
||||||
|
Use k-means to try to match handwritten digits and see if changing the parameters
|
||||||
|
results in better recognition.
|
||||||
|
|
||||||
|
- This is an example of an unsupervised ML algorithm
|
||||||
|
- it has no labels in the training data
|
||||||
|
- it discovers the structure on its own
|
||||||
|
- thus the cluster numbers are arbitrary and do not correspond to the class labels
|
||||||
|
|
||||||
|
Takaway:
|
||||||
|
- Hier ist k-means nicht der beste algorithmus, weil die Daten nicht in schön kugelförmig
|
||||||
|
verteilten Clustern angeordnet sind und k-means Mühe hat die Centroiden sauber zu bestimmen.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn import metrics
|
||||||
|
from sklearn.cluster import KMeans
|
||||||
|
from sklearn.decomposition import PCA
|
||||||
|
|
||||||
|
# get the digits dataset
|
||||||
|
digits = datasets.load_digits()
|
||||||
|
|
||||||
|
# 100 samples pro ziffer
|
||||||
|
# 64 pixel pro zahl
|
||||||
|
print(digits.data.shape)
|
||||||
|
|
||||||
|
# ausprobieren verschiedener parameter
|
||||||
|
# kmeans = KMeans(n_clusters=10, init="random", n_init=1)
|
||||||
|
# kmeans = KMeans(n_clusters=10)
|
||||||
|
kmeans = KMeans(n_clusters=10, init="k-means++", n_init=10)
|
||||||
|
kmeans.fit(digits.data)
|
||||||
|
|
||||||
|
print(list(zip(digits.target, kmeans.labels_)))
|
||||||
|
print(metrics.homogeneity_score(digits.target, kmeans.labels_))
|
||||||
|
print(metrics.completeness_score(digits.target, kmeans.labels_))
|
||||||
|
print(metrics.adjusted_rand_score(digits.target, kmeans.labels_))
|
||||||
|
print(metrics.silhouette_score(digits.data, kmeans.labels_))
|
||||||
|
|
||||||
|
# Wikipedia:
|
||||||
|
# PCA (Principal Component Analysis) finds the directions in your data with
|
||||||
|
# the most variance and projects everything onto those axes.
|
||||||
|
#
|
||||||
|
# Irgendwas mit Eigenvektoren und Kovarianz Matrix, TODO: Anschauen
|
||||||
|
# Transformiert 64 dimensionalen Vektor möglichst gut in eine 2D Projektion
|
||||||
|
pca = PCA(n_components=2)
|
||||||
|
X2d = pca.fit_transform(digits.data)
|
||||||
|
centroids2d = pca.transform(kmeans.cluster_centers_)
|
||||||
|
|
||||||
|
# Punktewolke plotten und Centroiden einzeichnen, tab10 gibt 10 versch. Farben für die Legende
|
||||||
|
# Hier sieht man grosse überlappung zwischen den Clustern -> ein Hinweis, das K-Means nicht optimal ist?
|
||||||
|
plt.figure(figsize=(10, 8))
|
||||||
|
scatter = plt.scatter(X2d[:, 0], X2d[:, 1], c=kmeans.labels_, cmap='tab10', s=10, alpha=0.6)
|
||||||
|
plt.scatter(centroids2d[:, 0], centroids2d[:, 1], c='red', marker='X', s=200, edgecolors='black')
|
||||||
|
plt.xlabel(f'PC1 ({pca.explained_variance_ratio_[0]:.1%} var)')
|
||||||
|
plt.ylabel(f'PC2 ({pca.explained_variance_ratio_[1]:.1%} var)')
|
||||||
|
plt.title('K-Means on Digits (PCA projection)')
|
||||||
|
plt.colorbar(scatter, label='Cluster')
|
||||||
|
plt.savefig('kmeans_digits.png', dpi=150, bbox_inches='tight')
|
||||||
|
|
||||||
|
# Centroiden als 8x8 Bild darstellen, indem man das "durchschnittliche zeichen" um das Zentrum plottet
|
||||||
|
# Dieser plot zeigt was die K-Means "gelernt" hat, man sieht die Zuweisung von Cluster zu Zahl sofort
|
||||||
|
fig, axes = plt.subplots(2, 5, figsize=(10, 4))
|
||||||
|
for i, ax in enumerate(axes.flat):
|
||||||
|
ax.imshow(kmeans.cluster_centers_[i].reshape(8, 8), cmap='gray_r')
|
||||||
|
ax.set_title(f'Cluster {i}')
|
||||||
|
ax.axis('off')
|
||||||
|
fig.savefig('kmeans_digits_centroids.png', dpi=150, bbox_inches='tight')
|
||||||
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 96 KiB |
@@ -0,0 +1,59 @@
|
|||||||
|
"""
|
||||||
|
Aufgabe: k-means classifier verwenden um cluster im iris datenset zu finden und aufgrund von features Klassen von Samples predicten
|
||||||
|
|
||||||
|
Erkenntnis aus dieser Aufgabe
|
||||||
|
- der k-means Algorithmus ist nicht perfekt für diese Art von Daten geeignet
|
||||||
|
- wahrscheinlich weil die Cluster geometrisch zu wenig kugelförmig sind
|
||||||
|
"""
|
||||||
|
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
from sklearn.decomposition import PCA
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn.cluster import KMeans
|
||||||
|
from sklearn import metrics
|
||||||
|
|
||||||
|
# iris datenset laden
|
||||||
|
iris = datasets.load_iris()
|
||||||
|
|
||||||
|
# print 150 samples
|
||||||
|
print(iris.target)
|
||||||
|
|
||||||
|
"""
|
||||||
|
Egal wie die parameter gewählt werden, die metriken sind nicht sehr gut.
|
||||||
|
"""
|
||||||
|
# kmeans = KMeans(n_clusters=3, init="random", n_init=1)
|
||||||
|
# kmeans = KMeans(n_clusters=3, init='random', n_init=50)
|
||||||
|
# kmeans = KMeans(n_clusters=3, init='k-means++', n_init=10)
|
||||||
|
kmeans = KMeans(n_clusters=3)
|
||||||
|
|
||||||
|
# fit auf daten
|
||||||
|
kmeans.fit(iris.data)
|
||||||
|
|
||||||
|
# Gegenüberstellung gold standard vs prediction
|
||||||
|
print("gold standard vs. prediction")
|
||||||
|
for target_label, predicted_label in zip(iris.target, kmeans.labels_):
|
||||||
|
print(f"{target_label} -> {predicted_label}")
|
||||||
|
|
||||||
|
# ausgeben aller relevanten metriken
|
||||||
|
print(metrics.homogeneity_score(iris.target, kmeans.labels_))
|
||||||
|
print(metrics.completeness_score(iris.target, kmeans.labels_))
|
||||||
|
print(metrics.adjusted_rand_score(iris.target, kmeans.labels_))
|
||||||
|
print(metrics.silhouette_score(iris.data, kmeans.labels_))
|
||||||
|
|
||||||
|
# plot vorbereiten (Idee von kmeans digits)
|
||||||
|
# Transformation 4D nach 2D via Projektionsfit
|
||||||
|
pca = PCA(n_components=2)
|
||||||
|
X2d = pca.fit_transform(iris.data)
|
||||||
|
centroids2d = pca.transform(kmeans.cluster_centers_)
|
||||||
|
|
||||||
|
# plotten der Punktewolke und einzeichnen der Centroiden
|
||||||
|
plt.scatter(X2d[:, 0], X2d[:, 1], c=kmeans.labels_, cmap="viridis", s=30, alpha=0.7)
|
||||||
|
plt.scatter(
|
||||||
|
centroids2d[:, 0], centroids2d[:, 1], c="red", marker="X", s=200, edgecolors="black"
|
||||||
|
)
|
||||||
|
plt.xlabel(f"PC1 ({pca.explained_variance_ratio_[0]:.1%} var)")
|
||||||
|
plt.ylabel(f"PC2 ({pca.explained_variance_ratio_[1]:.1%} var)")
|
||||||
|
plt.title("K-Means on Iris (PCA projection)")
|
||||||
|
plt.colorbar(label="Cluster")
|
||||||
|
plt.savefig("kmeans_iris.png", dpi=150)
|
||||||
|
After Width: | Height: | Size: 26 KiB |
@@ -0,0 +1,58 @@
|
|||||||
|
"""
|
||||||
|
Use the naive bayes classifier to classify the digits data set.
|
||||||
|
|
||||||
|
- This is an example of a supervised ML algorithm
|
||||||
|
- it has labels on the training data
|
||||||
|
- you tell the model: this is class X during training
|
||||||
|
"""
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn.model_selection import train_test_split
|
||||||
|
from sklearn.naive_bayes import GaussianNB
|
||||||
|
|
||||||
|
digits = datasets.load_digits()
|
||||||
|
print(digits.data.shape)
|
||||||
|
|
||||||
|
# split into training and test data
|
||||||
|
x_train, x_test, y_train, y_test = train_test_split(
|
||||||
|
digits.data, digits.target, test_size=0.2, random_state=0
|
||||||
|
)
|
||||||
|
|
||||||
|
# use a gaussian NB classifier
|
||||||
|
classifier = GaussianNB()
|
||||||
|
# train on the split data
|
||||||
|
classifier.fit(x_train, y_train)
|
||||||
|
# test the model and print it's accurecy
|
||||||
|
score = classifier.score(x_test, y_test)
|
||||||
|
print(score)
|
||||||
|
|
||||||
|
# visualizing the learned means as 8x8 images
|
||||||
|
fig, axes = plt.subplots(2, 5, figsize=(12, 5))
|
||||||
|
for i, ax in enumerate(axes.flat):
|
||||||
|
ax.imshow(classifier.theta_[i].reshape(8, 8), cmap='gray_r')
|
||||||
|
ax.set_title(f'Class {i}')
|
||||||
|
ax.axis('off')
|
||||||
|
fig.suptitle('NB: Mean pixel intensity per class')
|
||||||
|
fig.savefig('naivebayes_digits_means.png', dpi=150, bbox_inches='tight')
|
||||||
|
|
||||||
|
# The variance plot shows where pixels vary most within a class:
|
||||||
|
# - high variance (bright) means that pixel isn't reliable for classification
|
||||||
|
# - low variance (dark) means it's consistent.
|
||||||
|
fig, axes = plt.subplots(2, 5, figsize=(12, 5))
|
||||||
|
for i, ax in enumerate(axes.flat):
|
||||||
|
ax.imshow(classifier.var_[i].reshape(8, 8), cmap='hot')
|
||||||
|
ax.set_title(f'Class {i}')
|
||||||
|
ax.axis('off')
|
||||||
|
fig.suptitle('NB: Pixel variance per class')
|
||||||
|
fig.savefig('naivebayes_digits_variance.png', dpi=150, bbox_inches='tight')
|
||||||
|
|
||||||
|
# plot the variance difference between two commonly confused digits like 3 and 8 to see
|
||||||
|
# on which pixels nb relies to tell them apart
|
||||||
|
plt.figure()
|
||||||
|
diff = abs(classifier.var_[3] - classifier.var_[8])
|
||||||
|
plt.imshow(diff.reshape(8, 8), cmap='hot')
|
||||||
|
plt.title('Variance difference: 3 vs 8')
|
||||||
|
plt.colorbar()
|
||||||
|
plt.savefig('naivebayes_3v8_variance.png', dpi=150, bbox_inches='tight')
|
||||||
|
After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 23 KiB |
@@ -0,0 +1,42 @@
|
|||||||
|
"""
|
||||||
|
Use the naive bayes classifier to classify the iris data set.
|
||||||
|
|
||||||
|
- This is an example of a supervised ML algorithm
|
||||||
|
- it has labels on the training data
|
||||||
|
- you tell the model: this is class X during training
|
||||||
|
"""
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn.model_selection import train_test_split
|
||||||
|
from sklearn.naive_bayes import GaussianNB
|
||||||
|
|
||||||
|
iris = datasets.load_iris()
|
||||||
|
print(iris.data.shape)
|
||||||
|
|
||||||
|
# split into training and test data
|
||||||
|
x_train, x_test, y_train, y_test = train_test_split(
|
||||||
|
iris.data, iris.target, test_size=0.2, random_state=0
|
||||||
|
)
|
||||||
|
|
||||||
|
# use a gaussian NB classifier
|
||||||
|
classifier = GaussianNB()
|
||||||
|
# train on the split data
|
||||||
|
classifier.fit(x_train, y_train)
|
||||||
|
# test the model and print it's accurecy
|
||||||
|
score = classifier.score(x_test, y_test)
|
||||||
|
print(score)
|
||||||
|
|
||||||
|
# plot the distributions (bell curves) for each feature and each flower
|
||||||
|
fig, axes = plt.subplots(2, 2, figsize=(12, 10))
|
||||||
|
for idx, ax in enumerate(axes.flat):
|
||||||
|
x_range = np.linspace(iris.data[:, idx].min() - 1, iris.data[:, idx].max() + 1, 200)
|
||||||
|
for class_idx, class_name in enumerate(iris.target_names):
|
||||||
|
mean = classifier.theta_[class_idx, idx]
|
||||||
|
var = classifier.var_[class_idx, idx]
|
||||||
|
gaussian = np.exp(-0.5 * (x_range - mean) ** 2 / var) / np.sqrt(2 * np.pi * var)
|
||||||
|
ax.plot(x_range, gaussian, label=class_name)
|
||||||
|
ax.set_title(iris.feature_names[idx])
|
||||||
|
ax.legend()
|
||||||
|
fig.savefig('naivebayes_iris_distributions.png', dpi=150, bbox_inches='tight')
|
||||||
|
After Width: | Height: | Size: 172 KiB |
@@ -0,0 +1,50 @@
|
|||||||
|
"""
|
||||||
|
Use the random forest classifier to classify the digits data set.
|
||||||
|
|
||||||
|
- This is an example of a supervised ML algorithm
|
||||||
|
- it has labels on the training data
|
||||||
|
- you tell the model: this is class X during training
|
||||||
|
"""
|
||||||
|
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn import tree
|
||||||
|
from sklearn.model_selection import train_test_split
|
||||||
|
from sklearn.ensemble import RandomForestClassifier
|
||||||
|
|
||||||
|
digits = datasets.load_digits()
|
||||||
|
print(digits.data.shape)
|
||||||
|
|
||||||
|
# split into training and test data
|
||||||
|
x_train, x_test, y_train, y_test = train_test_split(
|
||||||
|
digits.data, digits.target, test_size=0.2, random_state=0
|
||||||
|
)
|
||||||
|
|
||||||
|
# use a random forest classifier
|
||||||
|
classifier = RandomForestClassifier(n_estimators=100, random_state=42)
|
||||||
|
# train on the split data
|
||||||
|
classifier.fit(x_train, y_train)
|
||||||
|
# test the model and print it's accurecy
|
||||||
|
score = classifier.score(x_test, y_test)
|
||||||
|
print(score)
|
||||||
|
|
||||||
|
# get the first tree and turn it into an image
|
||||||
|
fig, ax = plt.subplots(figsize=(20, 10))
|
||||||
|
tree.plot_tree(
|
||||||
|
classifier.estimators_[0],
|
||||||
|
feature_names=digits.feature_names,
|
||||||
|
class_names=[str(n) for n in digits.target_names],
|
||||||
|
filled=True,
|
||||||
|
rounded=True,
|
||||||
|
ax=ax,
|
||||||
|
)
|
||||||
|
fig.savefig("randomforest_digits_tree_0.png", dpi=150, bbox_inches="tight")
|
||||||
|
|
||||||
|
# for digits, plot feature importance as 8x8 heatmap
|
||||||
|
importances = classifier.feature_importances_
|
||||||
|
plt.figure()
|
||||||
|
plt.imshow(importances.reshape(8, 8), cmap='hot')
|
||||||
|
plt.title('Random Forest: Feature Importance')
|
||||||
|
plt.colorbar()
|
||||||
|
plt.savefig('randomforest_digits_feature_importance.png', dpi=150, bbox_inches='tight')
|
||||||
|
After Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 330 KiB |
@@ -0,0 +1,49 @@
|
|||||||
|
"""
|
||||||
|
Use the random forest classifier to classify the iris data set.
|
||||||
|
|
||||||
|
- This is an example of a supervised ML algorithm
|
||||||
|
- it has labels on the training data
|
||||||
|
- you tell the model: this is class X during training
|
||||||
|
"""
|
||||||
|
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
from sklearn import datasets
|
||||||
|
from sklearn import tree
|
||||||
|
from sklearn.model_selection import train_test_split
|
||||||
|
from sklearn.ensemble import RandomForestClassifier
|
||||||
|
|
||||||
|
iris = datasets.load_iris()
|
||||||
|
print(iris.data.shape)
|
||||||
|
|
||||||
|
# split into training and test data
|
||||||
|
x_train, x_test, y_train, y_test = train_test_split(
|
||||||
|
iris.data, iris.target, test_size=0.2, random_state=0
|
||||||
|
)
|
||||||
|
|
||||||
|
# use a random forest classifier
|
||||||
|
classifier = RandomForestClassifier(n_estimators=100, random_state=42)
|
||||||
|
# train on the split data
|
||||||
|
classifier.fit(x_train, y_train)
|
||||||
|
# test the model and print it's accurecy
|
||||||
|
score = classifier.score(x_test, y_test)
|
||||||
|
print(score)
|
||||||
|
|
||||||
|
# get the first tree and turn it into an image
|
||||||
|
fig, ax = plt.subplots(figsize=(20, 10))
|
||||||
|
tree.plot_tree(
|
||||||
|
classifier.estimators_[0],
|
||||||
|
feature_names=iris.feature_names,
|
||||||
|
class_names=list(iris.target_names),
|
||||||
|
filled=True,
|
||||||
|
rounded=True,
|
||||||
|
ax=ax,
|
||||||
|
)
|
||||||
|
fig.savefig("randomforest_iris_tree_0.png", dpi=150, bbox_inches="tight")
|
||||||
|
|
||||||
|
# plot a bar chart with the importance of all features
|
||||||
|
plt.figure()
|
||||||
|
plt.barh(iris.feature_names, classifier.feature_importances_)
|
||||||
|
plt.xlabel('Importance')
|
||||||
|
plt.title('Random Forest: Feature Importance (Iris)')
|
||||||
|
plt.savefig('randomforest_iris_feature_importance.png', dpi=150, bbox_inches='tight')
|
||||||
|
After Width: | Height: | Size: 32 KiB |
|
After Width: | Height: | Size: 249 KiB |
@@ -0,0 +1,47 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<PMML xmlns="http://www.dmg.org/PMML-4_4" xmlns:data="http://jpmml.org/jpmml-model/InlineTable" version="4.4">
|
||||||
|
<Header>
|
||||||
|
<Application name="SkLearn2PMML package" version="0.119.1"/>
|
||||||
|
<Timestamp>2025-06-21T20:20:46Z</Timestamp>
|
||||||
|
</Header>
|
||||||
|
<MiningBuildTask>
|
||||||
|
<Extension name="repr">PMMLPipeline(steps=[('regressor', DecisionTreeRegressor(max_depth=2, random_state=1234))])</Extension>
|
||||||
|
</MiningBuildTask>
|
||||||
|
<DataDictionary>
|
||||||
|
<DataField name="Price" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Rooms" optype="continuous" dataType="float"/>
|
||||||
|
<DataField name="Type" optype="continuous" dataType="float"/>
|
||||||
|
<DataField name="Regionname_Southern_Metropolitan" optype="continuous" dataType="float"/>
|
||||||
|
</DataDictionary>
|
||||||
|
<TreeModel functionName="regression" algorithmName="sklearn.tree._classes.DecisionTreeRegressor" missingValueStrategy="nullPrediction" noTrueChildStrategy="returnLastPrediction">
|
||||||
|
<MiningSchema>
|
||||||
|
<MiningField name="Price" usageType="target"/>
|
||||||
|
<MiningField name="Rooms"/>
|
||||||
|
<MiningField name="Type"/>
|
||||||
|
<MiningField name="Regionname_Southern_Metropolitan"/>
|
||||||
|
</MiningSchema>
|
||||||
|
<LocalTransformations>
|
||||||
|
<DerivedField name="double(Rooms)" optype="continuous" dataType="double">
|
||||||
|
<FieldRef field="Rooms"/>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="double(Type)" optype="continuous" dataType="double">
|
||||||
|
<FieldRef field="Type"/>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="double(Regionname_Southern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<FieldRef field="Regionname_Southern_Metropolitan"/>
|
||||||
|
</DerivedField>
|
||||||
|
</LocalTransformations>
|
||||||
|
<Node score="2113002.898989899">
|
||||||
|
<True/>
|
||||||
|
<Node score="682863.3751581077">
|
||||||
|
<SimplePredicate field="double(Rooms)" operator="lessOrEqual" value="3.5"/>
|
||||||
|
<Node score="1077045.4976463942">
|
||||||
|
<SimplePredicate field="double(Type)" operator="lessOrEqual" value="1.5"/>
|
||||||
|
</Node>
|
||||||
|
</Node>
|
||||||
|
<Node score="1163850.4992142483">
|
||||||
|
<SimplePredicate field="double(Regionname_Southern_Metropolitan)" operator="lessOrEqual" value="0.5"/>
|
||||||
|
</Node>
|
||||||
|
</Node>
|
||||||
|
</TreeModel>
|
||||||
|
</PMML>
|
||||||
@@ -0,0 +1,89 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<PMML xmlns="http://www.dmg.org/PMML-4_4" xmlns:data="http://jpmml.org/jpmml-model/InlineTable" version="4.4">
|
||||||
|
<Header>
|
||||||
|
<Application name="SkLearn2PMML package" version="0.119.1"/>
|
||||||
|
<Timestamp>2025-06-21T20:20:46Z</Timestamp>
|
||||||
|
</Header>
|
||||||
|
<MiningBuildTask>
|
||||||
|
<Extension name="repr">PMMLPipeline(steps=[('regressor', LinearRegression())])</Extension>
|
||||||
|
</MiningBuildTask>
|
||||||
|
<DataDictionary>
|
||||||
|
<DataField name="Price" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Rooms" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Type" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Distance" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Bathroom" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Car" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logLandsize" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logBuildingArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="YearBuilt" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="CouncilArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Lattitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Longtitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Propertycount" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_S" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_SP" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_VB" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Northern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_South_Eastern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Southern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Victoria" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Western_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="month" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="year" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="day_of_week" optype="continuous" dataType="double"/>
|
||||||
|
</DataDictionary>
|
||||||
|
<RegressionModel functionName="regression" algorithmName="sklearn.linear_model._base.LinearRegression">
|
||||||
|
<MiningSchema>
|
||||||
|
<MiningField name="Price" usageType="target"/>
|
||||||
|
<MiningField name="Rooms"/>
|
||||||
|
<MiningField name="Type"/>
|
||||||
|
<MiningField name="Distance"/>
|
||||||
|
<MiningField name="Bathroom"/>
|
||||||
|
<MiningField name="Car"/>
|
||||||
|
<MiningField name="logLandsize"/>
|
||||||
|
<MiningField name="logBuildingArea"/>
|
||||||
|
<MiningField name="YearBuilt"/>
|
||||||
|
<MiningField name="CouncilArea"/>
|
||||||
|
<MiningField name="Lattitude"/>
|
||||||
|
<MiningField name="Longtitude"/>
|
||||||
|
<MiningField name="Propertycount"/>
|
||||||
|
<MiningField name="Method_S"/>
|
||||||
|
<MiningField name="Method_SP"/>
|
||||||
|
<MiningField name="Method_VB"/>
|
||||||
|
<MiningField name="Regionname_Northern_Metropolitan"/>
|
||||||
|
<MiningField name="Regionname_South_Eastern_Metropolitan"/>
|
||||||
|
<MiningField name="Regionname_Southern_Metropolitan"/>
|
||||||
|
<MiningField name="Regionname_Victoria"/>
|
||||||
|
<MiningField name="Regionname_Western_Metropolitan"/>
|
||||||
|
<MiningField name="month"/>
|
||||||
|
<MiningField name="year"/>
|
||||||
|
<MiningField name="day_of_week"/>
|
||||||
|
</MiningSchema>
|
||||||
|
<RegressionTable intercept="-1.486001530644718E8">
|
||||||
|
<NumericPredictor name="Rooms" coefficient="238730.9316843776"/>
|
||||||
|
<NumericPredictor name="Type" coefficient="-144127.0462703874"/>
|
||||||
|
<NumericPredictor name="Distance" coefficient="-41158.74149442419"/>
|
||||||
|
<NumericPredictor name="Bathroom" coefficient="155233.18486695606"/>
|
||||||
|
<NumericPredictor name="Car" coefficient="41608.24584805156"/>
|
||||||
|
<NumericPredictor name="logLandsize" coefficient="82294.47642306813"/>
|
||||||
|
<NumericPredictor name="logBuildingArea" coefficient="297716.9070603722"/>
|
||||||
|
<NumericPredictor name="YearBuilt" coefficient="-2767.549042441214"/>
|
||||||
|
<NumericPredictor name="CouncilArea" coefficient="-4929.3735515952385"/>
|
||||||
|
<NumericPredictor name="Lattitude" coefficient="-511115.932452351"/>
|
||||||
|
<NumericPredictor name="Longtitude" coefficient="179228.15909129355"/>
|
||||||
|
<NumericPredictor name="Propertycount" coefficient="-1.5874021046959097"/>
|
||||||
|
<NumericPredictor name="Method_S" coefficient="70775.86711001841"/>
|
||||||
|
<NumericPredictor name="Method_SP" coefficient="7998.548503785693"/>
|
||||||
|
<NumericPredictor name="Method_VB" coefficient="33895.327337749855"/>
|
||||||
|
<NumericPredictor name="Regionname_Northern_Metropolitan" coefficient="-173563.80389381657"/>
|
||||||
|
<NumericPredictor name="Regionname_South_Eastern_Metropolitan" coefficient="107806.72896395726"/>
|
||||||
|
<NumericPredictor name="Regionname_Southern_Metropolitan" coefficient="239261.2304157773"/>
|
||||||
|
<NumericPredictor name="Regionname_Victoria" coefficient="281825.04678020324"/>
|
||||||
|
<NumericPredictor name="Regionname_Western_Metropolitan" coefficient="-226744.90218339747"/>
|
||||||
|
<NumericPredictor name="month" coefficient="1272.5340782417852"/>
|
||||||
|
<NumericPredictor name="year" coefficient="53847.63382995822"/>
|
||||||
|
<NumericPredictor name="day_of_week" coefficient="3833.1129349071543"/>
|
||||||
|
</RegressionTable>
|
||||||
|
</RegressionModel>
|
||||||
|
</PMML>
|
||||||
@@ -0,0 +1,244 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<PMML xmlns="http://www.dmg.org/PMML-4_4" xmlns:data="http://jpmml.org/jpmml-model/InlineTable" version="4.4">
|
||||||
|
<Header>
|
||||||
|
<Application name="SkLearn2PMML package" version="0.119.1"/>
|
||||||
|
<Timestamp>2025-06-21T20:20:45Z</Timestamp>
|
||||||
|
</Header>
|
||||||
|
<MiningBuildTask>
|
||||||
|
<Extension name="repr">PMMLPipeline(steps=[('scaler', StandardScaler())])</Extension>
|
||||||
|
</MiningBuildTask>
|
||||||
|
<DataDictionary>
|
||||||
|
<DataField name="Rooms" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Type" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Distance" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Bathroom" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Car" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logLandsize" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logBuildingArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="YearBuilt" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="CouncilArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Lattitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Longtitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Propertycount" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_S" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_SP" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_VB" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Northern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_South_Eastern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Southern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Victoria" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Western_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="month" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="year" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="day_of_week" optype="continuous" dataType="double"/>
|
||||||
|
</DataDictionary>
|
||||||
|
<TransformationDictionary>
|
||||||
|
<DerivedField name="standardScaler(Rooms)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Rooms"/>
|
||||||
|
<Constant dataType="double">2.9317403359973904</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.9533169121486135</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Type)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Type"/>
|
||||||
|
<Constant dataType="double">1.4526178437449029</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.6844243657125287</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Distance)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Distance"/>
|
||||||
|
<Constant dataType="double">10.426749306801499</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">6.066336425774425</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Bathroom)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Bathroom"/>
|
||||||
|
<Constant dataType="double">1.434757788289023</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.6519175028229948</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Car)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Car"/>
|
||||||
|
<Constant dataType="double">1.6821073234382646</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.8558116035647958</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(logLandsize)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="logLandsize"/>
|
||||||
|
<Constant dataType="double">2.3661529658260885</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.84368444941179</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(logBuildingArea)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="logBuildingArea"/>
|
||||||
|
<Constant dataType="double">2.0990197773631265</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.18284993213113399</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(YearBuilt)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="YearBuilt"/>
|
||||||
|
<Constant dataType="double">1968.0455879954332</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">25.406461747131278</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(CouncilArea)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="CouncilArea"/>
|
||||||
|
<Constant dataType="double">5.748246615560268</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">6.170746654990085</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Lattitude)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Lattitude"/>
|
||||||
|
<Constant dataType="double">-37.80912136193117</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.07441963519407027</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Longtitude)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Longtitude"/>
|
||||||
|
<Constant dataType="double">144.99747812591744</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.09633550128190778</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Propertycount)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Propertycount"/>
|
||||||
|
<Constant dataType="double">7520.394470722557</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">4504.100770431253</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Method_S)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Method_S"/>
|
||||||
|
<Constant dataType="double">0.657396835752732</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.4745800628924771</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Method_SP)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Method_SP"/>
|
||||||
|
<Constant dataType="double">0.12909802642309573</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.3353084043037952</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Method_VB)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Method_VB"/>
|
||||||
|
<Constant dataType="double">0.09182841298320013</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.2887835790902713</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Northern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Northern_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.2894307617028217</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.4534981762730101</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_South_Eastern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_South_Eastern_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.03735116620453433</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.18962082319116638</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Southern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Southern_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.3430109280704616</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.4747151053997568</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Victoria)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Victoria"/>
|
||||||
|
<Constant dataType="double">0.010112542815201435</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.10005138326386172</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Western_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Western_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.210650791061817</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.40777081220564054</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(month)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="month"/>
|
||||||
|
<Constant dataType="double">7.152748328168325</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">2.493359348369748</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(year)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="year"/>
|
||||||
|
<Constant dataType="double">2016.5621432066548</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.49612319222817086</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(day_of_week)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="day_of_week"/>
|
||||||
|
<Constant dataType="double">4.8392595008970805</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">1.1094918421491333</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
</TransformationDictionary>
|
||||||
|
</PMML>
|
||||||
@@ -0,0 +1,845 @@
|
|||||||
|
iter Logloss
|
||||||
|
0 0.6715355719
|
||||||
|
1 0.6500104902 2 0.628337545333 0.60966944 044 0.59078205 055 0.57752576 0.6 0.55778077 077 0.54203558 8 8 0.52958589 9 9 0.51714610 1110 0.50423311 11 0.4929307812 12 0.4814072133
|
||||||
|
13 0.4713296171
|
||||||
|
14 0.4618167061
|
||||||
|
15 0.452625197
|
||||||
|
16 0.4442922771717 0.4361589191818 0.4279240561919 0.4218459572020 0.4151507422121 0.409436976222 0.4037422555223 0.3976515008224 0.3923734357225 25 0.389420826 026 0.383436327 027 0.378636828 0.3794535398
|
||||||
|
29 0.3757155885
|
||||||
|
30 0.3717786395
|
||||||
|
31 0.3691171784
|
||||||
|
32 0.3657305059
|
||||||
|
33 0.3632016139
|
||||||
|
34 0.3602285367
|
||||||
|
35 0.3563286411
|
||||||
|
36 0.3536211155
|
||||||
|
37 0.3504242069
|
||||||
|
38 0.3484263966
|
||||||
|
39 0.3458929487
|
||||||
|
40 0.3438820826
|
||||||
|
41 0.3420411561
|
||||||
|
42 0.3396861143
|
||||||
|
43 0.3381319584
|
||||||
|
44 0.3363482476
|
||||||
|
45 0.3345493897
|
||||||
|
46 0.3330299771
|
||||||
|
47 0.3318525724
|
||||||
|
48 0.3309013752
|
||||||
|
49 0.3298096059
|
||||||
|
50 0.3284301698
|
||||||
|
51 0.3269025361
|
||||||
|
52 0.3248681668
|
||||||
|
53 0.3235173677
|
||||||
|
54 0.32236862
|
||||||
|
55 0.3215182991
|
||||||
|
56 0.3204347043
|
||||||
|
57 0.318931893
|
||||||
|
58 0.3175421302
|
||||||
|
59 0.3165771979
|
||||||
|
60 0.3156489037
|
||||||
|
61 0.3144519398
|
||||||
|
62 0.3136613844
|
||||||
|
63 0.3128673057
|
||||||
|
64 0.312212034
|
||||||
|
65 0.3114018298
|
||||||
|
66 0.3106629251
|
||||||
|
67 0.310034156
|
||||||
|
68 0.3092989124
|
||||||
|
69 0.3088944431
|
||||||
|
70 0.3081516939
|
||||||
|
71 0.3075363379
|
||||||
|
72 0.3067525669
|
||||||
|
73 0.3056937007
|
||||||
|
74 0.3046441095
|
||||||
|
75 0.3034415851
|
||||||
|
76 076 0.295545077 077 0.29487978 0.78 0.29434479 0.79 0.2939280 0.380 0.293281 0.2981 0.292782 0.2982 0.29283 0.29883 0.29184 0.2976595593
|
||||||
|
85 0.29785 0.2986 0.2967502188
|
||||||
|
87 0.2962570112
|
||||||
|
88 0.2958939803
|
||||||
|
89 0.2955636397
|
||||||
|
90 0.2949822244
|
||||||
|
91 0.29491 0.28792 0.29492 0.28793 0.2933773115
|
||||||
|
94 0.2929786319
|
||||||
|
95 0.2927127209
|
||||||
|
96 0.2923617196
|
||||||
|
97 0.2920127162
|
||||||
|
98 0.2917110356
|
||||||
|
99 0.2913174166
|
||||||
|
100 0.2909765376
|
||||||
|
101 0.2906426256
|
||||||
|
102 0.2902903937
|
||||||
|
103 0.289738585
|
||||||
|
104 0.2893907106
|
||||||
|
105 0.2890596207
|
||||||
|
106 0.288792732
|
||||||
|
107 0.288534817
|
||||||
|
108 0.2882073116
|
||||||
|
109 0.2876705255
|
||||||
|
110 0.2873647727
|
||||||
|
111 0.2871375052
|
||||||
|
112 0.2867474887
|
||||||
|
113 0.2864232213
|
||||||
|
114 0.2860121057
|
||||||
|
115 0.2856438106
|
||||||
|
116 0.2854464634
|
||||||
|
117 0.2851231367
|
||||||
|
118 0.2847282285
|
||||||
|
119 0.2844702651
|
||||||
|
120 0.2842679116
|
||||||
|
121 0.2839106114
|
||||||
|
122 0.2837456336
|
||||||
|
123 0.2834910124
|
||||||
|
124 0.2832364481
|
||||||
|
125 0.2831050547
|
||||||
|
126 0.2828182024
|
||||||
|
127 0.2825989469
|
||||||
|
128 0.2823589042
|
||||||
|
129 0.2820757526
|
||||||
|
130 0.2816758823
|
||||||
|
131 0.2814171024
|
||||||
|
132 0.2809784086
|
||||||
|
133 0.2807750643
|
||||||
|
134 0.2802622838
|
||||||
|
135 0.2801679472
|
||||||
|
136 0.2799283915
|
||||||
|
137 0.2797753843
|
||||||
|
138 0.2795553411
|
||||||
|
139 0.2790582386
|
||||||
|
140 0.2787916767
|
||||||
|
141 0.2784819034
|
||||||
|
142 0.2781899858
|
||||||
|
143 0.2777745463
|
||||||
|
144 0.2774850792
|
||||||
|
145 0.2771480654
|
||||||
|
146 0.2770049212
|
||||||
|
147 0.2768221416
|
||||||
|
148 0.276566122
|
||||||
|
149 0.2764094158
|
||||||
|
150 0.2762456947
|
||||||
|
151 0.2759876734
|
||||||
|
152 0.2755418589
|
||||||
|
153 0.2753300818
|
||||||
|
154 0.2751304602
|
||||||
|
155 0.2749359612
|
||||||
|
156 0.2748264315
|
||||||
|
157 0.2745800918
|
||||||
|
158 0.2742472939
|
||||||
|
159 0.2740881719
|
||||||
|
160 0.2738565523
|
||||||
|
161 0.273609089
|
||||||
|
162 0.2734032283
|
||||||
|
163 0.2732939985
|
||||||
|
164 0.27164 0.271165 0.27165 0.271166 0.27166 0.270167 0.27167 0.270168 0.27168 0.270169 0.27169 0.270170 0.27170 0.269171 0.27171 0.269172 0.27172 0.269173 0.2173 0.269174 0.27174 0.269175 0.2175 0.2690176 0.2176 0.2687177 0.2177 0.2685178 0.2178 0.2684179 0.2179 0.2680180 0180 0.267876181 0181 0.267755182 0182 0.267473183 0183 0.267351184 0184 0.267194185 0185 0.26700186 0186 0.26687187 0.187 0.26670188 0.188 0.2664957386
|
||||||
|
189 0.266362267
|
||||||
|
190 0.2661136479
|
||||||
|
191 0.2658698416
|
||||||
|
192 0.2657868936
|
||||||
|
193 0.265665353
|
||||||
|
194 0.2653983404
|
||||||
|
195 0.2652371509
|
||||||
|
196 0.2651063849
|
||||||
|
197 0.264913291
|
||||||
|
198 0.2647556863
|
||||||
|
199 0.2645733951
|
||||||
|
200 0.264427887
|
||||||
|
201 0.2642523528
|
||||||
|
202 0.2641045862
|
||||||
|
203 0.2639229314
|
||||||
|
204 0.2637726889
|
||||||
|
205 0.2635740419
|
||||||
|
206 0.26334242720207 0.26314082920208 0.263003622209 0.2628850388
|
||||||
|
210 0.2627407842
|
||||||
|
211 0.2626431306
|
||||||
|
212 0.2624728347
|
||||||
|
213 0.2622310925
|
||||||
|
214 0.2620532664
|
||||||
|
215 0.2618205654
|
||||||
|
216 0.2616589509
|
||||||
|
217 0.2614757645
|
||||||
|
218 0.2612767208
|
||||||
|
219 0.26086677522220 0.2607452221 221 0.2606090222222 0.2604421223 223 0.2603288224 224 0.2601877225 225 0.2600486226226 0.25989308227227 0.25975458228228 0.25941261229229 0.25930457230230 0.2591708023231 0.25908766323232 0.2589107169
|
||||||
|
233 0.258706153
|
||||||
|
234 0.2584906816
|
||||||
|
235 0.2583584315
|
||||||
|
236 0.2581589555
|
||||||
|
237 0.257929247
|
||||||
|
238 0.2578443862
|
||||||
|
239 0.2576799959
|
||||||
|
240 0.2574729962
|
||||||
|
241 0.2573334764
|
||||||
|
242 0.2572371053
|
||||||
|
243 0.25706023824244 0.2569646905
|
||||||
|
245 0.2568318486
|
||||||
|
246 0.256676895
|
||||||
|
247 0.2565448555
|
||||||
|
248 0.2563555465
|
||||||
|
249 0.25619328
|
||||||
|
250 0.2560606951
|
||||||
|
251 0.2558568112
|
||||||
|
2252 0.25761936662253 0.257444013
|
||||||
|
254 0.2573545493
|
||||||
|
255 0.2572290353
|
||||||
|
256 0.2570372912
|
||||||
|
257 0.2568998636
|
||||||
|
258 0.2567575768
|
||||||
|
259 0.2565983849
|
||||||
|
260 0.2564866484
|
||||||
|
261 0.2563507181
|
||||||
|
262 0.2562108287
|
||||||
|
263 0.2560651128
|
||||||
|
264 0.2558375368
|
||||||
|
265 0.2557119265
|
||||||
|
266 0.2556488469
|
||||||
|
267 0.2554304808
|
||||||
|
268 0.2553181749
|
||||||
|
269 0.2551502773
|
||||||
|
270 0.2529029506
|
||||||
|
271 0.2527878029
|
||||||
|
272 0.2546905989
|
||||||
|
273 0.2545215518
|
||||||
|
274 0.2543160817
|
||||||
|
275 0.2541791875
|
||||||
|
276 0.2540513566
|
||||||
|
277 0.2539534559
|
||||||
|
278 0.2538241785
|
||||||
|
279 0.2537508829
|
||||||
|
280 0.2536468795
|
||||||
|
281 0.2534796288
|
||||||
|
282 0.2533210302
|
||||||
|
283 0.2531855087
|
||||||
|
284 0.253060364
|
||||||
|
285 0.252938553
|
||||||
|
286 0.2528939278
|
||||||
|
287 0.2528076195
|
||||||
|
288 0.2526059889
|
||||||
|
289 0.252516485
|
||||||
|
290 0.252431445
|
||||||
|
291 0.2523196753
|
||||||
|
292 0.2522181392
|
||||||
|
293 0.2521492932
|
||||||
|
294 0.2520099701
|
||||||
|
295 0.2518281723
|
||||||
|
296 0.2517333023
|
||||||
|
297 0.2516314819
|
||||||
|
298 0.2514894085
|
||||||
|
299 0.2512929534
|
||||||
|
300 0.251161837
|
||||||
|
301 0.2510757996
|
||||||
|
302 0.2509626284
|
||||||
|
303 0.250759337
|
||||||
|
304 0.2506852761
|
||||||
|
305 0.2505584546
|
||||||
|
306 0.2503785971
|
||||||
|
307 0.2502082196
|
||||||
|
308 0.2500811161
|
||||||
|
309 0.2498829037
|
||||||
|
310 0.249807873
|
||||||
|
311 0.2497761951
|
||||||
|
312 0.2496915317
|
||||||
|
313 0.2495364852
|
||||||
|
314 0.2494153896
|
||||||
|
315 0.2493185598
|
||||||
|
316 0.249183293
|
||||||
|
317 0.249015424
|
||||||
|
318 0.2489144142
|
||||||
|
319 0.24878961
|
||||||
|
320 0.2486696127
|
||||||
|
321 0.2485368039
|
||||||
|
322 0.2484308881
|
||||||
|
323 0.248312298
|
||||||
|
324 0.2481997015
|
||||||
|
325 0.2481188867
|
||||||
|
326 0.2479984017
|
||||||
|
327 0.2478591456
|
||||||
|
328 0.2477113693
|
||||||
|
329 0.2475420313
|
||||||
|
330 0.2473880646
|
||||||
|
331 0.2472143685
|
||||||
|
332 0.2470477079
|
||||||
|
333 0.2469472656
|
||||||
|
334 0.2468033089
|
||||||
|
335 0.2466792314
|
||||||
|
336 0.2465228002
|
||||||
|
337 0.246467637
|
||||||
|
338 0.2463454509
|
||||||
|
339 0.2463055341
|
||||||
|
340 0.2461509115
|
||||||
|
341 0.2459972066
|
||||||
|
342 0.2458799621
|
||||||
|
343 0.2457697806
|
||||||
|
344 0.2456379602
|
||||||
|
345 0.2455365372
|
||||||
|
346 0.245390909
|
||||||
|
347 0.2452414004
|
||||||
|
348 0.2450948022
|
||||||
|
349 0.2449969959
|
||||||
|
350 0.2448391866
|
||||||
|
351 0.2446539586
|
||||||
|
352 0.2445683498
|
||||||
|
353 0.244452316
|
||||||
|
354 0.2443607228
|
||||||
|
355 0.2442654109
|
||||||
|
356 0.2441466725
|
||||||
|
357 0.2440027311
|
||||||
|
358 0.2438814211
|
||||||
|
359 0.2437390836
|
||||||
|
360 0.2436186585
|
||||||
|
361 0.2434403101
|
||||||
|
362 0.2432984141
|
||||||
|
363 0.2430163168
|
||||||
|
364 0.2429432348
|
||||||
|
365 0.2428623686
|
||||||
|
366 0.2426621444
|
||||||
|
367 0.2424578679
|
||||||
|
368 0.2423716254
|
||||||
|
369 0.2422000161
|
||||||
|
370 0.2420397528
|
||||||
|
371 0.241938025
|
||||||
|
372 0.2418099345
|
||||||
|
373 0.2417362403
|
||||||
|
374 0.2416968754
|
||||||
|
375 0.2415959776
|
||||||
|
376 0.2415044143
|
||||||
|
377 0.2414036719
|
||||||
|
378 0.2413144588
|
||||||
|
379 0.2411997505
|
||||||
|
380 0.2409918953
|
||||||
|
381 0.2409076377
|
||||||
|
382 0.2407821352
|
||||||
|
383 0.2406444599
|
||||||
|
384 0.2405312344
|
||||||
|
385 0.2404221339
|
||||||
|
386 0.2403162569
|
||||||
|
387 0.2402180684
|
||||||
|
388 0.2401040161
|
||||||
|
389 0.2399174923
|
||||||
|
390 0.2397740489
|
||||||
|
391 0.2396549174
|
||||||
|
392 0.2394659357
|
||||||
|
393 0.2392422044
|
||||||
|
394 0.239124725
|
||||||
|
395 0.2390173787
|
||||||
|
396 0.2388836747
|
||||||
|
397 0.2388193253
|
||||||
|
398 0.2387095384
|
||||||
|
399 0.2385784603
|
||||||
|
400 0.238428024
|
||||||
|
401 0.238286148
|
||||||
|
402 0.2381384209
|
||||||
|
403 0.2380085855
|
||||||
|
404 0.2378074478
|
||||||
|
405 0.2376414464
|
||||||
|
406 0.2375301155
|
||||||
|
407 0.2373500664
|
||||||
|
408 0.2371299706
|
||||||
|
409 0.2370354963
|
||||||
|
410 0.2368820977
|
||||||
|
411 0.2367257734
|
||||||
|
412 0.2366225093
|
||||||
|
413 0.2364888794
|
||||||
|
414 0.236357993
|
||||||
|
415 0.2361769763
|
||||||
|
416 0.2360451019
|
||||||
|
417 0.2359401969
|
||||||
|
418 0.2358386521
|
||||||
|
419 0.2357085942
|
||||||
|
420 0.2355723146
|
||||||
|
421 0.2353819868
|
||||||
|
422 0.235208862
|
||||||
|
423 0.2351666693
|
||||||
|
424 0.2349425824
|
||||||
|
425 0.2348564318
|
||||||
|
426 0.2347793051
|
||||||
|
427 0.234635617
|
||||||
|
428 0.2345190851
|
||||||
|
429 0.234346511
|
||||||
|
430 0.2342451178
|
||||||
|
431 0.2341454553
|
||||||
|
432 0.2341067534
|
||||||
|
433 0.2339745587
|
||||||
|
434 0.2339165625
|
||||||
|
435 0.2338332876
|
||||||
|
436 0.233759364
|
||||||
|
437 0.2336547665
|
||||||
|
438 0.233574331
|
||||||
|
439 0.233463469
|
||||||
|
440 0.2334118993
|
||||||
|
441 0.2332008858
|
||||||
|
442 0.2330763787
|
||||||
|
443 0.2328962545
|
||||||
|
444 0.2327718352
|
||||||
|
445 0.2325767542
|
||||||
|
446 0.2325135609
|
||||||
|
447 0.2324561774
|
||||||
|
448 0.2322494832
|
||||||
|
449 0.2321726483
|
||||||
|
450 0.2320481129
|
||||||
|
451 0.2319412309
|
||||||
|
452 0.2318444609
|
||||||
|
453 0.2317409901
|
||||||
|
454 0.231635057
|
||||||
|
455 0.2314943555
|
||||||
|
456 0.2313381946
|
||||||
|
457 0.2312849151
|
||||||
|
458 0.2312003718
|
||||||
|
459 0.2311333753
|
||||||
|
460 0.2310068691
|
||||||
|
461 0.2309185959
|
||||||
|
462 0.2308165199
|
||||||
|
463 0.2307248742
|
||||||
|
464 0.2306381584
|
||||||
|
465 0.2305601601
|
||||||
|
466 0.2304672421
|
||||||
|
467 0.2302764413
|
||||||
|
468 0.2301451112
|
||||||
|
469 0.230023544
|
||||||
|
470 0.2298875391
|
||||||
|
471 0.2297757454
|
||||||
|
472 0.2296864367
|
||||||
|
473 0.2296073575
|
||||||
|
474 0.229518713
|
||||||
|
475 0.2294627614
|
||||||
|
476 0.2292573337
|
||||||
|
477 0.2291335591
|
||||||
|
478 0.2290855056
|
||||||
|
479 0.2289984126
|
||||||
|
480 0.2289477607
|
||||||
|
481 0.2287188845
|
||||||
|
482 0.2285575159
|
||||||
|
483 0.2284497673
|
||||||
|
484 0.2283893552
|
||||||
|
485 0.2282141027
|
||||||
|
486 0.2279766928
|
||||||
|
487 0.2279502749
|
||||||
|
488 0.2278614808
|
||||||
|
489 0.2277568426
|
||||||
|
490 0.2276580223
|
||||||
|
491 0.2275783133
|
||||||
|
492 0.2275069093
|
||||||
|
493 0.2274044203
|
||||||
|
494 0.2272090293
|
||||||
|
495 0.2271293126
|
||||||
|
496 0.227022249
|
||||||
|
497 0.2268998836
|
||||||
|
498 0.2267174312
|
||||||
|
499 0.2265308066
|
||||||
|
500 0.2263558855
|
||||||
|
501 0.2262839397
|
||||||
|
502 0.2261074526
|
||||||
|
503 0.2260589388
|
||||||
|
504 0.2259620037
|
||||||
|
505 0.2258239246
|
||||||
|
506 0.2257021737
|
||||||
|
507 0.2256233142
|
||||||
|
508 0.2254568235
|
||||||
|
509 0.2253782036
|
||||||
|
510 0.2252923731
|
||||||
|
511 0.2252153148
|
||||||
|
512 0.2251011445
|
||||||
|
513 0.2249799184
|
||||||
|
514 0.2249385102
|
||||||
|
515 0.2247559255
|
||||||
|
516 0.2246312837
|
||||||
|
517 0.2244927134
|
||||||
|
518 0.2242212439
|
||||||
|
519 0.2241349844
|
||||||
|
520 0.2240605028
|
||||||
|
521 0.223984483
|
||||||
|
522 0.2237981956
|
||||||
|
523 0.2237256507
|
||||||
|
5524 0.22385886595525 0.22376262635526 0.2235791158527 0.2231165879
|
||||||
|
5528 0.22335977375529 0.2232904164
|
||||||
|
530 0.22320548365531 0.22303399353532 0.22287968753533 0.22277903553534 0.22266325553535 0.222594593536 0.2222462479
|
||||||
|
537 0.2221446555
|
||||||
|
538 0.2220074116
|
||||||
|
539 0.2218753682
|
||||||
|
540 0.2217279725
|
||||||
|
541 0.2215278674
|
||||||
|
542 0.2214397229
|
||||||
|
543 0.2213313216
|
||||||
|
544 0.2212424892
|
||||||
|
545 0.2211267104
|
||||||
|
546 0.221058413
|
||||||
|
547 0.2209798705
|
||||||
|
548 0.2208630304
|
||||||
|
549 0.2206737075
|
||||||
|
550 0.2205194543
|
||||||
|
551 0.2204547144
|
||||||
|
552 0.2202746715
|
||||||
|
553 0.220190974
|
||||||
|
554 0.2201306606
|
||||||
|
555 0.2200181894
|
||||||
|
556 0.2199530085
|
||||||
|
557 0.2198615437
|
||||||
|
558 0.2197844022
|
||||||
|
559 0.2196566038
|
||||||
|
560 0.2194860412
|
||||||
|
561 0.2193479078
|
||||||
|
562 0.2192304752
|
||||||
|
563 0.2191926354
|
||||||
|
564 0.2191247914
|
||||||
|
565 0.219021307
|
||||||
|
566 0.2189163296
|
||||||
|
567 0.2188279593
|
||||||
|
568 0.2187010131
|
||||||
|
569 0.2186055581
|
||||||
|
570 0.2185275634
|
||||||
|
571 0.2184622755
|
||||||
|
572 0.2183830614
|
||||||
|
573 0.2182650336
|
||||||
|
574 0.2181024144
|
||||||
|
575 0.2180116354
|
||||||
|
576 0.2179579982
|
||||||
|
577 0.2178746878
|
||||||
|
578 0.2177632613
|
||||||
|
579 0.2176899773
|
||||||
|
580 0.2175603564
|
||||||
|
581 0.2174915483
|
||||||
|
582 0.2174379661
|
||||||
|
583 0.2173251156
|
||||||
|
584 0.2171693914
|
||||||
|
585 0.2170266494
|
||||||
|
586 0.216864334
|
||||||
|
587 0.2168034872
|
||||||
|
588 0.2167335989
|
||||||
|
589 0.2166304359
|
||||||
|
590 0.2164724669
|
||||||
|
591 0.2163198821
|
||||||
|
592 0.2162064726
|
||||||
|
593 0.2161018554
|
||||||
|
594 0.2160103315
|
||||||
|
595 0.2158800181
|
||||||
|
596 0.2157548594
|
||||||
|
597 0.215698425
|
||||||
|
598 0.2155549787
|
||||||
|
599 0.2154764111
|
||||||
|
600 0.2153801721
|
||||||
|
601 0.2152445929
|
||||||
|
602 0.2151411293
|
||||||
|
603 0.2149957359
|
||||||
|
604 0.2148907006
|
||||||
|
605 0.21481046
|
||||||
|
606 0.2147547089
|
||||||
|
607 0.2145890612
|
||||||
|
608 0.2144855403
|
||||||
|
609 0.2143502306
|
||||||
|
610 0.2142863952
|
||||||
|
611 0.2140713228
|
||||||
|
612 0.2139516988
|
||||||
|
613 0.213833705
|
||||||
|
614 0.2137724275
|
||||||
|
615 0615 0.21472616 0.616 0.21461617 0617 0.214560618 0618 0.214500619 0619 0.214408620 0620 0.214339621 0621 0.214243622 0622 0.214137623 0623 0.214008624 0624 0.213951625 0625 0.213780626 0626 0.2137644769
|
||||||
|
627 0.2135857868
|
||||||
|
628 0.2135479067
|
||||||
|
629 0.2134538772
|
||||||
|
630 0.2133340221
|
||||||
|
631 0.2132292656
|
||||||
|
632 0.213112633 0633 0.212972634 0634 0.2128635 0.2635 0.2127636 0.2118510496
|
||||||
|
637 0.2116834225
|
||||||
|
638 0.638 0.2125639 0.2114202615
|
||||||
|
640 0.2113445402
|
||||||
|
641 0.2112853157
|
||||||
|
642 0.2112158115
|
||||||
|
643 0.2111316421
|
||||||
|
644 0.2109834817
|
||||||
|
645 0.2108969759
|
||||||
|
646 0.2108803226
|
||||||
|
647 0.2107759254
|
||||||
|
648 0.2106780292
|
||||||
|
649 0.2105048205
|
||||||
|
650 0.2104594373
|
||||||
|
651 0.210396087
|
||||||
|
652 0.2103460393
|
||||||
|
653 0.2102946071
|
||||||
|
654 0.2101566534
|
||||||
|
655 0.2100883725
|
||||||
|
656 0.2100653199
|
||||||
|
657 0.2099599454
|
||||||
|
658 0.2098735874
|
||||||
|
659 0.2097640203
|
||||||
|
660 0.2096592145
|
||||||
|
661 0.2096139103
|
||||||
|
662 0.2095420758
|
||||||
|
663 0.2094600533
|
||||||
|
664 0.2093671283
|
||||||
|
665 0.2092667665
|
||||||
|
666 0.2091092788
|
||||||
|
667 0.2090712195
|
||||||
|
668 0.2089494467
|
||||||
|
669 0.2088626897
|
||||||
|
670 0.2088150318
|
||||||
|
671 0.2087060848
|
||||||
|
672 0.2086060252
|
||||||
|
673 0.2085728425
|
||||||
|
674 0.2085014618
|
||||||
|
675 0.2084382408
|
||||||
|
676 0.2083550429
|
||||||
|
677 0.2082908508
|
||||||
|
678 0.2081572112
|
||||||
|
679 0.2080626141
|
||||||
|
680 0.2079779102
|
||||||
|
681 0.2078554069
|
||||||
|
682 0.2077728527
|
||||||
|
683 0.2076214333
|
||||||
|
684 0.2075344272
|
||||||
|
685 0.2074853035
|
||||||
|
686 0.20736748
|
||||||
|
687 0.2072321229
|
||||||
|
688 0.2070764962
|
||||||
|
689 0.206959924
|
||||||
|
690 0.2069038453
|
||||||
|
691 0.2068433554
|
||||||
|
692 0.2067499536
|
||||||
|
693 0.2066997999
|
||||||
|
694 0.2065947069
|
||||||
|
695 0.206445379
|
||||||
|
696 0.2063923529
|
||||||
|
697 0.2062890568
|
||||||
|
698 0.2062267393
|
||||||
|
699 0.2061734689
|
||||||
|
700 0.2060068816
|
||||||
|
701 0.2058658631
|
||||||
|
702 0.2057625962
|
||||||
|
703 0.2055892085
|
||||||
|
704 0704 0.20642705 0.2053025211
|
||||||
|
706 0.2051688713
|
||||||
|
707 0.707 0.20618708 0.2050085237
|
||||||
|
709 0.2049088367
|
||||||
|
710 0.2048239642
|
||||||
|
711 0.2047316542
|
||||||
|
712 0.2046032672
|
||||||
|
713 0.2044329749
|
||||||
|
714 0714 0.20548715 0.715 0.20541716 0.716 0.20536717 0.717 0.20524718 0.718 0.20519719 0.719 0.20513720 0.720 0.20510721 0.721 0.20501722 0.722 0.20498723 0.723 0.20493724 0.724 0.20486725 0.725 0.20479726 0.726 0.2047330242
|
||||||
|
727 0.204639792
|
||||||
|
728 0.2045057031
|
||||||
|
729 0.20436730 0.730 0.20429731 0.731 0.20424732 0.732 0.20415733 0.2026522041
|
||||||
|
734 0.734 0.20395735 0.735 0.20387736 0.736 0.20382737 0.737 0.20376738 0.2021816826
|
||||||
|
739 0.2020455078
|
||||||
|
740 0.2018938656
|
||||||
|
741 0.2017567672
|
||||||
|
742 0.2016824228
|
||||||
|
743 0.2016070108
|
||||||
|
744 0.2014842704
|
||||||
|
745 0.2014104849
|
||||||
|
746 0.2013393837
|
||||||
|
747 0.2012833162
|
||||||
|
748 0.2012559259
|
||||||
|
749 0.2011516509
|
||||||
|
750 0.2010261293
|
||||||
|
751 0.2008588018
|
||||||
|
752 0.2007177314
|
||||||
|
753 0.2005909782
|
||||||
|
754 0.2004566848
|
||||||
|
755 0.2003678939
|
||||||
|
756 0.200265596
|
||||||
|
757 0.2002121035
|
||||||
|
758 0.2001129327
|
||||||
|
759 0.2000131959
|
||||||
|
760 0.1999159409
|
||||||
|
761 0.1997892077
|
||||||
|
762 0.1997150572
|
||||||
|
763 0.1995562023
|
||||||
|
764 0.1994189202
|
||||||
|
765 0.1993814234
|
||||||
|
766 0.1993107055
|
||||||
|
767 0.19923773
|
||||||
|
768 0.1991631234
|
||||||
|
769 0.1990231522
|
||||||
|
770 0.1989572232
|
||||||
|
771 0.1989065496
|
||||||
|
772 0.198810354
|
||||||
|
773 0.1987187126
|
||||||
|
774 0.198602681
|
||||||
|
775 0.198544289
|
||||||
|
776 776 0.1974275777777 0.19737911778778 0.19731560779779 0.19729760780780 0.19726183781781 0.19718989782782 0.19714483783783 0.1971086784 784 0.1970310785 785 0.1969040102
|
||||||
|
786 0.1968767787 787 0.1968223788788 0.19671808789 0.1971688679
|
||||||
|
790 0.1971133505
|
||||||
|
791 0.1970573064
|
||||||
|
792 0.1969309651
|
||||||
|
793 0.196822851
|
||||||
|
794 0.1967037121
|
||||||
|
795 0.1965664955
|
||||||
|
796 0.1964988227
|
||||||
|
797 0.1964288204
|
||||||
|
798 0.1962998362
|
||||||
|
799 0.1962072888
|
||||||
|
800 0.1960950051
|
||||||
|
801 0.196044112
|
||||||
|
802 0.1959964318
|
||||||
|
803 0.1959442302
|
||||||
|
804 0.1959037122
|
||||||
|
805 0.1957869796
|
||||||
|
806 0.1956498038
|
||||||
|
807 0.1955275716
|
||||||
|
808 0.1954511929
|
||||||
|
809 0.1953156204
|
||||||
|
810 0.1952535142
|
||||||
|
811 0.1951393533
|
||||||
|
812 0.1950848436
|
||||||
|
813 0.1949760076
|
||||||
|
814 0.1948895198
|
||||||
|
815 0.1948040409
|
||||||
|
816 0.1946758699
|
||||||
|
817 0.1945703718
|
||||||
|
818 0.1945049746
|
||||||
|
819 0.1944564152
|
||||||
|
820 0.1943254884
|
||||||
|
821 0.1942024297
|
||||||
|
822 0.1941361423
|
||||||
|
823 0.1940355461
|
||||||
|
824 0.193928491
|
||||||
|
825 0.1938722662
|
||||||
|
826 0.1938241723
|
||||||
|
827 0.1937563974
|
||||||
|
828 0.1936496047
|
||||||
|
829 0.1935365196
|
||||||
|
830 0.193436826
|
||||||
|
831 0.1934245063
|
||||||
|
832 0.1933003321
|
||||||
|
833 0.1931803445
|
||||||
|
834 0.1931194794
|
||||||
|
835 0.1930578233
|
||||||
|
836 0.1929893039
|
||||||
|
837 0.1928975868
|
||||||
|
838 0.192815136
|
||||||
|
839 0.1926973762
|
||||||
|
840 0.192642313
|
||||||
|
841 0.1925744074
|
||||||
|
842 0.1924976177
|
||||||
|
843 0.1924535229
|
||||||
|
844 0.1923759868
|
||||||
|
845 0.1922892698
|
||||||
|
846 0.1922402248
|
||||||
|
847 0.1921752729
|
||||||
|
848 0.1920466624
|
||||||
|
849 0.1919349155
|
||||||
|
850 0.1918797293
|
||||||
|
851 0.1918321291
|
||||||
|
852 0.1917885763
|
||||||
|
853 0.1917436879
|
||||||
|
854 0.1916714435
|
||||||
|
855 0.1915585621
|
||||||
|
856 0.1914585379
|
||||||
|
857 0.191366928
|
||||||
|
858 0.1912387077
|
||||||
|
859 0.1911316581
|
||||||
|
860 0.1910178787
|
||||||
|
861 0.1909128097
|
||||||
|
862 0.1908743757
|
||||||
|
863 0.1907896694
|
||||||
|
864 0.1906881947
|
||||||
|
865 0.1905467185
|
||||||
|
866 0.1905101728
|
||||||
|
867 0.1904734468
|
||||||
|
868 0.1903627676
|
||||||
|
869 0.1902835324
|
||||||
|
870 0.1901353705
|
||||||
|
871 0.1900130826
|
||||||
|
872 0.1898964985
|
||||||
|
873 0.189843312
|
||||||
|
874 0.1898091057
|
||||||
|
875 0.1897611113
|
||||||
|
876 0.1896789766
|
||||||
|
877 0.1895745098
|
||||||
|
878 0.1894637744
|
||||||
|
879 0.1894036691
|
||||||
|
880 0.1892932683
|
||||||
|
881 0.189258266
|
||||||
|
882 0.1891981233
|
||||||
|
883 0.1891215445
|
||||||
|
884 0.1890143054
|
||||||
|
885 0.1889312723
|
||||||
|
886 0886 0.192085887 0887 0.191935888 0888 0.191898889 0889 0.191846890 0890 0.191790891 0891 0.191729892 0892 0.1916760736
|
||||||
|
893 0.1915335233
|
||||||
|
894 0.1914796028
|
||||||
|
895 0.1913763062
|
||||||
|
896 0.1913395079
|
||||||
|
897 0.1912678699
|
||||||
|
898 0.191243899 0899 0.191162900 0.1876269642
|
||||||
|
901 0.1875001977
|
||||||
|
902 0.187403209
|
||||||
|
903 0.1873043882
|
||||||
|
904 0.1872195534
|
||||||
|
905 0.1871491767
|
||||||
|
906 0.1870104981
|
||||||
|
907 0.1869420064
|
||||||
|
908 0.1868914869
|
||||||
|
909 0.186787065
|
||||||
|
910 0.1866702356
|
||||||
|
911 0.1866046699
|
||||||
|
912 0.1864560457
|
||||||
|
913 0.1863240246
|
||||||
|
914 0.1862062241
|
||||||
|
915 0.1861338881
|
||||||
|
916 0.186025657
|
||||||
|
917 0.1859396015
|
||||||
|
918 0.1858178881
|
||||||
|
919 0.185706966
|
||||||
|
920 0.1856200051
|
||||||
|
921 0.1854981475
|
||||||
|
922 0.1854257424
|
||||||
|
923 0.1853204869
|
||||||
|
924 0.1852156164
|
||||||
|
925 0.1851027012
|
||||||
|
926 0.1849973028
|
||||||
|
927 0.1848849182
|
||||||
|
928 0.1848190864
|
||||||
|
929 0.1846982134
|
||||||
|
930 0.1845826874
|
||||||
|
931 0.18446116
|
||||||
|
932 0.1843612267
|
||||||
|
933 0.1842788248
|
||||||
|
934 0.1841913191
|
||||||
|
935 0.1841571329
|
||||||
|
936 0.1840521094
|
||||||
|
937 0.183983229
|
||||||
|
938 0.1839018212
|
||||||
|
939 0.1838136477
|
||||||
|
940 0.1837559317
|
||||||
|
941 0.1836433761
|
||||||
|
942 0.1835371968
|
||||||
|
943 0.183429206
|
||||||
|
944 0.1833599311
|
||||||
|
945 0.1832798986
|
||||||
|
946 0.1831687847
|
||||||
|
947 0.1830272249
|
||||||
|
948 0.1829354743
|
||||||
|
949 0.1828585222
|
||||||
|
950 0.1828066679
|
||||||
|
951 0.1826992636
|
||||||
|
952 0.1826619975
|
||||||
|
953 0.1826404807
|
||||||
|
954 0.1826049683
|
||||||
|
955 0.182542509
|
||||||
|
956 0.1824707124
|
||||||
|
957 0.1823498301
|
||||||
|
958 0.1822917321
|
||||||
|
959 0.1822506991
|
||||||
|
960 0.18222991
|
||||||
|
961 0.1821302287
|
||||||
|
962 0.1820405902
|
||||||
|
963 0.1819642189
|
||||||
|
964 0.1818719662
|
||||||
|
965 0.1818081334
|
||||||
|
966 0.1817224884
|
||||||
|
967 0.1816794438
|
||||||
|
968 0.18157978
|
||||||
|
969 0.1814637115
|
||||||
|
970 0.1813123668
|
||||||
|
971 0.1811983001
|
||||||
|
972 0.1810990775
|
||||||
|
973 0.1810350562
|
||||||
|
974 0.1809943476
|
||||||
|
975 0.1808972694
|
||||||
|
976 0.1808157769
|
||||||
|
977 0.1807341121
|
||||||
|
978 0.18064582978979 0.18057748979980 0.18051626980 0.18567441698981 0.18559991998982 0.185556502
|
||||||
|
983 0.185514808
|
||||||
|
984 0.1854468917
|
||||||
|
985 0.1853146605
|
||||||
|
986 0.1852626547
|
||||||
|
987 0.185230434
|
||||||
|
988 0.1852016396
|
||||||
|
989 0990 0.179711990 0991 0.17963991 0.992 0.17957992 0.993 0.17951993 0.994 0.17942994 0.995 0.1793665083
|
||||||
|
996 0.17928996 0.997 0.17918997 0.998 0.17911998 0.999 0.17902999 0.1844407665
|
||||||
|
601128
|
||||||
|
@@ -0,0 +1,879 @@
|
|||||||
|
iter Passed Remaining
|
||||||
|
0 59 59828
|
||||||
|
1 61 30821
|
||||||
|
2 63 21170
|
||||||
|
3 65 16340
|
||||||
|
4 67 13429
|
||||||
|
5 69 11507
|
||||||
|
6 71 1021377 73 915888 75 833299 77 7671110 79 7156111 82 6779112 84 6426113 86 6106114 88 5843115 90 5593116 92 5358117 94 5168118 97 5022119 99 4864220 101 4740221 103 4609222 105 4487223 107 4369224 109 4274225 112 4209226 114 4118227 116 402728 118 3960
|
||||||
|
29 120 3889
|
||||||
|
30 123 3846
|
||||||
|
31 124 3767
|
||||||
|
32 126 3709
|
||||||
|
33 129 3666
|
||||||
|
34 131 3627
|
||||||
|
35 133 3585
|
||||||
|
36 135 3539
|
||||||
|
37 138 3506
|
||||||
|
38 141 3474
|
||||||
|
39 142 3429
|
||||||
|
40 144 3388
|
||||||
|
41 146 3349
|
||||||
|
42 149 3321
|
||||||
|
43 151 3290
|
||||||
|
44 153 3259
|
||||||
|
45 155 3223
|
||||||
|
46 157 3197
|
||||||
|
47 159 3165
|
||||||
|
48 161 3139
|
||||||
|
49 164 3121
|
||||||
|
50 166 3089
|
||||||
|
51 168 3075
|
||||||
|
52 170 3051
|
||||||
|
53 173 3032
|
||||||
|
54 174 3006
|
||||||
|
55 176 2981
|
||||||
|
56 179 2961
|
||||||
|
57 181 2945
|
||||||
|
58 183 2929
|
||||||
|
59 185 2906
|
||||||
|
60 187 2884
|
||||||
|
61 189 2861
|
||||||
|
62 190 2837
|
||||||
|
63 192 2821
|
||||||
|
64 194 2803
|
||||||
|
65 196 2785
|
||||||
|
66 198 2767
|
||||||
|
67 200 2747
|
||||||
|
68 202 2736
|
||||||
|
69 204 2721
|
||||||
|
70 206 2703
|
||||||
|
71 208 2686
|
||||||
|
72 210 2672
|
||||||
|
73 212 2659
|
||||||
|
74 214 2647
|
||||||
|
75 216 2635
|
||||||
|
776 219 2630777 221 2615778 223 2607779 225 2598880 227 2582881 229 2569882 231 2559883 233 254984 235 2537
|
||||||
|
885 237 252786 240 2522
|
||||||
|
87 242 2510
|
||||||
|
88 244 2499
|
||||||
|
89 246 2488
|
||||||
|
90 248 2477
|
||||||
|
991 250 2467992 251 245793 253 2447
|
||||||
|
94 256 2441
|
||||||
|
95 258 2435
|
||||||
|
96 260 2426
|
||||||
|
97 263 2422
|
||||||
|
98 265 2420
|
||||||
|
99 268 2412
|
||||||
|
100 269 2402
|
||||||
|
101 272 2397
|
||||||
|
102 274 2387
|
||||||
|
103 275 2377
|
||||||
|
104 277 2366
|
||||||
|
105 279 2358
|
||||||
|
106 281 2351
|
||||||
|
107 283 2340
|
||||||
|
108 286 2339
|
||||||
|
109 288 2336
|
||||||
|
110 290 2324
|
||||||
|
111 292 2316
|
||||||
|
112 294 2308
|
||||||
|
113 296 2302
|
||||||
|
114 298 2294
|
||||||
|
115 300 2287
|
||||||
|
116 302 2279
|
||||||
|
117 304 2275
|
||||||
|
118 306 2267
|
||||||
|
119 308 2259
|
||||||
|
120 309 2251
|
||||||
|
121 312 2248
|
||||||
|
122 314 2242
|
||||||
|
123 316 2238
|
||||||
|
124 318 2229
|
||||||
|
125 320 2223
|
||||||
|
126 322 2215
|
||||||
|
127 324 2208
|
||||||
|
128 326 2205
|
||||||
|
129 328 2199
|
||||||
|
130 330 2194
|
||||||
|
131 332 2187
|
||||||
|
132 334 2182
|
||||||
|
133 336 2177
|
||||||
|
134 338 2171
|
||||||
|
135 340 2164
|
||||||
|
136 342 2159
|
||||||
|
137 346 2162
|
||||||
|
138 348 2156
|
||||||
|
139 350 2152
|
||||||
|
140 352 2147
|
||||||
|
141 354 2141
|
||||||
|
142 356 2135
|
||||||
|
143 358 2130
|
||||||
|
144 360 2124
|
||||||
|
145 362 2118
|
||||||
|
146 364 2112
|
||||||
|
147 366 2106
|
||||||
|
148 367 2101
|
||||||
|
149 369 2095
|
||||||
|
150 372 2092
|
||||||
|
151 374 2090
|
||||||
|
152 377 2088
|
||||||
|
153 379 2082
|
||||||
|
154 380 2076
|
||||||
|
155 383 2072
|
||||||
|
156 384 2066
|
||||||
|
157 386 2060
|
||||||
|
158 388 2054
|
||||||
|
159 390 2051
|
||||||
|
160 392 2046
|
||||||
|
161 394 2042
|
||||||
|
162 396 2036
|
||||||
|
163 398 2031
|
||||||
|
164 400 2025
|
||||||
|
165 402 2021
|
||||||
|
166 404 2016
|
||||||
|
167 406 2012
|
||||||
|
168 408 2007
|
||||||
|
169 410 2002
|
||||||
|
170 412 1999
|
||||||
|
171 414 1997
|
||||||
|
172 416 1992
|
||||||
|
173 418 1987
|
||||||
|
174 421 1985
|
||||||
|
175 423 1981
|
||||||
|
176 424 1975
|
||||||
|
177 426 1971
|
||||||
|
178 429 1968
|
||||||
|
179 431 1965
|
||||||
|
180 433 1960
|
||||||
|
181 435 1955
|
||||||
|
182 437 1954
|
||||||
|
183 440 1951
|
||||||
|
184 441 1946
|
||||||
|
185 443 1942
|
||||||
|
186 445 1937
|
||||||
|
187 448 1936
|
||||||
|
188 450 1933
|
||||||
|
189 452 1929
|
||||||
|
190 454 1926
|
||||||
|
191 456 1922
|
||||||
|
192 458 1918
|
||||||
|
193 461 1916
|
||||||
|
194 463 1911
|
||||||
|
195 465 1910
|
||||||
|
196 467 1907
|
||||||
|
197 470 1905
|
||||||
|
198 472 1901
|
||||||
|
199 474 1898
|
||||||
|
200 476 1894
|
||||||
|
201 478 1890
|
||||||
|
202 480 1885
|
||||||
|
203 481 1880
|
||||||
|
204 483 1876
|
||||||
|
205 485 1872
|
||||||
|
206 487 1867
|
||||||
|
207 489 1863
|
||||||
|
208 491 1860
|
||||||
|
209 494 1858
|
||||||
|
210 496 1855
|
||||||
|
211 498 1851
|
||||||
|
212 500 1849
|
||||||
|
213 502 1845
|
||||||
|
214 504 1842
|
||||||
|
215 507 1840
|
||||||
|
216 509 1837
|
||||||
|
217 511 1833
|
||||||
|
218 513 1829
|
||||||
|
219 515 1825
|
||||||
|
220 516 1821
|
||||||
|
221 518 1817
|
||||||
|
222 520 1814
|
||||||
|
223 522 1810
|
||||||
|
224 524 1807
|
||||||
|
225 526 1803
|
||||||
|
226 528 1799
|
||||||
|
227 530 1795
|
||||||
|
228 532 1792
|
||||||
|
229 534 1788
|
||||||
|
230 536 1784
|
||||||
|
231 538 1781
|
||||||
|
232 540 1779
|
||||||
|
233 542 1775
|
||||||
|
234 545 1774
|
||||||
|
235 547 1772
|
||||||
|
236 549 1768
|
||||||
|
237 551 1764
|
||||||
|
238 553 1762
|
||||||
|
239 555 1759
|
||||||
|
240 557 1756
|
||||||
|
241 559 1752
|
||||||
|
242 561 1748
|
||||||
|
243 563 1745
|
||||||
|
244 565 1743
|
||||||
|
245 567 1740
|
||||||
|
246 569 1736
|
||||||
|
247 571 1733
|
||||||
|
248 574 1731
|
||||||
|
249 576 1728
|
||||||
|
250 578 1725
|
||||||
|
251 580 1722
|
||||||
|
252 583 1721
|
||||||
|
253 586 1723
|
||||||
|
254 590 1725
|
||||||
|
255 593 1725
|
||||||
|
256 596 1725
|
||||||
|
257 598 1722
|
||||||
|
258 602 1722
|
||||||
|
259 604 1719
|
||||||
|
260 606 1716
|
||||||
|
261 607 1712
|
||||||
|
262 610 1711
|
||||||
|
263 613 1711
|
||||||
|
264 616 1710
|
||||||
|
265 618 1708
|
||||||
|
266 621 1707
|
||||||
|
267 625 1707
|
||||||
|
268 628 1706
|
||||||
|
269 630 1704
|
||||||
|
270 632 1701
|
||||||
|
271 635 1700
|
||||||
|
272 638 1699
|
||||||
|
273 641 1699
|
||||||
|
274 644 1699
|
||||||
|
275 646 1696
|
||||||
|
276 648 1693
|
||||||
|
277 651 1692
|
||||||
|
278 654 1691
|
||||||
|
279 656 1689
|
||||||
|
280 660 1688
|
||||||
|
281 663 1688
|
||||||
|
282 666 1687
|
||||||
|
283 669 1687
|
||||||
|
284 671 1685
|
||||||
|
285 673 1681
|
||||||
|
286 676 1680
|
||||||
|
287 679 1680
|
||||||
|
288 682 1679
|
||||||
|
289 684 1676
|
||||||
|
290 687 1675
|
||||||
|
291 689 1672
|
||||||
|
292 692 1671
|
||||||
|
293 695 1670
|
||||||
|
294 699 1670
|
||||||
|
295 702 1670
|
||||||
|
296 705 1669
|
||||||
|
297 707 1665
|
||||||
|
298 709 1662
|
||||||
|
299 711 1659
|
||||||
|
300 713 1658
|
||||||
|
301 716 1654
|
||||||
|
302 718 1653
|
||||||
|
303 720 1650
|
||||||
|
304 723 1649
|
||||||
|
305 727 1648
|
||||||
|
306 730 1648
|
||||||
|
307 733 1647
|
||||||
|
308 736 1646
|
||||||
|
309 739 1645
|
||||||
|
310 741 1642
|
||||||
|
311 744 1642
|
||||||
|
312 748 1641
|
||||||
|
313 751 1641
|
||||||
|
314 753 1637
|
||||||
|
315 755 1635
|
||||||
|
316 758 1634
|
||||||
|
317 761 1632
|
||||||
|
318 764 1631
|
||||||
|
319 767 1629
|
||||||
|
320 770 1629
|
||||||
|
321 773 1628
|
||||||
|
322 776 1627
|
||||||
|
323 779 1626
|
||||||
|
324 782 1625
|
||||||
|
325 785 1624
|
||||||
|
326 787 1621
|
||||||
|
327 789 1618
|
||||||
|
328 792 1617
|
||||||
|
329 796 1616
|
||||||
|
330 799 1615
|
||||||
|
331 802 1613
|
||||||
|
332 805 1613
|
||||||
|
333 808 1612
|
||||||
|
334 810 1608
|
||||||
|
335 812 1604
|
||||||
|
336 815 1603
|
||||||
|
337 817 1601
|
||||||
|
338 819 1598
|
||||||
|
339 821 1594
|
||||||
|
340 823 1590
|
||||||
|
341 826 1589
|
||||||
|
342 829 1588
|
||||||
|
343 831 1585
|
||||||
|
344 833 1581
|
||||||
|
345 835 1578
|
||||||
|
346 837 1575
|
||||||
|
347 838 1571
|
||||||
|
348 840 1568
|
||||||
|
349 842 1565
|
||||||
|
350 845 1563
|
||||||
|
351 849 1563
|
||||||
|
352 852 1561
|
||||||
|
353 854 1558
|
||||||
|
354 856 1556
|
||||||
|
355 858 1553
|
||||||
|
356 860 1550
|
||||||
|
357 863 1548
|
||||||
|
358 866 1547
|
||||||
|
359 869 1545
|
||||||
|
360 872 1544
|
||||||
|
361 875 1543
|
||||||
|
362 879 1542
|
||||||
|
363 881 1539
|
||||||
|
364 884 1538
|
||||||
|
365 886 1535
|
||||||
|
366 889 1533
|
||||||
|
367 892 1532
|
||||||
|
368 895 1530
|
||||||
|
369 897 1527
|
||||||
|
370 899 1524
|
||||||
|
371 900 1520
|
||||||
|
372 902 1517
|
||||||
|
373 905 1515
|
||||||
|
374 907 1512
|
||||||
|
375 909 1509
|
||||||
|
376 911 1506
|
||||||
|
377 913 1502
|
||||||
|
378 914 1499
|
||||||
|
379 916 1495
|
||||||
|
380 919 1493
|
||||||
|
381 922 1492
|
||||||
|
382 925 1491
|
||||||
|
383 928 1490
|
||||||
|
384 931 1488
|
||||||
|
385 934 1486
|
||||||
|
386 937 1485
|
||||||
|
387 940 1483
|
||||||
|
388 943 1482
|
||||||
|
389 946 1481
|
||||||
|
390 950 1479
|
||||||
|
391 953 1478
|
||||||
|
392 956 1477
|
||||||
|
393 958 1474
|
||||||
|
394 960 1470
|
||||||
|
395 962 1467
|
||||||
|
396 964 1465
|
||||||
|
397 967 1463
|
||||||
|
398 969 1460
|
||||||
|
399 971 1457
|
||||||
|
400 973 1454
|
||||||
|
401 976 1452
|
||||||
|
402 978 1449
|
||||||
|
403 980 1446
|
||||||
|
404 983 1444
|
||||||
|
405 985 1441
|
||||||
|
406 987 1438
|
||||||
|
407 990 1437
|
||||||
|
408 993 1436
|
||||||
|
409 995 1433
|
||||||
|
410 999 1432
|
||||||
|
411 1002 1430
|
||||||
|
412 1005 1429
|
||||||
|
413 1007 1426
|
||||||
|
414 1009 1423
|
||||||
|
415 1011 1420
|
||||||
|
416 1015 1419
|
||||||
|
417 1017 1416
|
||||||
|
418 1020 1414
|
||||||
|
419 1022 1411
|
||||||
|
420 1024 1408
|
||||||
|
421 1025 1405
|
||||||
|
422 1029 1403
|
||||||
|
423 1031 1400
|
||||||
|
424 1033 1397
|
||||||
|
425 1036 1396
|
||||||
|
426 1039 1394
|
||||||
|
427 1042 1393
|
||||||
|
428 1044 1390
|
||||||
|
429 1047 1388
|
||||||
|
430 1050 1386
|
||||||
|
431 1053 1385
|
||||||
|
432 1056 1383
|
||||||
|
433 1059 1382
|
||||||
|
434 1062 1380
|
||||||
|
435 1065 1378
|
||||||
|
436 1068 1376
|
||||||
|
437 1070 1373
|
||||||
|
438 1073 1372
|
||||||
|
439 1076 1370
|
||||||
|
440 1078 1367
|
||||||
|
441 1080 1364
|
||||||
|
442 1082 1361
|
||||||
|
443 1084 1357
|
||||||
|
444 1087 1356
|
||||||
|
445 1090 1354
|
||||||
|
446 1092 1351
|
||||||
|
447 1095 1350
|
||||||
|
448 1098 1348
|
||||||
|
449 1101 1346
|
||||||
|
450 1103 1343
|
||||||
|
451 1106 1342
|
||||||
|
452 1109 1339
|
||||||
|
453 1110 1335
|
||||||
|
454 1113 1333
|
||||||
|
455 1116 1332
|
||||||
|
456 1118 1329
|
||||||
|
457 1121 1327
|
||||||
|
458 1124 1325
|
||||||
|
459 1126 1322
|
||||||
|
460 1128 1319
|
||||||
|
461 1131 1317
|
||||||
|
462 1134 1315
|
||||||
|
463 1137 1314
|
||||||
|
464 1140 1312
|
||||||
|
465 1143 1310
|
||||||
|
466 1146 1309
|
||||||
|
467 1149 1306
|
||||||
|
468 1152 1304
|
||||||
|
469 1154 1301
|
||||||
|
470 1156 1298
|
||||||
|
471 1157 1295
|
||||||
|
472 1159 1291
|
||||||
|
473 1161 1288
|
||||||
|
474 1164 1286
|
||||||
|
475 1166 1283
|
||||||
|
476 1168 1281
|
||||||
|
477 1171 1279
|
||||||
|
478 1174 1277
|
||||||
|
479 1177 1275
|
||||||
|
480 1179 1273
|
||||||
|
481 1182 1270
|
||||||
|
482 1185 1268
|
||||||
|
483 1187 1266
|
||||||
|
484 1189 1262
|
||||||
|
485 1191 1259
|
||||||
|
486 1193 1257
|
||||||
|
487 1195 1254
|
||||||
|
488 1198 1252
|
||||||
|
489 1202 1251
|
||||||
|
490 1205 1249
|
||||||
|
491 1208 1247
|
||||||
|
492 1211 1245
|
||||||
|
493 1213 1243
|
||||||
|
494 1215 1239
|
||||||
|
495 1217 1237
|
||||||
|
496 1220 1235
|
||||||
|
497 1223 1232
|
||||||
|
498 1224 1229
|
||||||
|
499 1226 1226
|
||||||
|
500 1228 1223
|
||||||
|
501 1230 1220
|
||||||
|
502 1233 1218
|
||||||
|
503 1235 1215
|
||||||
|
504 1237 505 1505 1240 1210
|
||||||
|
506 1243 1209
|
||||||
|
507 1246 1207
|
||||||
|
508 1249 1205
|
||||||
|
509 1252 1203
|
||||||
|
510 1254 1200
|
||||||
|
511 1256 1197
|
||||||
|
512 1259 1195
|
||||||
|
513 1261 514 1514 1264 515 1515 1266 1188
|
||||||
|
516 1268 517 1517 1270 518 1272 1179
|
||||||
|
519 1275 1177
|
||||||
|
520 1277 1174
|
||||||
|
521 1279 1171
|
||||||
|
522 1282 1169
|
||||||
|
523 1285 1168
|
||||||
|
524 1524 1288 525 1525 1290 526 1526 1292 527 1294 1157
|
||||||
|
528 1528 1297 529 1529 1301 1153
|
||||||
|
530 1303 531 1531 1304 532 1532 1307 533 1533 1311 534 1534 1314 535 1535 1316 536 1319 1137
|
||||||
|
537 1322 1135
|
||||||
|
538 1325 1133
|
||||||
|
539 1328 1131
|
||||||
|
540 1331 1129
|
||||||
|
541 1334 1127
|
||||||
|
542 1336 1125
|
||||||
|
543 1339 1123
|
||||||
|
544 1342 1121
|
||||||
|
545 1345 1119
|
||||||
|
546 1347 1116
|
||||||
|
547 1350 1114
|
||||||
|
548 1353 1112
|
||||||
|
549 1355 1109
|
||||||
|
550 1358 1106
|
||||||
|
551 1360 1104
|
||||||
|
552 1363 1102
|
||||||
|
553 1365 1099
|
||||||
|
554 1368 1096
|
||||||
|
555 1371 1095
|
||||||
|
556 1374 1093
|
||||||
|
557 1376 1090
|
||||||
|
558 1379 1088
|
||||||
|
559 1381 1085
|
||||||
|
560 1383 1082
|
||||||
|
561 1385 1079
|
||||||
|
562 1387 1076
|
||||||
|
563 1389 1073
|
||||||
|
564 1392 1071
|
||||||
|
565 1395 1069
|
||||||
|
566 1397 1067
|
||||||
|
567 1400 1065
|
||||||
|
568 1402 1062
|
||||||
|
569 1406 1060
|
||||||
|
570 1408 1058
|
||||||
|
571 1411 1056
|
||||||
|
572 1414 1054
|
||||||
|
573 1416 1051
|
||||||
|
574 1418 1048
|
||||||
|
575 1420 1045
|
||||||
|
576 1423 1043
|
||||||
|
577 1426 1041
|
||||||
|
578 1429 1039
|
||||||
|
579 1431 1036
|
||||||
|
580 1433 1033
|
||||||
|
581 1435 1031
|
||||||
|
582 1438 1028
|
||||||
|
583 1441 1026
|
||||||
|
584 1443 1023
|
||||||
|
585 1445 1021
|
||||||
|
586 1448 1018
|
||||||
|
587 1451 1016
|
||||||
|
588 1453 1014
|
||||||
|
589 1457 1012
|
||||||
|
590 1460 1010
|
||||||
|
591 1463 1008
|
||||||
|
592 1466 1006
|
||||||
|
593 1468 1003
|
||||||
|
594 1470 1001
|
||||||
|
595 1472 998
|
||||||
|
596 1474 995
|
||||||
|
597 1477 993
|
||||||
|
598 1479 990
|
||||||
|
599 1481 987
|
||||||
|
600 1483 984
|
||||||
|
601 1485 982
|
||||||
|
602 1487 979
|
||||||
|
603 1489 976
|
||||||
|
604 1491 973
|
||||||
|
605 1492 970
|
||||||
|
606 1494 967
|
||||||
|
607 1496 965
|
||||||
|
608 1498 962
|
||||||
|
609 1500 959
|
||||||
|
610 1502 956
|
||||||
|
611 1505 954
|
||||||
|
612 1507 952
|
||||||
|
613 1510 949
|
||||||
|
614 1513 947
|
||||||
|
615615 1515 9616616 1518 9617617 1520 9618618 1522 9619619 1525 9620620 1527 9621621 1529 9622622 1532 9623623 1534 9624624 1537 9625625 1540 9626626 1543 918
|
||||||
|
627 1545 915
|
||||||
|
628 1548 913
|
||||||
|
629 1551 911
|
||||||
|
630 1555 909
|
||||||
|
631 1557 906
|
||||||
|
632 1559 9633633 1561 9634634 1563 8635635 1565 8636 1567 893
|
||||||
|
637 1571 891
|
||||||
|
638638 1573 8639 1576 886
|
||||||
|
640 1579 884
|
||||||
|
641 1581 881
|
||||||
|
642 1583 879
|
||||||
|
643 1586 876
|
||||||
|
644 1589 874
|
||||||
|
645 1592 872
|
||||||
|
646 1594 870
|
||||||
|
647 1596 867
|
||||||
|
648 1598 864
|
||||||
|
649 1601 862
|
||||||
|
650 1604 860
|
||||||
|
651 1606 857
|
||||||
|
652 1609 855
|
||||||
|
653 1611 852
|
||||||
|
654 1613 849
|
||||||
|
655 1616 847
|
||||||
|
656 1620 845
|
||||||
|
657 1622 843
|
||||||
|
658 1625 841
|
||||||
|
659 1628 838
|
||||||
|
660 1631 836
|
||||||
|
661 1633 834
|
||||||
|
662 1635 831
|
||||||
|
663 1638 829
|
||||||
|
664 1641 827
|
||||||
|
665 1644 824
|
||||||
|
666 1647 822
|
||||||
|
667 1649 819
|
||||||
|
668 1652 817
|
||||||
|
669 1654 815
|
||||||
|
670 1656 812
|
||||||
|
671 1659 810
|
||||||
|
672 1662 808
|
||||||
|
673 1664 805
|
||||||
|
674 1667 803
|
||||||
|
675 1669 800
|
||||||
|
676 1672 797
|
||||||
|
677 1674 795
|
||||||
|
678 1676 792
|
||||||
|
679 1678 789
|
||||||
|
680 1680 787
|
||||||
|
681 1682 784
|
||||||
|
682 1684 781
|
||||||
|
683 1687 779
|
||||||
|
684 1690 777
|
||||||
|
685 1693 775
|
||||||
|
686 1695 772
|
||||||
|
687 1698 770
|
||||||
|
688 1700 767
|
||||||
|
689 1703 765
|
||||||
|
690 1705 762
|
||||||
|
691 1707 759
|
||||||
|
692 1709 757
|
||||||
|
693 1712 755
|
||||||
|
694 1715 752
|
||||||
|
695 1718 750
|
||||||
|
696 1721 748
|
||||||
|
697 1724 746
|
||||||
|
698 1727 743
|
||||||
|
699 1730 741
|
||||||
|
700 1732 738
|
||||||
|
701 1734 736
|
||||||
|
702 1736 733
|
||||||
|
703 1739 731
|
||||||
|
704704 1741 7705 1744 726
|
||||||
|
706 1746 723
|
||||||
|
707707 1749 7708 1752 719
|
||||||
|
709 1754 716
|
||||||
|
710 1756 713
|
||||||
|
711 1757 711
|
||||||
|
712 1761 708
|
||||||
|
713 1763 706
|
||||||
|
714714 1765 7715715 1768 7716716 1770 6717717 1773 6718718 1775 6719719 1777 6720720 1780 6721721 1782 6722722 1785 6723723 1789 6724724 1791 6725725 1795 6726726 1798 675
|
||||||
|
727 1800 672
|
||||||
|
728 1802 670
|
||||||
|
729 1804 6730730 1807 6731731 1810 6732 1812 660
|
||||||
|
733 1815 657
|
||||||
|
734734 1818 6735735 1821 6736736 1823 6737737 1825 6738 1828 645
|
||||||
|
739 1830 643
|
||||||
|
740 1833 641
|
||||||
|
741 1837 638
|
||||||
|
742 1840 636
|
||||||
|
743 1843 634
|
||||||
|
744 1846 631
|
||||||
|
745 1848 629
|
||||||
|
746 1850 626
|
||||||
|
747 1851 623
|
||||||
|
748 1854 621
|
||||||
|
749 1858 619
|
||||||
|
750 1860 616
|
||||||
|
751 1862 614
|
||||||
|
752 1865 612
|
||||||
|
753 1868 609
|
||||||
|
754 1872 607
|
||||||
|
755 1874 604
|
||||||
|
756 1876 602
|
||||||
|
757 1878 599
|
||||||
|
758 1881 597
|
||||||
|
759 1884 595
|
||||||
|
760 1886 592
|
||||||
|
761 1888 589
|
||||||
|
762 1890 587
|
||||||
|
763 1892 584
|
||||||
|
764 1895 582
|
||||||
|
765 1898 579
|
||||||
|
766 1900 577
|
||||||
|
767 1768 1900768 1769 1902769 1770 1905770 1771 1907771 1772 1910772 1773 1913773 1774 1916774 1775 1919775 1776 1921 551
|
||||||
|
777 1923 548
|
||||||
|
778 1925 546
|
||||||
|
779 1928 544
|
||||||
|
780 1932 541
|
||||||
|
781 1934 539
|
||||||
|
782 1937 536
|
||||||
|
783 1939 534
|
||||||
|
784 1942 531
|
||||||
|
785 1945 529
|
||||||
|
786 1947 527
|
||||||
|
787 1949 524
|
||||||
|
788 1951 521
|
||||||
|
789 1953789 1790 1955790 1791 1958791 1792 1960792 1793 1963793 1794 1965794 1970 507
|
||||||
|
795 1973 505
|
||||||
|
796 1975 503
|
||||||
|
797 1978 500
|
||||||
|
798 1799 1978799 1800 1982800 1986 493
|
||||||
|
801 1988 490
|
||||||
|
802 1803 1989803 1993 486
|
||||||
|
804 1996 483
|
||||||
|
805 1998 481
|
||||||
|
806 2001 478
|
||||||
|
807 2003 476
|
||||||
|
808 2006 473
|
||||||
|
809 2009 471
|
||||||
|
810 2012 468
|
||||||
|
811 2015 466
|
||||||
|
812 2017 464
|
||||||
|
813 2019 461
|
||||||
|
814 2022 459
|
||||||
|
815 2024 456
|
||||||
|
816 2027 454
|
||||||
|
817 2029 451
|
||||||
|
818 2032 449
|
||||||
|
819 2034 446
|
||||||
|
820 2037 444
|
||||||
|
821 2039 441
|
||||||
|
822 2042 439
|
||||||
|
823 2045 436
|
||||||
|
824 2049 434
|
||||||
|
825 2051 432
|
||||||
|
826 2053 429
|
||||||
|
827 2054 426
|
||||||
|
828 2056 424
|
||||||
|
829 2059 421
|
||||||
|
830 2062 419
|
||||||
|
831 2064 416
|
||||||
|
832 2067 414
|
||||||
|
833 2069 411
|
||||||
|
834 2072 409
|
||||||
|
835 2075 407
|
||||||
|
836 2077 404
|
||||||
|
837 2079 402
|
||||||
|
838 2081 399
|
||||||
|
839 2083 396
|
||||||
|
840 2085 394
|
||||||
|
841 2087 391
|
||||||
|
842 2090 389
|
||||||
|
843 2093 386
|
||||||
|
844 2095 384
|
||||||
|
845 2098 381
|
||||||
|
846 2101 379
|
||||||
|
847 2104 377
|
||||||
|
848 2108 374
|
||||||
|
849 2110 372
|
||||||
|
850 2112 369
|
||||||
|
851 2114 367
|
||||||
|
852 2116 364
|
||||||
|
853 2119 362
|
||||||
|
854 2122 359
|
||||||
|
855 2125 357
|
||||||
|
856 2128 355
|
||||||
|
857 2130 352
|
||||||
|
858 2133 350
|
||||||
|
859 2136 347
|
||||||
|
860 2138 345
|
||||||
|
861 2140 342
|
||||||
|
862 2143 340
|
||||||
|
863 2147 337
|
||||||
|
864 2150 335
|
||||||
|
865 2153 333
|
||||||
|
866 2155 330
|
||||||
|
867 2158 328
|
||||||
|
868 2161 325
|
||||||
|
869 2164 323
|
||||||
|
870 2166 320
|
||||||
|
871 2169 318
|
||||||
|
872 2171 315
|
||||||
|
873 2174 313
|
||||||
|
874 2176 310
|
||||||
|
875 2178 308
|
||||||
|
876 2179 305
|
||||||
|
877 2181 303
|
||||||
|
878 2185 300
|
||||||
|
879 2187 298
|
||||||
|
880 2189 295
|
||||||
|
881 2191 293
|
||||||
|
882 2194 290
|
||||||
|
883 2196 288
|
||||||
|
884 2197 285
|
||||||
|
885 2200 283
|
||||||
|
886886 2201 2887887 2204 2888888 2207 2889889 2211 2890890 2214 2891891 2217 2892892 2220 266
|
||||||
|
893 2222 263
|
||||||
|
894 2225 261
|
||||||
|
895 2228 258
|
||||||
|
896 2231 256
|
||||||
|
897 2234 253
|
||||||
|
898 2236 2899899 2238 2900 2241 246
|
||||||
|
901 2244 243
|
||||||
|
902 2247 241
|
||||||
|
903 2251 239
|
||||||
|
904 2254 236
|
||||||
|
905 2256 234
|
||||||
|
906 2258 231
|
||||||
|
907 2261 229
|
||||||
|
908 2264 226
|
||||||
|
909 2266 224
|
||||||
|
910 2268 221
|
||||||
|
911 2271 219
|
||||||
|
912 2274 216
|
||||||
|
913 2277 214
|
||||||
|
914 2279 211
|
||||||
|
915 2282 209
|
||||||
|
916 2285 206
|
||||||
|
917 2288 204
|
||||||
|
918 2291 202
|
||||||
|
919 2295 199
|
||||||
|
920 2298 197
|
||||||
|
921 2300 194
|
||||||
|
922 2302 192
|
||||||
|
923 2304 189
|
||||||
|
924 2306 187
|
||||||
|
925 2308 184
|
||||||
|
926 2311 181
|
||||||
|
927 2314 179
|
||||||
|
928 2317 177
|
||||||
|
929 2319 174
|
||||||
|
930 2321 172
|
||||||
|
932 2315 166
|
||||||
|
933 2318 163
|
||||||
|
933 2328 164
|
||||||
|
935 2322 158
|
||||||
|
936 2326 156
|
||||||
|
937 2329 153
|
||||||
|
938 2332 151
|
||||||
|
939 2335 149
|
||||||
|
940 2337 146
|
||||||
|
941 2339 144
|
||||||
|
942 2341 141
|
||||||
|
943 2343 138
|
||||||
|
944 2346 136
|
||||||
|
945 2348 134
|
||||||
|
946 2351 131
|
||||||
|
946 2360 132
|
||||||
|
947 2363 129
|
||||||
|
948 2366 127
|
||||||
|
949 2369 124
|
||||||
|
950 2371 122
|
||||||
|
951 2374 119
|
||||||
|
952 2377 117
|
||||||
|
953 2380 114
|
||||||
|
954 2384 112
|
||||||
|
955 2386 109
|
||||||
|
956 2388 107
|
||||||
|
957 2390 104
|
||||||
|
958 2391 102
|
||||||
|
959 2395 99
|
||||||
|
960 2398 97
|
||||||
|
961 2400 94
|
||||||
|
962 2403 92
|
||||||
|
963 2408 89
|
||||||
|
964 2410 87
|
||||||
|
965 2414 84
|
||||||
|
966 2416 82
|
||||||
|
967 2418 79
|
||||||
|
968 2420 77
|
||||||
|
969 2422 74
|
||||||
|
970 2424 72
|
||||||
|
971 2425 699972 2428 67
|
||||||
|
973 2431 64
|
||||||
|
974 2434 62
|
||||||
|
975 2436 59
|
||||||
|
976 2439 57
|
||||||
|
977 2442 54
|
||||||
|
978978 2443 979979 2446 980980 2449 47
|
||||||
|
981 2451 44
|
||||||
|
982 2455 42
|
||||||
|
983 2458 39
|
||||||
|
984 2461 37
|
||||||
|
985 2463 34
|
||||||
|
986 2466 32
|
||||||
|
987 2470 30
|
||||||
|
988 2472 27
|
||||||
|
989 2474 990990 2477 991991 2479 992992 2482 993993 2484 994994 2487 995 2491 10
|
||||||
|
996996 2494997997 2497998998 2501999999 2503 0
|
||||||
|
@@ -0,0 +1,82 @@
|
|||||||
|
"y","X1","X2"
|
||||||
|
"A",6,2.5
|
||||||
|
"A",5.1,1.9
|
||||||
|
"A",5.9,2.1
|
||||||
|
"A",5.6,1.8
|
||||||
|
"A",5.8,2.2
|
||||||
|
"A",6.6,2.1
|
||||||
|
"A",4.5,1.7
|
||||||
|
"A",6.3,1.8
|
||||||
|
"A",5.8,1.8
|
||||||
|
"A",6.1,2.5
|
||||||
|
"A",5.1,2
|
||||||
|
"A",5.3,1.9
|
||||||
|
"A",5.5,2.1
|
||||||
|
"A",5,2
|
||||||
|
"A",5.1,2.4
|
||||||
|
"A",5.3,2.3
|
||||||
|
"A",5.5,1.8
|
||||||
|
"A",6.7,2.2
|
||||||
|
"A",6.9,2.3
|
||||||
|
"A",5,1.5
|
||||||
|
"A",5.7,2.3
|
||||||
|
"A",4.9,2
|
||||||
|
"A",6.7,2
|
||||||
|
"A",4.9,1.8
|
||||||
|
"A",5.7,2.1
|
||||||
|
"A",6,1.8
|
||||||
|
"A",4.8,1.8
|
||||||
|
"A",5.6,2.1
|
||||||
|
"A",5.8,1.6
|
||||||
|
"A",6.1,1.9
|
||||||
|
"A",6.4,2
|
||||||
|
"A",5.6,2.2
|
||||||
|
"A",5.6,1.4
|
||||||
|
"A",6.1,2.3
|
||||||
|
"A",5.6,2.4
|
||||||
|
"A",4.8,1.9
|
||||||
|
"A",5.4,2.1
|
||||||
|
"A",5.1,2.3
|
||||||
|
"A",5.9,2.3
|
||||||
|
"A",5.7,2.5
|
||||||
|
"A",5.2,2.3
|
||||||
|
"A",5,1.9
|
||||||
|
"A",5.2,2
|
||||||
|
"A",5.4,2.3
|
||||||
|
"A",5.1,1.8
|
||||||
|
"B",4.7,1.4
|
||||||
|
"B",4.5,1.5
|
||||||
|
"B",4.9,1.5
|
||||||
|
"B",4,1.3
|
||||||
|
"B",4.6,1.5
|
||||||
|
"B",4.5,1.3
|
||||||
|
"B",4.7,1.6
|
||||||
|
"B",3.3,1
|
||||||
|
"B",4.6,1.3
|
||||||
|
"B",3.9,1.4
|
||||||
|
"B",3.5,1
|
||||||
|
"B",4.2,1.5
|
||||||
|
"B",4,1
|
||||||
|
"B",3.6,1.3
|
||||||
|
"B",4.4,1.4
|
||||||
|
"B",4.1,1
|
||||||
|
"B",3.9,1.1
|
||||||
|
"B",4.8,1.7
|
||||||
|
"B",4.7,1.2
|
||||||
|
"B",4.3,1.3
|
||||||
|
"B",4.8,1.4
|
||||||
|
"B",5,1.7
|
||||||
|
"B",3.8,1.1
|
||||||
|
"B",3.7,1
|
||||||
|
"B",3.9,1.2
|
||||||
|
"B",5.1,1.6
|
||||||
|
"B",4.5,1.6
|
||||||
|
"B",4.7,1.5
|
||||||
|
"B",4.4,1.3
|
||||||
|
"B",4.1,1.3
|
||||||
|
"B",4.4,1.2
|
||||||
|
"B",4.6,1.4
|
||||||
|
"B",4,1.2
|
||||||
|
"B",4.2,1.3
|
||||||
|
"B",4.2,1.2
|
||||||
|
"B",3,1.1
|
||||||
|
@@ -0,0 +1,82 @@
|
|||||||
|
"X","y"
|
||||||
|
6,2.5
|
||||||
|
5.1,1.9
|
||||||
|
5.9,2.1
|
||||||
|
5.6,1.8
|
||||||
|
5.8,2.2
|
||||||
|
6.6,2.1
|
||||||
|
4.5,1.7
|
||||||
|
6.3,1.8
|
||||||
|
5.8,1.8
|
||||||
|
6.1,2.5
|
||||||
|
5.1,2
|
||||||
|
5.3,1.9
|
||||||
|
5.5,2.1
|
||||||
|
5,2
|
||||||
|
5.1,2.4
|
||||||
|
5.3,2.3
|
||||||
|
5.5,1.8
|
||||||
|
6.7,2.2
|
||||||
|
6.9,2.3
|
||||||
|
5,1.5
|
||||||
|
5.7,2.3
|
||||||
|
4.9,2
|
||||||
|
6.7,2
|
||||||
|
4.9,1.8
|
||||||
|
5.7,2.1
|
||||||
|
6,1.8
|
||||||
|
4.8,1.8
|
||||||
|
5.6,2.1
|
||||||
|
5.8,1.6
|
||||||
|
6.1,1.9
|
||||||
|
6.4,2
|
||||||
|
5.6,2.2
|
||||||
|
5.6,1.4
|
||||||
|
6.1,2.3
|
||||||
|
5.6,2.4
|
||||||
|
4.8,1.9
|
||||||
|
5.4,2.1
|
||||||
|
5.1,2.3
|
||||||
|
5.9,2.3
|
||||||
|
5.7,2.5
|
||||||
|
5.2,2.3
|
||||||
|
5,1.9
|
||||||
|
5.2,2
|
||||||
|
5.4,2.3
|
||||||
|
5.1,1.8
|
||||||
|
4.7,1.4
|
||||||
|
4.5,1.5
|
||||||
|
4.9,1.5
|
||||||
|
4,1.3
|
||||||
|
4.6,1.5
|
||||||
|
4.5,1.3
|
||||||
|
4.7,1.6
|
||||||
|
3.3,1
|
||||||
|
4.6,1.3
|
||||||
|
3.9,1.4
|
||||||
|
3.5,1
|
||||||
|
4.2,1.5
|
||||||
|
4,1
|
||||||
|
3.6,1.3
|
||||||
|
4.4,1.4
|
||||||
|
4.1,1
|
||||||
|
3.9,1.1
|
||||||
|
4.8,1.7
|
||||||
|
4.7,1.2
|
||||||
|
4.3,1.3
|
||||||
|
4.8,1.4
|
||||||
|
5,1.7
|
||||||
|
3.8,1.1
|
||||||
|
3.7,1
|
||||||
|
3.9,1.2
|
||||||
|
5.1,1.6
|
||||||
|
4.5,1.6
|
||||||
|
4.7,1.5
|
||||||
|
4.4,1.3
|
||||||
|
4.1,1.3
|
||||||
|
4.4,1.2
|
||||||
|
4.6,1.4
|
||||||
|
4,1.2
|
||||||
|
4.2,1.3
|
||||||
|
4.2,1.2
|
||||||
|
3,1.1
|
||||||
|
@@ -0,0 +1,99 @@
|
|||||||
|
[2025-06-21 22:20:44] (timestamp)
|
||||||
|
|
||||||
|
features with NA's
|
||||||
|
=======================
|
||||||
|
age 123
|
||||||
|
job 73
|
||||||
|
marital 19
|
||||||
|
education 463
|
||||||
|
duration 51
|
||||||
|
poutcome 7814
|
||||||
|
emp.var.rate 247
|
||||||
|
cons.price.idx 247
|
||||||
|
cons.conf.idx 247
|
||||||
|
|
||||||
|
categorical cols levels
|
||||||
|
=======================
|
||||||
|
job
|
||||||
|
job
|
||||||
|
admin. 2630
|
||||||
|
blue collar 1852
|
||||||
|
entrepreneur 294
|
||||||
|
housemaid 267
|
||||||
|
management 688
|
||||||
|
retired 621
|
||||||
|
self-employed 336
|
||||||
|
services 856
|
||||||
|
student 354
|
||||||
|
technician 1626
|
||||||
|
unemployed 271
|
||||||
|
|
||||||
|
marital
|
||||||
|
marital
|
||||||
|
divorced 1076
|
||||||
|
married 5747
|
||||||
|
single 3026
|
||||||
|
|
||||||
|
education
|
||||||
|
education
|
||||||
|
basic.4y 972
|
||||||
|
basic.6y 503
|
||||||
|
basic.9y 1251
|
||||||
|
high.school 2230
|
||||||
|
illiterate 6
|
||||||
|
professional.course 1307
|
||||||
|
university.degree 3136
|
||||||
|
|
||||||
|
default
|
||||||
|
default
|
||||||
|
no 8268
|
||||||
|
unknown 1600
|
||||||
|
|
||||||
|
housing
|
||||||
|
housing
|
||||||
|
no 4413
|
||||||
|
unknown 244
|
||||||
|
yes 5211
|
||||||
|
|
||||||
|
loan
|
||||||
|
loan
|
||||||
|
no 8196
|
||||||
|
unknown 244
|
||||||
|
yes 1428
|
||||||
|
|
||||||
|
contact
|
||||||
|
contact
|
||||||
|
cellular 6993
|
||||||
|
telephone 2875
|
||||||
|
|
||||||
|
month
|
||||||
|
month
|
||||||
|
apr 834
|
||||||
|
aug 1451
|
||||||
|
dec 103
|
||||||
|
jul 1582
|
||||||
|
jun 1239
|
||||||
|
mar 314
|
||||||
|
may 2745
|
||||||
|
nov 925
|
||||||
|
oct 363
|
||||||
|
sep 312
|
||||||
|
|
||||||
|
day_of_week
|
||||||
|
day_of_week
|
||||||
|
fri 1823
|
||||||
|
mon 1960
|
||||||
|
thu 2152
|
||||||
|
tue 1947
|
||||||
|
wed 1986
|
||||||
|
|
||||||
|
poutcome
|
||||||
|
poutcome
|
||||||
|
failure 1101
|
||||||
|
success 953
|
||||||
|
|
||||||
|
y
|
||||||
|
y
|
||||||
|
no 5223
|
||||||
|
yes 4645
|
||||||
|
|
||||||
@@ -0,0 +1,222 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"**nicht als Notebook verteilen**"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"# Feature Engineering\n",
|
||||||
|
"\n",
|
||||||
|
"## Feature Engineering - Einführung\n",
|
||||||
|
"\n",
|
||||||
|
"### Abgrenzungen\n",
|
||||||
|
"\n",
|
||||||
|
"### CRISP - und die Gliederung des Kurses\n",
|
||||||
|
"\n",
|
||||||
|
"### Strukturierte Daten\n",
|
||||||
|
"\n",
|
||||||
|
"#### Aufbau und Organisation eines Data Frame"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"metadata": {
|
||||||
|
"scrolled": true
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
" age job marital duration campaign y\n",
|
||||||
|
"0 30.0 self-employed single 245.0 3 yes\n",
|
||||||
|
"1 32.0 technician married 370.0 1 no\n",
|
||||||
|
"2 27.0 blue collar single 623.0 1 yes\n",
|
||||||
|
"3 NaN blue collar single 9.0 6 no\n",
|
||||||
|
"4 27.0 admin. single 126.0 2 yes\n",
|
||||||
|
"5 34.0 admin. single 548.0 2 yes\n",
|
||||||
|
"6 46.0 None married 86.0 2 no\n",
|
||||||
|
"7 NaN retired married 707.0 3 yes\n",
|
||||||
|
"8 46.0 admin. married 96.0 6 no\n",
|
||||||
|
"9 48.0 blue collar married 241.0 2 no\n",
|
||||||
|
"10 29.0 technician married 154.0 3 no\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"data = pd.read_csv('../3_data/bank_data.csv', sep=';')\n",
|
||||||
|
"#print(data.iloc[0:11, 0:6])\n",
|
||||||
|
"\n",
|
||||||
|
"## arbitrarily input\n",
|
||||||
|
"data.iloc[3, 0] = None\n",
|
||||||
|
"data.iloc[6, 1] = None\n",
|
||||||
|
"#print(data.iloc[0:11, 0:6])\n",
|
||||||
|
"print(data.iloc[0:11, [0,1,2,10,11,20]])"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Begriffe"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Beispieldaten"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "raw",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"demo_data_class = pd.read_csv('../3_data/demo_data_class.csv')\n",
|
||||||
|
"demo_data_regr = pd.read_csv('../3_data/demo_data_regr.csv') "
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "raw",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"import seaborn as sns\n",
|
||||||
|
"iris_data = sns.load_dataset('iris')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"jp-MarkdownHeadingCollapsed": true
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"### Anforderungen an die Daten für Machine Learning"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Eine typische ML Sequenz"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Python Libraries"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Feature Engineering"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Die Python Libraries und CRISP-DM"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Begleitende Literatur"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python 3 (ipykernel)",
|
||||||
|
"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.13.0"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": "1.1",
|
||||||
|
"nav_menu": {},
|
||||||
|
"number_sections": true,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": false,
|
||||||
|
"title_cell": "1.1 Feature Engineering - Einführung",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": true,
|
||||||
|
"toc_position": {
|
||||||
|
"height": "calc(100% - 180px)",
|
||||||
|
"left": "10px",
|
||||||
|
"top": "150px",
|
||||||
|
"width": "251px"
|
||||||
|
},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": true
|
||||||
|
},
|
||||||
|
"toc-autonumbering": true,
|
||||||
|
"toc-showcode": false,
|
||||||
|
"toc-showmarkdowntxt": false,
|
||||||
|
"toc-showtags": false,
|
||||||
|
"varInspector": {
|
||||||
|
"cols": {
|
||||||
|
"lenName": 16,
|
||||||
|
"lenType": 16,
|
||||||
|
"lenVar": 40
|
||||||
|
},
|
||||||
|
"kernels_config": {
|
||||||
|
"python": {
|
||||||
|
"delete_cmd_postfix": "",
|
||||||
|
"delete_cmd_prefix": "del ",
|
||||||
|
"library": "var_list.py",
|
||||||
|
"varRefreshCmd": "print(var_dic_list())"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"delete_cmd_postfix": ") ",
|
||||||
|
"delete_cmd_prefix": "rm(",
|
||||||
|
"library": "var_list.r",
|
||||||
|
"varRefreshCmd": "cat(var_dic_list()) "
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"height": "326.85px",
|
||||||
|
"left": "910px",
|
||||||
|
"right": "20px",
|
||||||
|
"top": "120px",
|
||||||
|
"width": "350px"
|
||||||
|
},
|
||||||
|
"types_to_exclude": [
|
||||||
|
"module",
|
||||||
|
"function",
|
||||||
|
"builtin_function_or_method",
|
||||||
|
"instance",
|
||||||
|
"_Feature"
|
||||||
|
],
|
||||||
|
"window_display": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 4
|
||||||
|
}
|
||||||
@@ -0,0 +1,521 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"# Feature Engineering\n",
|
||||||
|
"## Einfuehrung\n",
|
||||||
|
"## Exploration\n",
|
||||||
|
"## Transformation\n",
|
||||||
|
"## Konstruktion\n",
|
||||||
|
"## Selektion\n",
|
||||||
|
"## Implementation\n",
|
||||||
|
"### Data Frame"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T11:19:28.485043Z",
|
||||||
|
"start_time": "2020-03-17T11:19:27.999820Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## preparation: import libraries and read data\n",
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"import numpy as np\n",
|
||||||
|
"import matplotlib.pyplot as plt\n",
|
||||||
|
"import seaborn as sns\n",
|
||||||
|
"\n",
|
||||||
|
"sns.set()\n",
|
||||||
|
"%matplotlib inline\n",
|
||||||
|
"\n",
|
||||||
|
"datapath = '../3_data'\n",
|
||||||
|
"from os import chdir\n",
|
||||||
|
"\n",
|
||||||
|
"chdir(datapath)\n",
|
||||||
|
"\n",
|
||||||
|
"data = pd.read_csv('bank_data.csv', sep=';')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E1: Entfernen von Beobachtungen nach Bedingung"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 2,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## remove case for age > 100\n",
|
||||||
|
"data.drop(data[data.age >= 100].index, inplace=True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E2: Entfernen von Duplikaten"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 3,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## remove duplicates\n",
|
||||||
|
"data.drop_duplicates(ignore_index=True, inplace = True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E3: Entfernen fragwürdiger Variablen"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 4,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## alternative ['default', 'poutcome', 'duration']\n",
|
||||||
|
"vars_to_drop = ['default', 'poutcome']\n",
|
||||||
|
"data = data.drop(vars_to_drop, axis=1)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E4: Einsetzen von Werten für NAs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 5,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## create lists of names of of categorical and numerical variables\n",
|
||||||
|
"cat_vars = data.select_dtypes(include='object').columns.tolist()\n",
|
||||||
|
"num_vars = data.select_dtypes(exclude='object').columns.tolist()\n",
|
||||||
|
"\n",
|
||||||
|
"## import SimpleImputer class\n",
|
||||||
|
"from sklearn.impute import SimpleImputer\n",
|
||||||
|
"\n",
|
||||||
|
"## imput for categorical variables\n",
|
||||||
|
"imp_mode = SimpleImputer(missing_values=np.nan, strategy='most_frequent')\n",
|
||||||
|
"data[cat_vars] = pd.DataFrame(imp_mode.fit_transform(data[cat_vars]), columns=data[cat_vars].columns)\n",
|
||||||
|
"\n",
|
||||||
|
"## imput for numerical variables\n",
|
||||||
|
"imp_median = SimpleImputer(missing_values=np.nan, strategy='median')\n",
|
||||||
|
"data[num_vars] = pd.DataFrame(imp_median.fit_transform(data[num_vars]), columns=data[num_vars].columns)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Kategoriale Variablen"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E5: Reduzieren der Kardinalität"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 6,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T11:19:28.781822Z",
|
||||||
|
"start_time": "2020-03-17T11:19:28.769081Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## education: illiterate : basic.4y\n",
|
||||||
|
"data.education = np.where(\n",
|
||||||
|
" data.education == 'illiterate', \n",
|
||||||
|
" 'basic.4y',\n",
|
||||||
|
" data.education)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Nummerisiren - Faktorisieren (Platzhalter)\n",
|
||||||
|
"hier kein Bedarf"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "raw",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## sandbox\n",
|
||||||
|
"tmp_data = data.copy()\n",
|
||||||
|
"\n",
|
||||||
|
"## check before\n",
|
||||||
|
"print(tmp_data.job.value_counts())\n",
|
||||||
|
"\n",
|
||||||
|
"## factorize\n",
|
||||||
|
"tmp_data.job = pd.factorize(tmp_data.job)[0]\n",
|
||||||
|
"\n",
|
||||||
|
"## check after\n",
|
||||||
|
"print(tmp_data.job.value_counts())\n",
|
||||||
|
"\n",
|
||||||
|
"del(tmp_data)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E6: Nummerisiren - Ordial Encodieren"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 7,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T11:19:28.885362Z",
|
||||||
|
"start_time": "2020-03-17T11:19:28.825371Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stderr",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"/var/folders/30/93p10lq141sd2pvx31bfs77w0000gp/T/ipykernel_6176/854807168.py:33: FutureWarning: Downcasting behavior in `replace` is deprecated and will be removed in a future version. To retain the old behavior, explicitly call `result.infer_objects(copy=False)`. To opt-in to the future behavior, set `pd.set_option('future.no_silent_downcasting', True)`\n",
|
||||||
|
" data.replace(replace_nums, inplace=True)\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## education, day_of_week, month\n",
|
||||||
|
"replace_nums = {\n",
|
||||||
|
" 'education': {\n",
|
||||||
|
" 'basic.4y': 1,\n",
|
||||||
|
" 'basic.6y': 2,\n",
|
||||||
|
" 'basic.9y': 3,\n",
|
||||||
|
" 'professional.course': 4,\n",
|
||||||
|
" 'high.school': 5,\n",
|
||||||
|
" 'university.degree': 6\n",
|
||||||
|
" },\n",
|
||||||
|
" 'month': {\n",
|
||||||
|
" 'jan': 1,\n",
|
||||||
|
" 'feb': 2,\n",
|
||||||
|
" 'mar': 3,\n",
|
||||||
|
" 'apr': 4,\n",
|
||||||
|
" 'may': 5,\n",
|
||||||
|
" 'jun': 6,\n",
|
||||||
|
" 'jul': 7,\n",
|
||||||
|
" 'aug': 8,\n",
|
||||||
|
" 'sep': 9,\n",
|
||||||
|
" 'oct': 10,\n",
|
||||||
|
" 'nov': 11,\n",
|
||||||
|
" 'dec': 12\n",
|
||||||
|
" },\n",
|
||||||
|
" 'day_of_week': {\n",
|
||||||
|
" 'mon': 1,\n",
|
||||||
|
" 'tue': 2,\n",
|
||||||
|
" 'wed': 3,\n",
|
||||||
|
" 'thu': 4,\n",
|
||||||
|
" 'fri': 5\n",
|
||||||
|
" }\n",
|
||||||
|
"}\n",
|
||||||
|
"data.replace(replace_nums, inplace=True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E7: Nummerisieren - Binär Encodieren"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 8,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T11:19:28.820652Z",
|
||||||
|
"start_time": "2020-03-17T11:19:28.786046Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## housing : no -> 0 else 1\n",
|
||||||
|
"data.housing = np.where(data.housing == 'no', 0, 1)\n",
|
||||||
|
"\n",
|
||||||
|
"## contact : celular -> 1 else 0\n",
|
||||||
|
"data.contact = np.where(data.contact == 'cellular', 1, 0)\n",
|
||||||
|
"## rename\n",
|
||||||
|
"data = data.rename(columns={'contact': 'contact_cellular'})"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"#### E8: Nummerisieren - Ordinal Encodieren"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 9,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## one-hot encoding\n",
|
||||||
|
"## apply for all categorical variables except target\n",
|
||||||
|
"target = 'y'\n",
|
||||||
|
"sel_vars = data.select_dtypes(include=['object']).columns.drop(target)\n",
|
||||||
|
"data = pd.get_dummies(data, columns=sel_vars, drop_first=True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Numerische Variablen"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"#### E9: Logarithmieren"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 10,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T11:19:29.015675Z",
|
||||||
|
"start_time": "2020-03-17T11:19:28.972900Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## duration and campaign\n",
|
||||||
|
"data.duration = np.log10(data.duration + data.duration.min() + 1)\n",
|
||||||
|
"data.campaign = np.log10(data.campaign + data.campaign.min() + 1)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"#### E10: Binär umcodieren"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 11,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T11:19:29.046736Z",
|
||||||
|
"start_time": "2020-03-17T11:19:29.023717Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## pdays : 999 -> 0, else 1\n",
|
||||||
|
"data.pdays = np.where(data.pdays == 999, 0, 1)\n",
|
||||||
|
"\n",
|
||||||
|
"## previous : > 0 -> 1 else 0\n",
|
||||||
|
"data.previous = np.where(data.previous > 0, 1, 0)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Andere Tätigkeiten"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Konstruktion (Platzhalter)\n",
|
||||||
|
"hier kein Bedarf"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### E11: Bereinigen der Variablennamen"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 12,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"old_names = data.columns\n",
|
||||||
|
"new_names = old_names.str.replace('[^a-zA-Z0-9_]', '_', regex=True)\n",
|
||||||
|
"for i in range(len(old_names)):\n",
|
||||||
|
" data.rename(columns={old_names[i]:new_names[i]}, inplace=True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Standardisieren (Platzhalter)\n",
|
||||||
|
"hier kein Bedarf"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "raw",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"## all except target\n",
|
||||||
|
"\n",
|
||||||
|
"## features - target - split\n",
|
||||||
|
"target = 'y'\n",
|
||||||
|
"X = data.drop(target, axis=1)\n",
|
||||||
|
"y = data.y\n",
|
||||||
|
"\n",
|
||||||
|
"## scale features (X)\n",
|
||||||
|
"from sklearn.preprocessing import StandardScaler\n",
|
||||||
|
"scaler = StandardScaler().set_output(transform=\"pandas\")\n",
|
||||||
|
"X = scaler.fit_transform(X)\n",
|
||||||
|
"\n",
|
||||||
|
"## concat target to scaled features\n",
|
||||||
|
"new_data = pd.concat([X, y.reindex(X.index)], axis=1)\n",
|
||||||
|
"\n",
|
||||||
|
"del(new_data)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"#### E12: Speichern unter neuem Namen"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 13,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T11:19:29.405659Z",
|
||||||
|
"start_time": "2020-03-17T11:19:29.080587Z"
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## as bank_data_prep.csv\n",
|
||||||
|
"## parameters\n",
|
||||||
|
"## sep = ',' (default)\n",
|
||||||
|
"## index = False (default True would add an index column on the left)\n",
|
||||||
|
"data.to_csv('bank_data_prep.csv', index=False)"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python 3 (ipykernel)",
|
||||||
|
"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.13.0"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": "1.6",
|
||||||
|
"nav_menu": {},
|
||||||
|
"number_sections": true,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": false,
|
||||||
|
"title_cell": "1.6 Feature Engineering - Implementation",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": true,
|
||||||
|
"toc_position": {
|
||||||
|
"height": "calc(100% - 180px)",
|
||||||
|
"left": "10px",
|
||||||
|
"top": "150px",
|
||||||
|
"width": "249.6px"
|
||||||
|
},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": true
|
||||||
|
},
|
||||||
|
"toc-autonumbering": true,
|
||||||
|
"varInspector": {
|
||||||
|
"cols": {
|
||||||
|
"lenName": 16,
|
||||||
|
"lenType": 16,
|
||||||
|
"lenVar": 40
|
||||||
|
},
|
||||||
|
"kernels_config": {
|
||||||
|
"python": {
|
||||||
|
"delete_cmd_postfix": "",
|
||||||
|
"delete_cmd_prefix": "del ",
|
||||||
|
"library": "var_list.py",
|
||||||
|
"varRefreshCmd": "print(var_dic_list())"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"delete_cmd_postfix": ") ",
|
||||||
|
"delete_cmd_prefix": "rm(",
|
||||||
|
"library": "var_list.r",
|
||||||
|
"varRefreshCmd": "cat(var_dic_list()) "
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"types_to_exclude": [
|
||||||
|
"module",
|
||||||
|
"function",
|
||||||
|
"builtin_function_or_method",
|
||||||
|
"instance",
|
||||||
|
"_Feature"
|
||||||
|
],
|
||||||
|
"window_display": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 4
|
||||||
|
}
|
||||||
@@ -0,0 +1,506 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"# Feature Engineering\n",
|
||||||
|
"# Klassifikation\n",
|
||||||
|
"## Instanzbasierte Modelle\n",
|
||||||
|
"## Regelbasierte Modelle\n",
|
||||||
|
"## Mathematische Modelle"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"import sys\n",
|
||||||
|
"sys.path.append('./')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 2,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:39.858981Z",
|
||||||
|
"start_time": "2020-03-17T12:01:37.904657Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## preparation\n",
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"import numpy as np\n",
|
||||||
|
"import matplotlib.pyplot as plt\n",
|
||||||
|
"import seaborn as sns; sns.set()\n",
|
||||||
|
"%matplotlib inline\n",
|
||||||
|
"\n",
|
||||||
|
"datapath = '../3_data'\n",
|
||||||
|
"from os import chdir; chdir(datapath)\n",
|
||||||
|
"\n",
|
||||||
|
"from bfh_cas_pml import prep_data, prep_demo_data\n",
|
||||||
|
"X_train, X_test, y_train, y_test = prep_data('bank_data_prep.csv', 'y', seed = 1234)\n",
|
||||||
|
"X_demo, y_demo = prep_demo_data('demo_data_class.csv', 'y')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### LinearDiscriminantAnalysis\n",
|
||||||
|
"#### Theorie"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"kein Code zu diesem Kapitel"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Praxis"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 3,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:40.035126Z",
|
||||||
|
"start_time": "2020-03-17T12:01:39.864400Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"0.8487982963188317\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n",
|
||||||
|
"model = LinearDiscriminantAnalysis()\n",
|
||||||
|
"model.fit(X_train, y_train) \n",
|
||||||
|
"print(model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 4,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:40.051095Z",
|
||||||
|
"start_time": "2020-03-17T12:01:40.038394Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"{'covariance_estimator': None, 'n_components': None, 'priors': None, 'shrinkage': None, 'solver': 'svd', 'store_covariance': False, 'tol': 0.0001}\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"print(model.get_params())"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### QuadraticDiscriminantAnalysis (eine Variante)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 5,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:40.144808Z",
|
||||||
|
"start_time": "2020-03-17T12:01:40.054435Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"0.7246729540614543\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.discriminant_analysis \\\n",
|
||||||
|
" import QuadraticDiscriminantAnalysis\n",
|
||||||
|
"model = QuadraticDiscriminantAnalysis()\n",
|
||||||
|
"model.fit(X_train, y_train)\n",
|
||||||
|
"print(model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 6,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:40.160468Z",
|
||||||
|
"start_time": "2020-03-17T12:01:40.149447Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"{'priors': None, 'reg_param': 0.0, 'store_covariance': False, 'tol': 0.0001}\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"print(model.get_params())"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"### SVC\n",
|
||||||
|
"#### Theorie\n",
|
||||||
|
"#### Praxis"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 7,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:47.205171Z",
|
||||||
|
"start_time": "2020-03-17T12:01:40.196843Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"0.7161545482202616\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.svm import SVC\n",
|
||||||
|
"model = SVC()\n",
|
||||||
|
"model.fit(X_train, y_train) \n",
|
||||||
|
"print(model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 8,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:47.221147Z",
|
||||||
|
"start_time": "2020-03-17T12:01:47.210935Z"
|
||||||
|
},
|
||||||
|
"scrolled": true
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"{'C': 1.0, 'break_ties': False, 'cache_size': 200, 'class_weight': None, 'coef0': 0.0, 'decision_function_shape': 'ovr', 'degree': 3, 'gamma': 'scale', 'kernel': 'rbf', 'max_iter': -1, 'probability': False, 'random_state': None, 'shrinking': True, 'tol': 0.001, 'verbose': False}\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"print(model.get_params())"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "raw",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## with scaled features\n",
|
||||||
|
"from sklearn.preprocessing import StandardScaler\n",
|
||||||
|
"scaler = StandardScaler()\n",
|
||||||
|
"\n",
|
||||||
|
"scaler.fit(X_train)\n",
|
||||||
|
"X_train_sc = scaler.transform(X_train)\n",
|
||||||
|
"X_test_sc = scaler.transform(X_test)\n",
|
||||||
|
"\n",
|
||||||
|
"model.fit(X_train_sc, y_train) \n",
|
||||||
|
"print(model.score(X_test_sc, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### GaussianNB\n",
|
||||||
|
"in aller Kürze"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Theorie"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 9,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"classes_ : ['A' 'B']\n",
|
||||||
|
"class_prior_ : [0.55555556 0.44444444]\n",
|
||||||
|
"\n",
|
||||||
|
"theta_ :\n",
|
||||||
|
" [[5.58666667]\n",
|
||||||
|
" [4.26666667]]\n",
|
||||||
|
"\n",
|
||||||
|
"var_ :\n",
|
||||||
|
" [[0.31182222]\n",
|
||||||
|
" [0.23055556]]\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## demo of GaussianNB interna with demo data\n",
|
||||||
|
"X_nb_train = X_demo\n",
|
||||||
|
"y_nb_train = y_demo\n",
|
||||||
|
"\n",
|
||||||
|
"X_nb_train = X_nb_train.drop('X2', axis=1)\n",
|
||||||
|
"#print(X_train)\n",
|
||||||
|
"\n",
|
||||||
|
"from sklearn.naive_bayes import GaussianNB\n",
|
||||||
|
"model = GaussianNB()\n",
|
||||||
|
"model.fit(X_nb_train, y_nb_train)\n",
|
||||||
|
"\n",
|
||||||
|
"## print model attributes\n",
|
||||||
|
"print('classes_ :', model.classes_)\n",
|
||||||
|
"print('class_prior_ :', model.class_prior_)\n",
|
||||||
|
"print('\\ntheta_ :\\n', model.theta_)\n",
|
||||||
|
"print('\\nvar_ :\\n', model.var_)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"#### Praxis"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 10,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:47.963126Z",
|
||||||
|
"start_time": "2020-03-17T12:01:47.897232Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"0.7337998174627319\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.naive_bayes import GaussianNB\n",
|
||||||
|
"model = GaussianNB()\n",
|
||||||
|
"model.fit(X_train, y_train) \n",
|
||||||
|
"print(model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 11,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:48.042848Z",
|
||||||
|
"start_time": "2020-03-17T12:01:48.032106Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"{'priors': None, 'var_smoothing': 1e-09}\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"print(model.get_params())"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### LogisticRegression\n",
|
||||||
|
"#### Theorie\n",
|
||||||
|
"#### Praxis"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 12,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-03-17T12:01:56.666086Z",
|
||||||
|
"start_time": "2020-03-17T12:01:56.130695Z"
|
||||||
|
},
|
||||||
|
"scrolled": true
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"0.8475813811986614\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.linear_model import LogisticRegression\n",
|
||||||
|
"model = LogisticRegression(max_iter=4000)\n",
|
||||||
|
"model.fit(X_train, y_train) \n",
|
||||||
|
"print(model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 13,
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"C : 1.0 \n",
|
||||||
|
"class_weight : None \n",
|
||||||
|
"dual : False\n",
|
||||||
|
"fit_intercept : True \n",
|
||||||
|
"intercept_scaling : 1 \n",
|
||||||
|
"l1_ratio : None \n",
|
||||||
|
"max_iter : 4000 \n",
|
||||||
|
"multi_class : deprecated\n",
|
||||||
|
"n_jobs : None \n",
|
||||||
|
"penalty : l2 \n",
|
||||||
|
"random_state : None \n",
|
||||||
|
"solver : lbfgs\n",
|
||||||
|
"tol : 0.0001\n",
|
||||||
|
"verbose : 0 \n",
|
||||||
|
"warm_start : False\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"for key, value in model.get_params().items():\n",
|
||||||
|
" print(\"%-20s : %-5s\" % (key, value))"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "teaching",
|
||||||
|
"language": "python",
|
||||||
|
"name": "teaching"
|
||||||
|
},
|
||||||
|
"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.13.0"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": "2.3",
|
||||||
|
"nav_menu": {},
|
||||||
|
"number_sections": true,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": false,
|
||||||
|
"title_cell": "2.3 Klassifikation - Mathematische Modelle",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": true,
|
||||||
|
"toc_position": {
|
||||||
|
"height": "calc(100% - 180px)",
|
||||||
|
"left": "10px",
|
||||||
|
"top": "150px",
|
||||||
|
"width": "202.667px"
|
||||||
|
},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": true
|
||||||
|
},
|
||||||
|
"varInspector": {
|
||||||
|
"cols": {
|
||||||
|
"lenName": 16,
|
||||||
|
"lenType": 16,
|
||||||
|
"lenVar": 40
|
||||||
|
},
|
||||||
|
"kernels_config": {
|
||||||
|
"python": {
|
||||||
|
"delete_cmd_postfix": "",
|
||||||
|
"delete_cmd_prefix": "del ",
|
||||||
|
"library": "var_list.py",
|
||||||
|
"varRefreshCmd": "print(var_dic_list())"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"delete_cmd_postfix": ") ",
|
||||||
|
"delete_cmd_prefix": "rm(",
|
||||||
|
"library": "var_list.r",
|
||||||
|
"varRefreshCmd": "cat(var_dic_list()) "
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"height": "316.717px",
|
||||||
|
"left": "782px",
|
||||||
|
"right": "20px",
|
||||||
|
"top": "119px",
|
||||||
|
"width": "350px"
|
||||||
|
},
|
||||||
|
"types_to_exclude": [
|
||||||
|
"module",
|
||||||
|
"function",
|
||||||
|
"builtin_function_or_method",
|
||||||
|
"instance",
|
||||||
|
"_Feature"
|
||||||
|
],
|
||||||
|
"window_display": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 4
|
||||||
|
}
|
||||||
@@ -0,0 +1,501 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"# Feature Engineering\n",
|
||||||
|
"# Klassifikation\n",
|
||||||
|
"# Regression\n",
|
||||||
|
"# Validierung und mehr\n",
|
||||||
|
"## Sampling und Resampling\n",
|
||||||
|
"## Validierungstechniken\n",
|
||||||
|
"## Grid Search und Random Search\n",
|
||||||
|
"## Performancemetriken\n",
|
||||||
|
"## Unbalancierte Daten\n",
|
||||||
|
"### Motivation und Vorbereitung "
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "raw",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## for scikit-learn 1.4.2, to silence warnings regarding physical cores\n",
|
||||||
|
"import os\n",
|
||||||
|
"os.environ['LOKY_MAX_CPU_COUNT'] = '4' ## depending on the hardware used"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-15T20:53:02.218161Z",
|
||||||
|
"start_time": "2020-04-15T20:53:02.079407Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## import libraries\n",
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"import numpy as np\n",
|
||||||
|
"import matplotlib.pyplot as plt\n",
|
||||||
|
"import seaborn as sns; sns.set()\n",
|
||||||
|
"%matplotlib inline"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 2,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:30:48.667936Z",
|
||||||
|
"start_time": "2020-04-14T21:30:48.420905Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"dim = (41188, 21)\n",
|
||||||
|
"y\n",
|
||||||
|
"no 0.887346\n",
|
||||||
|
"yes 0.112654\n",
|
||||||
|
"Name: proportion, dtype: float64\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## read and prepare data\n",
|
||||||
|
"datapath = '../3_data'\n",
|
||||||
|
"from os import chdir; chdir(datapath)\n",
|
||||||
|
"data = pd.read_csv('bank-additional-full.csv', sep=';')\n",
|
||||||
|
"print('dim =', data.shape)\n",
|
||||||
|
"print(data.y.value_counts(normalize=True)) ## proportion\n",
|
||||||
|
"\n",
|
||||||
|
"X_full = data.drop('y', axis=1)\n",
|
||||||
|
"y_full = data['y'] "
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 3,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:30:48.714876Z",
|
||||||
|
"start_time": "2020-04-14T21:30:48.673886Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## minimal feature engineering: one hot encoding for not numerical features\n",
|
||||||
|
"X_full = pd.get_dummies(X_full, drop_first=True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 4,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:30:48.714876Z",
|
||||||
|
"start_time": "2020-04-14T21:30:48.673886Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## test - train - split\n",
|
||||||
|
"from sklearn.model_selection import train_test_split\n",
|
||||||
|
"X_full_train, X_full_test, y_full_train, y_full_test, = train_test_split(\n",
|
||||||
|
" X_full,\n",
|
||||||
|
" y_full,\n",
|
||||||
|
" train_size=2/3,\n",
|
||||||
|
" random_state=1234)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 5,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:30:53.858945Z",
|
||||||
|
"start_time": "2020-04-14T21:30:48.719365Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## function for evaluate different sampling methods\n",
|
||||||
|
"## train a RandomForestClassifier model with train data\n",
|
||||||
|
"## return\n",
|
||||||
|
"## internal scorer (accuracy) for test data\n",
|
||||||
|
"## proportion of classes after resampling\n",
|
||||||
|
"\n",
|
||||||
|
"from sklearn.ensemble import RandomForestClassifier\n",
|
||||||
|
"def getResampledRfScore(X_train, y_train, X_test, y_test):\n",
|
||||||
|
" model = RandomForestClassifier(random_state=1234)\n",
|
||||||
|
" model.fit(X_train, y_train)\n",
|
||||||
|
" print('score ', model.score(X_test, y_test))\n",
|
||||||
|
" print(y_train.value_counts(normalize=True)) "
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 6,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:30:53.858945Z",
|
||||||
|
"start_time": "2020-04-14T21:30:48.719365Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"score 0.912163146394756\n",
|
||||||
|
"y\n",
|
||||||
|
"no 0.886773\n",
|
||||||
|
"yes 0.113227\n",
|
||||||
|
"Name: proportion, dtype: float64\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## test call (without resampling)\n",
|
||||||
|
"getResampledRfScore(X_full_train, y_full_train, X_full_test, y_full_test)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Random under-sampling"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 7,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"Requirement already satisfied: imblearn in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (0.0)\n",
|
||||||
|
"Requirement already satisfied: imbalanced-learn in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from imblearn) (0.13.0)\n",
|
||||||
|
"Requirement already satisfied: numpy<3,>=1.24.3 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from imbalanced-learn->imblearn) (2.2.6)\n",
|
||||||
|
"Requirement already satisfied: scipy<2,>=1.10.1 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from imbalanced-learn->imblearn) (1.15.3)\n",
|
||||||
|
"Requirement already satisfied: scikit-learn<2,>=1.3.2 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from imbalanced-learn->imblearn) (1.6.1)\n",
|
||||||
|
"Requirement already satisfied: sklearn-compat<1,>=0.1 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from imbalanced-learn->imblearn) (0.1.3)\n",
|
||||||
|
"Requirement already satisfied: joblib<2,>=1.1.1 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from imbalanced-learn->imblearn) (1.5.1)\n",
|
||||||
|
"Requirement already satisfied: threadpoolctl<4,>=2.0.0 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from imbalanced-learn->imblearn) (3.6.0)\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"!pip install imblearn"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 8,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:30:55.982616Z",
|
||||||
|
"start_time": "2020-04-14T21:30:53.863545Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"score 0.847632920611799\n",
|
||||||
|
"y\n",
|
||||||
|
"no 0.5\n",
|
||||||
|
"yes 0.5\n",
|
||||||
|
"Name: proportion, dtype: float64\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from imblearn.under_sampling import RandomUnderSampler\n",
|
||||||
|
"rus = RandomUnderSampler(random_state=1234)\n",
|
||||||
|
"X_resampled_train, y_resampled_train =\\\n",
|
||||||
|
" rus.fit_resample(X_full_train, y_full_train)\n",
|
||||||
|
"getResampledRfScore(\n",
|
||||||
|
" X_resampled_train, y_resampled_train, X_full_test, y_full_test)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Random over-sampling"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 9,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:31:04.199265Z",
|
||||||
|
"start_time": "2020-04-14T21:30:55.985909Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"score 0.9041514930808449\n",
|
||||||
|
"y\n",
|
||||||
|
"no 0.5\n",
|
||||||
|
"yes 0.5\n",
|
||||||
|
"Name: proportion, dtype: float64\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from imblearn.over_sampling import\\\n",
|
||||||
|
" RandomOverSampler\n",
|
||||||
|
"ros = RandomOverSampler(random_state=1234)\n",
|
||||||
|
"X_resampled_train, y_resampled_train =\\\n",
|
||||||
|
" ros.fit_resample(X_full_train, y_full_train)\n",
|
||||||
|
"getResampledRfScore(\n",
|
||||||
|
" X_resampled_train, y_resampled_train, X_full_test, y_full_test)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Undersampling mit Tomek Links"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 10,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:31:11.461134Z",
|
||||||
|
"start_time": "2020-04-14T21:31:04.202872Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"score 0.9115076474872542\n",
|
||||||
|
"y\n",
|
||||||
|
"no 0.883063\n",
|
||||||
|
"yes 0.116937\n",
|
||||||
|
"Name: proportion, dtype: float64\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from imblearn.under_sampling import TomekLinks\n",
|
||||||
|
"tl = TomekLinks()\n",
|
||||||
|
"X_resampled_train, y_resampled_train = tl.fit_resample(\n",
|
||||||
|
" X_full_train, y_full_train)\n",
|
||||||
|
"getResampledRfScore(\n",
|
||||||
|
" X_resampled_train, y_resampled_train, X_full_test, y_full_test)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Oversampling mit SMOTE"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 11,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-14T21:31:22.211925Z",
|
||||||
|
"start_time": "2020-04-14T21:31:11.466648Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"score 0.9038601602330663\n",
|
||||||
|
"y\n",
|
||||||
|
"no 0.5\n",
|
||||||
|
"yes 0.5\n",
|
||||||
|
"Name: proportion, dtype: float64\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from imblearn.over_sampling import SMOTE\n",
|
||||||
|
"sm = SMOTE()\n",
|
||||||
|
"X_resampled_train, y_resampled_train = sm.fit_resample(\n",
|
||||||
|
" X_full_train, y_full_train)\n",
|
||||||
|
"getResampledRfScore(\n",
|
||||||
|
" X_resampled_train, y_resampled_train, X_full_test, y_full_test)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Weights beim Trainieren"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"ref: https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html\n",
|
||||||
|
"\n",
|
||||||
|
"* the formula for class_weights:\n",
|
||||||
|
"\n",
|
||||||
|
" n_samples / (n_classes * np.bincount(y))\n",
|
||||||
|
"\n",
|
||||||
|
"* the weights of y are calculated inversely proportional to the frequencies of the present classes"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 12,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"0.9104151493080845\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## with weights: balanced\n",
|
||||||
|
"model = RandomForestClassifier(n_estimators=100, class_weight='balanced', random_state=1234)\n",
|
||||||
|
"model.fit(X_full_train, y_full_train)\n",
|
||||||
|
"print(model.score(X_full_test, y_full_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 13,
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"0.5638424575957945 4.415889353489868\n",
|
||||||
|
"0.9104151493080845\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## with weights: balanced: mannualy set\n",
|
||||||
|
"n_no = y_full_train.value_counts()['no']\n",
|
||||||
|
"n_yes = y_full_train.value_counts()['yes']\n",
|
||||||
|
"weight_no = len(y_full_train) / (2 * n_no)\n",
|
||||||
|
"weight_yes = len(y_full_train) / (2 * n_yes)\n",
|
||||||
|
"print(weight_no, weight_yes)\n",
|
||||||
|
"\n",
|
||||||
|
"model = RandomForestClassifier(\n",
|
||||||
|
" n_estimators=100,\n",
|
||||||
|
" class_weight={'no': weight_no,\n",
|
||||||
|
" 'yes': weight_yes}, \n",
|
||||||
|
" random_state=1234)\n",
|
||||||
|
"\n",
|
||||||
|
"model.fit(X_full_train, y_full_train)\n",
|
||||||
|
"print(model.score(X_full_test, y_full_test))"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python 3 (ipykernel)",
|
||||||
|
"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.13.0"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": "4.5",
|
||||||
|
"nav_menu": {
|
||||||
|
"height": "189px",
|
||||||
|
"width": "303.333px"
|
||||||
|
},
|
||||||
|
"number_sections": true,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": false,
|
||||||
|
"title_cell": "4.5 Validierung und mehr - Unbalancierte Daten",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": true,
|
||||||
|
"toc_position": {
|
||||||
|
"height": "calc(100% - 180px)",
|
||||||
|
"left": "10px",
|
||||||
|
"top": "150px",
|
||||||
|
"width": "291px"
|
||||||
|
},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": true
|
||||||
|
},
|
||||||
|
"toc-autonumbering": true,
|
||||||
|
"varInspector": {
|
||||||
|
"cols": {
|
||||||
|
"lenName": 16,
|
||||||
|
"lenType": 16,
|
||||||
|
"lenVar": 40
|
||||||
|
},
|
||||||
|
"kernels_config": {
|
||||||
|
"python": {
|
||||||
|
"delete_cmd_postfix": "",
|
||||||
|
"delete_cmd_prefix": "del ",
|
||||||
|
"library": "var_list.py",
|
||||||
|
"varRefreshCmd": "print(var_dic_list())"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"delete_cmd_postfix": ") ",
|
||||||
|
"delete_cmd_prefix": "rm(",
|
||||||
|
"library": "var_list.r",
|
||||||
|
"varRefreshCmd": "cat(var_dic_list()) "
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"height": "298.85px",
|
||||||
|
"left": "782px",
|
||||||
|
"right": "20px",
|
||||||
|
"top": "120px",
|
||||||
|
"width": "350px"
|
||||||
|
},
|
||||||
|
"types_to_exclude": [
|
||||||
|
"module",
|
||||||
|
"function",
|
||||||
|
"builtin_function_or_method",
|
||||||
|
"instance",
|
||||||
|
"_Feature"
|
||||||
|
],
|
||||||
|
"window_display": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 4
|
||||||
|
}
|
||||||
@@ -0,0 +1,517 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"# Feature Engineering\n",
|
||||||
|
"# Klassifikation\n",
|
||||||
|
"# Regression\n",
|
||||||
|
"# Validierung und mehr\n",
|
||||||
|
"# Deployment und Abschluss"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"import sys\n",
|
||||||
|
"sys.path.append('./')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 2,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-08T10:06:24.890328Z",
|
||||||
|
"start_time": "2020-04-08T10:06:23.220148Z"
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## prepare environment\n",
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"import numpy as np\n",
|
||||||
|
"datapath = '../3_data'\n",
|
||||||
|
"from os import chdir; chdir(datapath)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## Das finale Modell\n",
|
||||||
|
"## Feature Engineering in der Produktion\n",
|
||||||
|
"### Missing Values\n",
|
||||||
|
"### Neue Kategorien\n",
|
||||||
|
"### Protokollieren"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 3,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"data = pd.read_csv('bank_data.csv', sep=';')\n",
|
||||||
|
"\n",
|
||||||
|
"import datetime\n",
|
||||||
|
"\n",
|
||||||
|
"f = open('fe_prod_log.log','w')\n",
|
||||||
|
"f.write(datetime.datetime.now().strftime(\"[%Y-%m-%d %H:%M:%S] (timestamp)\"))\n",
|
||||||
|
"\n",
|
||||||
|
"f.write('\\n\\n')\n",
|
||||||
|
"\n",
|
||||||
|
"s = data.isna().sum()\n",
|
||||||
|
"f.write('features with NA\\'s\\n')\n",
|
||||||
|
"f.write('=======================')\n",
|
||||||
|
"\n",
|
||||||
|
"f.write('\\n')\n",
|
||||||
|
"f.write(s[s > 0].to_string())\n",
|
||||||
|
"f.write('\\n\\n')\n",
|
||||||
|
"\n",
|
||||||
|
"## value counts of not numeric features\n",
|
||||||
|
"f.write('categorical cols levels\\n')\n",
|
||||||
|
"f.write('=======================')\n",
|
||||||
|
"f.write('\\n')\n",
|
||||||
|
"catcolnames = data.select_dtypes(include='object').columns\n",
|
||||||
|
"for ccn in catcolnames:\n",
|
||||||
|
" f.write(ccn)\n",
|
||||||
|
" f.write('\\n')\n",
|
||||||
|
" f.write(data[ccn].value_counts().sort_index().to_string())\n",
|
||||||
|
" f.write('\\n\\n')\n",
|
||||||
|
"f.close() "
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## Modellübergabe in die Prodkution"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Modelle speichern scikit-learn intern"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 4,
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## load data\n",
|
||||||
|
"from bfh_cas_pml import prep_data\n",
|
||||||
|
"X_train, X_test, y_train, y_test = prep_data('melb_data_prep.csv', 'Price')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 5,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## three models:\n",
|
||||||
|
"\n",
|
||||||
|
"## StandardScaler\n",
|
||||||
|
"from sklearn.preprocessing import StandardScaler\n",
|
||||||
|
"model_sc = StandardScaler().fit(X_train)\n",
|
||||||
|
"\n",
|
||||||
|
"## LinearRegression\n",
|
||||||
|
"from sklearn.linear_model import LinearRegression\n",
|
||||||
|
"model_lr = LinearRegression().fit(X_train, y_train)\n",
|
||||||
|
"\n",
|
||||||
|
"## DecisionTreeRegressor\n",
|
||||||
|
"from sklearn.tree import DecisionTreeRegressor\n",
|
||||||
|
"model_dt = DecisionTreeRegressor(max_depth= 2, random_state=1234).fit(X_train, y_train)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 6,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## save models\n",
|
||||||
|
"import pickle \n",
|
||||||
|
"with open('model_sc.pkl', 'wb') as pickle_file:\n",
|
||||||
|
" pickle.dump(model_sc, pickle_file)\n",
|
||||||
|
"with open('model_lr.pkl', 'wb') as pickle_file:\n",
|
||||||
|
" pickle.dump(model_lr, pickle_file)\n",
|
||||||
|
"with open('model_dt.pkl', 'wb') as pickle_file:\n",
|
||||||
|
" pickle.dump(model_dt, pickle_file)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 7,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## reload models\n",
|
||||||
|
"with open('model_sc.pkl', 'rb') as pickle_file:\n",
|
||||||
|
" model_sc_2 = pickle.load(pickle_file)\n",
|
||||||
|
"with open('model_lr.pkl', 'rb') as pickle_file:\n",
|
||||||
|
" model_lr_2 = pickle.load(pickle_file)\n",
|
||||||
|
"with open('model_dt.pkl', 'rb') as pickle_file:\n",
|
||||||
|
" model_dt_2 = pickle.load(pickle_file) "
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 8,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"[ 2.93174034e+00 1.45261784e+00 1.04267493e+01 1.43475779e+00\n",
|
||||||
|
" 1.68210732e+00 2.36615297e+00 2.09901978e+00 1.96804559e+03\n",
|
||||||
|
" 5.74824662e+00 -3.78091214e+01 1.44997478e+02 7.52039447e+03\n",
|
||||||
|
" 6.57396836e-01 1.29098026e-01 9.18284130e-02 2.89430762e-01\n",
|
||||||
|
" 3.73511662e-02 3.43010928e-01 1.01125428e-02 2.10650791e-01\n",
|
||||||
|
" 7.15274833e+00 2.01656214e+03 4.83925950e+00] \n",
|
||||||
|
"\n",
|
||||||
|
"[9.08813135e-01 4.68436712e-01 3.68004376e+01 4.24996430e-01\n",
|
||||||
|
" 7.32413501e-01 7.11803450e-01 3.34340977e-02 6.45488299e+02\n",
|
||||||
|
" 3.80781143e+01 5.53828210e-03 9.28052881e-03 2.02869238e+07\n",
|
||||||
|
" 2.25226236e-01 1.12431726e-01 8.33959556e-02 2.05660596e-01\n",
|
||||||
|
" 3.59560566e-02 2.25354431e-01 1.00102793e-02 1.66277035e-01\n",
|
||||||
|
" 6.21684084e+00 2.46138222e-01 1.23097215e+00] \n",
|
||||||
|
"\n",
|
||||||
|
"[ 2.93174034e+00 1.45261784e+00 1.04267493e+01 1.43475779e+00\n",
|
||||||
|
" 1.68210732e+00 2.36615297e+00 2.09901978e+00 1.96804559e+03\n",
|
||||||
|
" 5.74824662e+00 -3.78091214e+01 1.44997478e+02 7.52039447e+03\n",
|
||||||
|
" 6.57396836e-01 1.29098026e-01 9.18284130e-02 2.89430762e-01\n",
|
||||||
|
" 3.73511662e-02 3.43010928e-01 1.01125428e-02 2.10650791e-01\n",
|
||||||
|
" 7.15274833e+00 2.01656214e+03 4.83925950e+00] \n",
|
||||||
|
"\n",
|
||||||
|
"[9.08813135e-01 4.68436712e-01 3.68004376e+01 4.24996430e-01\n",
|
||||||
|
" 7.32413501e-01 7.11803450e-01 3.34340977e-02 6.45488299e+02\n",
|
||||||
|
" 3.80781143e+01 5.53828210e-03 9.28052881e-03 2.02869238e+07\n",
|
||||||
|
" 2.25226236e-01 1.12431726e-01 8.33959556e-02 2.05660596e-01\n",
|
||||||
|
" 3.59560566e-02 2.25354431e-01 1.00102793e-02 1.66277035e-01\n",
|
||||||
|
" 6.21684084e+00 2.46138222e-01 1.23097215e+00] \n",
|
||||||
|
"\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## compare model_sc\n",
|
||||||
|
"print(model_sc.mean_, '\\n')\n",
|
||||||
|
"print(model_sc.var_, '\\n')\n",
|
||||||
|
"print(model_sc_2.mean_, '\\n')\n",
|
||||||
|
"print(model_sc_2.var_, '\\n')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 9,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"-148600153.0644718\n",
|
||||||
|
"[ 2.38730932e+05 -1.44127046e+05 -4.11587415e+04 1.55233185e+05\n",
|
||||||
|
" 4.16082458e+04 8.22944764e+04 2.97716907e+05 -2.76754904e+03\n",
|
||||||
|
" -4.92937355e+03 -5.11115932e+05 1.79228159e+05 -1.58740210e+00\n",
|
||||||
|
" 7.07758671e+04 7.99854850e+03 3.38953273e+04 -1.73563804e+05\n",
|
||||||
|
" 1.07806729e+05 2.39261230e+05 2.81825047e+05 -2.26744902e+05\n",
|
||||||
|
" 1.27253408e+03 5.38476338e+04 3.83311293e+03] \n",
|
||||||
|
"\n",
|
||||||
|
"-148600153.0644718\n",
|
||||||
|
"[ 2.38730932e+05 -1.44127046e+05 -4.11587415e+04 1.55233185e+05\n",
|
||||||
|
" 4.16082458e+04 8.22944764e+04 2.97716907e+05 -2.76754904e+03\n",
|
||||||
|
" -4.92937355e+03 -5.11115932e+05 1.79228159e+05 -1.58740210e+00\n",
|
||||||
|
" 7.07758671e+04 7.99854850e+03 3.38953273e+04 -1.73563804e+05\n",
|
||||||
|
" 1.07806729e+05 2.39261230e+05 2.81825047e+05 -2.26744902e+05\n",
|
||||||
|
" 1.27253408e+03 5.38476338e+04 3.83311293e+03]\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## compare model_lr\n",
|
||||||
|
"print(model_lr.intercept_)\n",
|
||||||
|
"print(model_lr.coef_, '\\n')\n",
|
||||||
|
"print(model_lr_2.intercept_)\n",
|
||||||
|
"print(model_lr_2.coef_)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 10,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"|--- Rooms <= 3.50\n",
|
||||||
|
"| |--- Type <= 1.50\n",
|
||||||
|
"| | |--- value: [1077045.50]\n",
|
||||||
|
"| |--- Type > 1.50\n",
|
||||||
|
"| | |--- value: [682863.38]\n",
|
||||||
|
"|--- Rooms > 3.50\n",
|
||||||
|
"| |--- Regionname_Southern_Metropolitan <= 0.50\n",
|
||||||
|
"| | |--- value: [1163850.50]\n",
|
||||||
|
"| |--- Regionname_Southern_Metropolitan > 0.50\n",
|
||||||
|
"| | |--- value: [2113002.90]\n",
|
||||||
|
"\n",
|
||||||
|
"|--- Rooms <= 3.50\n",
|
||||||
|
"| |--- Type <= 1.50\n",
|
||||||
|
"| | |--- value: [1077045.50]\n",
|
||||||
|
"| |--- Type > 1.50\n",
|
||||||
|
"| | |--- value: [682863.38]\n",
|
||||||
|
"|--- Rooms > 3.50\n",
|
||||||
|
"| |--- Regionname_Southern_Metropolitan <= 0.50\n",
|
||||||
|
"| | |--- value: [1163850.50]\n",
|
||||||
|
"| |--- Regionname_Southern_Metropolitan > 0.50\n",
|
||||||
|
"| | |--- value: [2113002.90]\n",
|
||||||
|
"\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## compare model_dt\n",
|
||||||
|
"from sklearn.tree import export_text\n",
|
||||||
|
"print(export_text(\n",
|
||||||
|
" model_dt, feature_names=list(X_train.columns)))\n",
|
||||||
|
"print(export_text(\n",
|
||||||
|
" model_dt_2, feature_names=list(X_train.columns)))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"### Modelle speichern extern mit PMML"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"**Vorbereitungen:** \n",
|
||||||
|
"* Java Runtime muss vorhanden sein\n",
|
||||||
|
"* Library installieren direkt in Notebook: \n",
|
||||||
|
"`!pip install sklearn2pmml`"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 11,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"Requirement already satisfied: sklearn2pmml in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (0.119.1)\n",
|
||||||
|
"Requirement already satisfied: dill>=0.3.4 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from sklearn2pmml) (0.4.0)\n",
|
||||||
|
"Requirement already satisfied: joblib>=0.13.0 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from sklearn2pmml) (1.5.1)\n",
|
||||||
|
"Requirement already satisfied: pandas>=1.5.0 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from sklearn2pmml) (2.2.3)\n",
|
||||||
|
"Requirement already satisfied: scikit-learn>=1.0 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from sklearn2pmml) (1.6.1)\n",
|
||||||
|
"Requirement already satisfied: numpy>=1.26.0 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from pandas>=1.5.0->sklearn2pmml) (2.2.6)\n",
|
||||||
|
"Requirement already satisfied: python-dateutil>=2.8.2 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from pandas>=1.5.0->sklearn2pmml) (2.9.0.post0)\n",
|
||||||
|
"Requirement already satisfied: pytz>=2020.1 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from pandas>=1.5.0->sklearn2pmml) (2025.2)\n",
|
||||||
|
"Requirement already satisfied: tzdata>=2022.7 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from pandas>=1.5.0->sklearn2pmml) (2025.2)\n",
|
||||||
|
"Requirement already satisfied: six>=1.5 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from python-dateutil>=2.8.2->pandas>=1.5.0->sklearn2pmml) (1.17.0)\n",
|
||||||
|
"Requirement already satisfied: scipy>=1.6.0 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from scikit-learn>=1.0->sklearn2pmml) (1.15.3)\n",
|
||||||
|
"Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from scikit-learn>=1.0->sklearn2pmml) (3.6.0)\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"!pip install sklearn2pmml"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 12,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## import libraries\n",
|
||||||
|
"from sklearn.pipeline import Pipeline\n",
|
||||||
|
"from sklearn2pmml import PMMLPipeline, sklearn2pmml"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 13,
|
||||||
|
"metadata": {
|
||||||
|
"scrolled": true
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## StandardScaler\n",
|
||||||
|
"from sklearn.preprocessing import StandardScaler\n",
|
||||||
|
"pipeline = PMMLPipeline([(\"scaler\", StandardScaler())]).fit(X_train)\n",
|
||||||
|
"sklearn2pmml(pipeline, \"StandardScaler_melb.pmml\", with_repr = True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 14,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## LinearRegression\n",
|
||||||
|
"pipeline = PMMLPipeline([('regressor', LinearRegression())]).fit(X_train, y_train)\n",
|
||||||
|
"sklearn2pmml(pipeline, \"LinearRegression_melb.pmml\", with_repr = True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 15,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## DecisionTreeClassifier\n",
|
||||||
|
"pipeline = PMMLPipeline([('regressor', DecisionTreeRegressor(max_depth= 2, random_state=1234))]).fit(X_train, y_train)\n",
|
||||||
|
"sklearn2pmml(pipeline, \"DecisionTreeRegressor_melb.pmml\", with_repr = True)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"* re-import a pmml model\n",
|
||||||
|
" * see https://stackoverflow.com/questions/52393301/use-pmml-models-in-python"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "raw",
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"## !pip install pypmml\n",
|
||||||
|
"## not run: long running time\n",
|
||||||
|
"from pypmml import Model\n",
|
||||||
|
"new_model = Model.fromFile(\"StandardScaler_melb.pmml\")\n",
|
||||||
|
"result = new_model.predict(X_train)\n",
|
||||||
|
"print(result.describe())"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## Der Modellierungsprozess"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"(kein Code unter diesem Titel)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## pyCaret"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"vgl. `5.5 Deployment und Abschluss - pycaret.ipynb`"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python 3 (ipykernel)",
|
||||||
|
"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.13.0"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": "5",
|
||||||
|
"nav_menu": {},
|
||||||
|
"number_sections": true,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": false,
|
||||||
|
"title_cell": "5 Deployment und Abschluss",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": true,
|
||||||
|
"toc_position": {
|
||||||
|
"height": "calc(100% - 180px)",
|
||||||
|
"left": "10px",
|
||||||
|
"top": "150px",
|
||||||
|
"width": "165px"
|
||||||
|
},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": true
|
||||||
|
},
|
||||||
|
"varInspector": {
|
||||||
|
"cols": {
|
||||||
|
"lenName": 16,
|
||||||
|
"lenType": 16,
|
||||||
|
"lenVar": 40
|
||||||
|
},
|
||||||
|
"kernels_config": {
|
||||||
|
"python": {
|
||||||
|
"delete_cmd_postfix": "",
|
||||||
|
"delete_cmd_prefix": "del ",
|
||||||
|
"library": "var_list.py",
|
||||||
|
"varRefreshCmd": "print(var_dic_list())"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"delete_cmd_postfix": ") ",
|
||||||
|
"delete_cmd_prefix": "rm(",
|
||||||
|
"library": "var_list.r",
|
||||||
|
"varRefreshCmd": "cat(var_dic_list()) "
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"height": "321.85px",
|
||||||
|
"left": "790px",
|
||||||
|
"right": "20px",
|
||||||
|
"top": "113px",
|
||||||
|
"width": "350px"
|
||||||
|
},
|
||||||
|
"types_to_exclude": [
|
||||||
|
"module",
|
||||||
|
"function",
|
||||||
|
"builtin_function_or_method",
|
||||||
|
"instance",
|
||||||
|
"_Feature"
|
||||||
|
],
|
||||||
|
"window_display": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 4
|
||||||
|
}
|
||||||
@@ -0,0 +1,118 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "e0323bfc",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"# Nachträge"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "41f6b0e4",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"* dieses Dokument kann von Kurstag zu Kurstag ergänzt werden, daher sollte es jeweils ebenfalls jeweils neu heruntergeladen werden"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "0fce9c83",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"## Extra Themen"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "7673663f",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"* eine Zusammenstellung von Themen aus der Präsentation, welche **nicht** prüfungsrelevant sind, zusätzlich zu den explizit mit (i) gekennzeichneten Folien\n",
|
||||||
|
"* die Zusammenstellung wird fortlaufend ergänzt n.n."
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "65be8be0",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"|Kapitel |Folie(n)\n",
|
||||||
|
"|:------------------------------------------------------------|:-------\n",
|
||||||
|
"|**1. Feature Engineering** |\n",
|
||||||
|
"|1.1.4.5 Begriffe - Homonyme und Synonyme |20-21\n",
|
||||||
|
"|1.2.3.1 Numerische Variablen - Quantitativ (Nachbemerkung) |24\n",
|
||||||
|
"|1.2.4.5 Lineare Zusammenhänge, etc. |49-55"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python 3 (ipykernel)",
|
||||||
|
"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.11.7"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": "9",
|
||||||
|
"nav_menu": {},
|
||||||
|
"number_sections": true,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": false,
|
||||||
|
"title_cell": "9 Nachträge Allgemein",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": true,
|
||||||
|
"toc_position": {
|
||||||
|
"height": "calc(100% - 180px)",
|
||||||
|
"left": "10px",
|
||||||
|
"top": "150px",
|
||||||
|
"width": "240.667px"
|
||||||
|
},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": true
|
||||||
|
},
|
||||||
|
"varInspector": {
|
||||||
|
"cols": {
|
||||||
|
"lenName": 16,
|
||||||
|
"lenType": 16,
|
||||||
|
"lenVar": 40
|
||||||
|
},
|
||||||
|
"kernels_config": {
|
||||||
|
"python": {
|
||||||
|
"delete_cmd_postfix": "",
|
||||||
|
"delete_cmd_prefix": "del ",
|
||||||
|
"library": "var_list.py",
|
||||||
|
"varRefreshCmd": "print(var_dic_list())"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"delete_cmd_postfix": ") ",
|
||||||
|
"delete_cmd_prefix": "rm(",
|
||||||
|
"library": "var_list.r",
|
||||||
|
"varRefreshCmd": "cat(var_dic_list()) "
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"types_to_exclude": [
|
||||||
|
"module",
|
||||||
|
"function",
|
||||||
|
"builtin_function_or_method",
|
||||||
|
"instance",
|
||||||
|
"_Feature"
|
||||||
|
],
|
||||||
|
"window_display": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 5
|
||||||
|
}
|
||||||
@@ -0,0 +1,193 @@
|
|||||||
|
"""
|
||||||
|
Useful functions for example notebooks and workshop solutions
|
||||||
|
of course Practical Machine Learning - Supervised Learning
|
||||||
|
Bern University of Applied Sciences (BFH)
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
# ========== Packages ==========
|
||||||
|
|
||||||
|
import pandas as pd
|
||||||
|
import numpy as np
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
import seaborn as sns
|
||||||
|
|
||||||
|
|
||||||
|
# ========== Functions ==========
|
||||||
|
|
||||||
|
def prep_data(dataset, target, train_ratio = 2 / 3, seed = None, sep = ','):
|
||||||
|
""" read and prepare real data from the current directory
|
||||||
|
performs
|
||||||
|
read data
|
||||||
|
features - target - split
|
||||||
|
train - test - split
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
dataset: name of dataset in csv format
|
||||||
|
target: name of target column
|
||||||
|
train_ratio (2 / 3): (optional)
|
||||||
|
seed (None): random seet for split (optional)
|
||||||
|
sep (,): separator of csv file (optional)
|
||||||
|
|
||||||
|
Returns
|
||||||
|
-------
|
||||||
|
X_train: feature matrix of train set
|
||||||
|
X_test: target vector of train set
|
||||||
|
y_train: feature matrix of test set
|
||||||
|
y_test: target vector of train set
|
||||||
|
"""
|
||||||
|
|
||||||
|
## load data
|
||||||
|
data = pd.read_csv(dataset, sep = sep)
|
||||||
|
|
||||||
|
## features - target - split
|
||||||
|
X = data.drop(target, axis=1)
|
||||||
|
y = data[target]
|
||||||
|
|
||||||
|
## train - test - split
|
||||||
|
from sklearn.model_selection import train_test_split
|
||||||
|
return train_test_split(
|
||||||
|
X,
|
||||||
|
y,
|
||||||
|
train_size=train_ratio,
|
||||||
|
random_state=seed)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def prep_demo_data(dataset, target):
|
||||||
|
""" read demo data from the current directory
|
||||||
|
performs
|
||||||
|
read data
|
||||||
|
features - target - split
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
dataset: name of dataset in csv format, ',' separated
|
||||||
|
target: name of target column
|
||||||
|
|
||||||
|
Returns
|
||||||
|
-------
|
||||||
|
X: feature matrix
|
||||||
|
y: target vector
|
||||||
|
"""
|
||||||
|
|
||||||
|
## load data
|
||||||
|
data = pd.read_csv(dataset)
|
||||||
|
|
||||||
|
## features - target - split
|
||||||
|
X = data.drop(target, axis=1)
|
||||||
|
y = data[target]
|
||||||
|
|
||||||
|
return X, y
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def inspect_decision_tree_model(model_def, features, target, figsize=(6, 6)):
|
||||||
|
""" train a DecisionTreeClassifier and visualize the tree
|
||||||
|
|
||||||
|
prints some motel attributes from within the function
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
model_def: DecisionTreeClassifier object with set parameters
|
||||||
|
features: feature matrix
|
||||||
|
target: target vector
|
||||||
|
figsize: size of image, optional, default = (6, 6)
|
||||||
|
|
||||||
|
Returns
|
||||||
|
-------
|
||||||
|
visualization of the trained tree
|
||||||
|
prints model attributes
|
||||||
|
"""
|
||||||
|
|
||||||
|
from sklearn.tree import plot_tree
|
||||||
|
|
||||||
|
model = model_def
|
||||||
|
model.fit(features, target)
|
||||||
|
|
||||||
|
print('TREE DIAGNOSTICS:')
|
||||||
|
print('depth :', model.get_depth())
|
||||||
|
print('leaves :', model.get_n_leaves())
|
||||||
|
print('score :', model.score(features, target))
|
||||||
|
|
||||||
|
plt.figure(figsize=figsize)
|
||||||
|
plot_tree(model,
|
||||||
|
feature_names=features.columns,
|
||||||
|
class_names=model.classes_,
|
||||||
|
filled=True);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def test_regression_model(model, X_train, y_train, X_test, y_test, show_plot=True):
|
||||||
|
|
||||||
|
""" shows behavoiur of univariate ML regression on synthetic dataset
|
||||||
|
|
||||||
|
performs
|
||||||
|
- training on train data
|
||||||
|
- prediction on test data
|
||||||
|
- calculate performance measures
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
model: a parametrized regression model
|
||||||
|
X_train, y_train: train data
|
||||||
|
X_test, y_test: test data
|
||||||
|
show_plot: show scatterplot ov pred vs true, optional, default=True
|
||||||
|
|
||||||
|
|
||||||
|
Returns
|
||||||
|
-------
|
||||||
|
shows a scatterplot von X_test vs X_pred with a diagonal line, indicating identity
|
||||||
|
prints r2_score and mean_squared_error
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
from sklearn.metrics import r2_score
|
||||||
|
from sklearn.metrics import mean_squared_error
|
||||||
|
|
||||||
|
model = model
|
||||||
|
model.fit(X_train, y_train)
|
||||||
|
y_pred = model.predict(X_test)
|
||||||
|
print('R2 = %0.4f' %(r2_score(y_test, y_pred)))
|
||||||
|
|
||||||
|
if show_plot == True:
|
||||||
|
plt.figure(figsize=(6,6))
|
||||||
|
ax = sns.scatterplot(x=y_test, y=y_pred)
|
||||||
|
ax.set(xlabel='y_test', ylabel='y_pred')
|
||||||
|
ls = np.linspace(min(y_test), max(y_test), 100)
|
||||||
|
plt.plot(ls, ls, color='black', linestyle='dashed')
|
||||||
|
ax.set_title(model.__class__.__name__)
|
||||||
|
plt.show()
|
||||||
|
|
||||||
|
return (model)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def show_pred_on_synth(model, X, y, X_synth, param_str):
|
||||||
|
""" shows behavoiur of univariate ML regression on synthetic dataset
|
||||||
|
|
||||||
|
Parameters
|
||||||
|
----------
|
||||||
|
model: a parametrized regression model
|
||||||
|
X, y: data for univariate regression
|
||||||
|
X_synth: synthetic Feature
|
||||||
|
param_str: parameter description for title
|
||||||
|
seed (None): random seet for split
|
||||||
|
|
||||||
|
Returns
|
||||||
|
-------
|
||||||
|
a scatterplot von X, y, with the prediction values for X_synth
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
model.fit(X.to_numpy(), y)
|
||||||
|
y_pred = model.predict(X_synth)
|
||||||
|
|
||||||
|
ax = sns.scatterplot(x=X['X'], y=y)
|
||||||
|
ax = sns.lineplot(x=X_synth[:,0], y=y_pred, color='orange')
|
||||||
|
ax.set_title(model.__class__.__name__ + ' : ' + param_str)
|
||||||
|
ax.set(xlabel='X', ylabel='y')
|
||||||
|
plt.show()
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,178 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "6394031a-f4e6-40b6-8612-9dbcea9cc456",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"# extra_3.2.1.4_linear_regression_in_data_analytics.ipynb"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"id": "9be95ca5-b3d6-4e6f-9ca6-9d84b1bf726e",
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"import sys\n",
|
||||||
|
"sys.path.append('./')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 2,
|
||||||
|
"id": "23f2b845-764a-46f4-8a51-e1787c05b878",
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-08T10:06:24.890328Z",
|
||||||
|
"start_time": "2020-04-08T10:06:23.220148Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## prepare env and data\n",
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"import numpy as np\n",
|
||||||
|
"import matplotlib.pyplot as plt\n",
|
||||||
|
"import seaborn as sns; sns.set()\n",
|
||||||
|
"%matplotlib inline\n",
|
||||||
|
"\n",
|
||||||
|
"datapath = '../3_data'\n",
|
||||||
|
"from os import chdir; chdir(datapath)\n",
|
||||||
|
"\n",
|
||||||
|
"from bfh_cas_pml import prep_data\n",
|
||||||
|
"X_train, X_test, y_train, y_test = prep_data('melb_data_prep.csv', 'Price', seed = 1234)"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 3,
|
||||||
|
"id": "27dd0331-0bdf-43d2-8dcd-29b54ff147e9",
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"Collecting statsmodels\n",
|
||||||
|
" Downloading statsmodels-0.14.4-cp313-cp313-macosx_11_0_arm64.whl.metadata (9.2 kB)\n",
|
||||||
|
"Requirement already satisfied: numpy<3,>=1.22.3 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from statsmodels) (2.2.6)\n",
|
||||||
|
"Requirement already satisfied: scipy!=1.9.2,>=1.8 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from statsmodels) (1.15.3)\n",
|
||||||
|
"Requirement already satisfied: pandas!=2.1.0,>=1.4 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from statsmodels) (2.2.3)\n",
|
||||||
|
"Collecting patsy>=0.5.6 (from statsmodels)\n",
|
||||||
|
" Downloading patsy-1.0.1-py2.py3-none-any.whl.metadata (3.3 kB)\n",
|
||||||
|
"Requirement already satisfied: packaging>=21.3 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from statsmodels) (25.0)\n",
|
||||||
|
"Requirement already satisfied: python-dateutil>=2.8.2 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from pandas!=2.1.0,>=1.4->statsmodels) (2.9.0.post0)\n",
|
||||||
|
"Requirement already satisfied: pytz>=2020.1 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from pandas!=2.1.0,>=1.4->statsmodels) (2025.2)\n",
|
||||||
|
"Requirement already satisfied: tzdata>=2022.7 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from pandas!=2.1.0,>=1.4->statsmodels) (2025.2)\n",
|
||||||
|
"Requirement already satisfied: six>=1.5 in /Users/vgv1/.pyenv/versions/teaching/lib/python3.13/site-packages (from python-dateutil>=2.8.2->pandas!=2.1.0,>=1.4->statsmodels) (1.17.0)\n",
|
||||||
|
"Downloading statsmodels-0.14.4-cp313-cp313-macosx_11_0_arm64.whl (9.9 MB)\n",
|
||||||
|
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m9.9/9.9 MB\u001b[0m \u001b[31m11.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
|
||||||
|
"\u001b[?25hDownloading patsy-1.0.1-py2.py3-none-any.whl (232 kB)\n",
|
||||||
|
"Installing collected packages: patsy, statsmodels\n",
|
||||||
|
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2/2\u001b[0m [statsmodels]\u001b[0m [statsmodels]\n",
|
||||||
|
"\u001b[1A\u001b[2KSuccessfully installed patsy-1.0.1 statsmodels-0.14.4\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"!pip install statsmodels"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 4,
|
||||||
|
"id": "c6ce688e-aea0-4030-afe7-1dbf56b03ea1",
|
||||||
|
"metadata": {
|
||||||
|
"scrolled": true,
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
" OLS Regression Results \n",
|
||||||
|
"==============================================================================\n",
|
||||||
|
"Dep. Variable: Price R-squared: 0.586\n",
|
||||||
|
"Model: OLS Adj. R-squared: 0.585\n",
|
||||||
|
"Method: Least Squares F-statistic: 752.8\n",
|
||||||
|
"Date: Sat, 21 Jun 2025 Prob (F-statistic): 0.00\n",
|
||||||
|
"Time: 22:34:27 Log-Likelihood: -1.7592e+05\n",
|
||||||
|
"No. Observations: 12262 AIC: 3.519e+05\n",
|
||||||
|
"Df Residuals: 12238 BIC: 3.521e+05\n",
|
||||||
|
"Df Model: 23 \n",
|
||||||
|
"Covariance Type: nonrobust \n",
|
||||||
|
"=========================================================================================================\n",
|
||||||
|
" coef std err t P>|t| [0.025 0.975]\n",
|
||||||
|
"---------------------------------------------------------------------------------------------------------\n",
|
||||||
|
"const -1.055e+08 1.99e+07 -5.300 0.000 -1.45e+08 -6.65e+07\n",
|
||||||
|
"Rooms 2.454e+05 5402.990 45.416 0.000 2.35e+05 2.56e+05\n",
|
||||||
|
"Type -1.414e+05 6342.919 -22.286 0.000 -1.54e+05 -1.29e+05\n",
|
||||||
|
"Distance -4.038e+04 928.303 -43.503 0.000 -4.22e+04 -3.86e+04\n",
|
||||||
|
"Bathroom 1.613e+05 7004.805 23.032 0.000 1.48e+05 1.75e+05\n",
|
||||||
|
"Car 4.039e+04 4723.191 8.552 0.000 3.11e+04 4.96e+04\n",
|
||||||
|
"logLandsize 8.33e+04 5149.484 16.177 0.000 7.32e+04 9.34e+04\n",
|
||||||
|
"logBuildingArea 2.738e+05 2.27e+04 12.064 0.000 2.29e+05 3.18e+05\n",
|
||||||
|
"YearBuilt -2484.2291 162.873 -15.253 0.000 -2803.486 -2164.972\n",
|
||||||
|
"CouncilArea -4977.2245 674.748 -7.376 0.000 -6299.838 -3654.611\n",
|
||||||
|
"Lattitude -5.15e+05 7.24e+04 -7.114 0.000 -6.57e+05 -3.73e+05\n",
|
||||||
|
"Longtitude 1.926e+05 5.94e+04 3.241 0.001 7.61e+04 3.09e+05\n",
|
||||||
|
"Propertycount -1.1982 0.893 -1.342 0.180 -2.948 0.552\n",
|
||||||
|
"Method_S 9.427e+04 1.17e+04 8.065 0.000 7.14e+04 1.17e+05\n",
|
||||||
|
"Method_SP 4.166e+04 1.51e+04 2.760 0.006 1.21e+04 7.13e+04\n",
|
||||||
|
"Method_VB 5.418e+04 1.63e+04 3.315 0.001 2.21e+04 8.62e+04\n",
|
||||||
|
"Regionname_Northern_Metropolitan -1.85e+05 1.62e+04 -11.404 0.000 -2.17e+05 -1.53e+05\n",
|
||||||
|
"Regionname_South_Eastern_Metropolitan 8.791e+04 2.69e+04 3.269 0.001 3.52e+04 1.41e+05\n",
|
||||||
|
"Regionname_Southern_Metropolitan 2.44e+05 1.54e+04 15.820 0.000 2.14e+05 2.74e+05\n",
|
||||||
|
"Regionname_Victoria 2.656e+05 4.46e+04 5.954 0.000 1.78e+05 3.53e+05\n",
|
||||||
|
"Regionname_Western_Metropolitan -2.317e+05 1.93e+04 -12.030 0.000 -2.69e+05 -1.94e+05\n",
|
||||||
|
"month 1756.1890 1674.442 1.049 0.294 -1525.982 5038.360\n",
|
||||||
|
"year 3.116e+04 8889.372 3.505 0.000 1.37e+04 4.86e+04\n",
|
||||||
|
"day_of_week 4708.3047 3427.552 1.374 0.170 -2010.239 1.14e+04\n",
|
||||||
|
"==============================================================================\n",
|
||||||
|
"Omnibus: 6530.672 Durbin-Watson: 2.000\n",
|
||||||
|
"Prob(Omnibus): 0.000 Jarque-Bera (JB): 95692.398\n",
|
||||||
|
"Skew: 2.225 Prob(JB): 0.00\n",
|
||||||
|
"Kurtosis: 15.942 Cond. No. 4.86e+07\n",
|
||||||
|
"==============================================================================\n",
|
||||||
|
"\n",
|
||||||
|
"Notes:\n",
|
||||||
|
"[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
|
||||||
|
"[2] The condition number is large, 4.86e+07. This might indicate that there are\n",
|
||||||
|
"strong multicollinearity or other numerical problems.\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"import statsmodels.api as sm\n",
|
||||||
|
"X_train_ = sm.add_constant(X_train)\n",
|
||||||
|
"model = sm.OLS(y_train, X_train_, hasconst=True)\n",
|
||||||
|
"results = model.fit()\n",
|
||||||
|
"print(results.summary())"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python 3 (ipykernel)",
|
||||||
|
"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.13.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 5
|
||||||
|
}
|
||||||
@@ -0,0 +1,341 @@
|
|||||||
|
{
|
||||||
|
"cells": [
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"# extra_3.3.4_weitere_ensemble_regressoren.ipynb"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 1,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"import sys\n",
|
||||||
|
"sys.path.append('./')"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 2,
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## for scikit-learn 1.4.2, to silence warnings regarding physical cores\n",
|
||||||
|
"import os\n",
|
||||||
|
"os.environ['LOKY_MAX_CPU_COUNT'] = '4' ## depending on the hardware used"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 3,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-08T10:06:24.890328Z",
|
||||||
|
"start_time": "2020-04-08T10:06:23.220148Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"## prepare environment and data\n",
|
||||||
|
"\n",
|
||||||
|
"import pandas as pd\n",
|
||||||
|
"import numpy as np\n",
|
||||||
|
"import matplotlib.pyplot as plt\n",
|
||||||
|
"import seaborn as sns; sns.set()\n",
|
||||||
|
"%matplotlib inline\n",
|
||||||
|
"\n",
|
||||||
|
"datapath = '../3_data'\n",
|
||||||
|
"from os import chdir; chdir(datapath)\n",
|
||||||
|
"\n",
|
||||||
|
"from bfh_cas_pml import prep_data, prep_demo_data\n",
|
||||||
|
"X_train, X_test, y_train, y_test = prep_data('melb_data_prep.csv', 'Price', seed = 1234)\n",
|
||||||
|
"\n",
|
||||||
|
"from bfh_cas_pml import test_regression_model\n",
|
||||||
|
"\n",
|
||||||
|
"names = []\n",
|
||||||
|
"scores = []"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"**AdaBoostRegressor**"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 4,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-08T10:06:45.098899Z",
|
||||||
|
"start_time": "2020-04-08T10:06:44.257283Z"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"R2 = -0.3023\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.ensemble import AdaBoostRegressor\n",
|
||||||
|
"this_model = test_regression_model(\n",
|
||||||
|
" AdaBoostRegressor(random_state=1234), \n",
|
||||||
|
" X_train, y_train, X_test, y_test,\n",
|
||||||
|
" show_plot=False)\n",
|
||||||
|
"names.append(this_model.__class__.__name__)\n",
|
||||||
|
"scores.append(this_model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"**GradientBoostingRegressor**"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 5,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-08T10:06:45.952822Z",
|
||||||
|
"start_time": "2020-04-08T10:06:45.101810Z"
|
||||||
|
},
|
||||||
|
"scrolled": true
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"R2 = 0.7250\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.ensemble import GradientBoostingRegressor\n",
|
||||||
|
"this_model = test_regression_model(\n",
|
||||||
|
" GradientBoostingRegressor(random_state=1234), \n",
|
||||||
|
" X_train, y_train, X_test, y_test,\n",
|
||||||
|
" show_plot=False)\n",
|
||||||
|
"names.append(this_model.__class__.__name__)\n",
|
||||||
|
"scores.append(this_model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"**HistGradientBoostingRegressor**\n",
|
||||||
|
"\n",
|
||||||
|
"\"This estimator is much faster than GradientBoostingRegressor for big datasets (n_samples >= 10 000).\" [https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.HistGradientBoostingRegressor.html#sklearn.ensemble.HistGradientBoostingRegressor]"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 6,
|
||||||
|
"metadata": {
|
||||||
|
"ExecuteTime": {
|
||||||
|
"end_time": "2020-04-08T10:06:48.544788Z",
|
||||||
|
"start_time": "2020-04-08T10:06:45.955387Z"
|
||||||
|
},
|
||||||
|
"scrolled": true
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"R2 = 0.7846\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from sklearn.ensemble import HistGradientBoostingRegressor\n",
|
||||||
|
"this_model = test_regression_model(\n",
|
||||||
|
" HistGradientBoostingRegressor(), \n",
|
||||||
|
" X_train, y_train, X_test, y_test,\n",
|
||||||
|
" show_plot=False)\n",
|
||||||
|
"names.append(this_model.__class__.__name__)\n",
|
||||||
|
"scores.append(this_model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"**CatBoostRegressor**"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 7,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"R2 = 0.8003\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from catboost import CatBoostRegressor\n",
|
||||||
|
"this_model = test_regression_model(\n",
|
||||||
|
" CatBoostRegressor(logging_level='Silent'), \n",
|
||||||
|
" X_train, y_train, X_test, y_test,\n",
|
||||||
|
" show_plot=False)\n",
|
||||||
|
"names.append(this_model.__class__.__name__)\n",
|
||||||
|
"scores.append(this_model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"metadata": {},
|
||||||
|
"source": [
|
||||||
|
"**LGBMRegressor**"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 8,
|
||||||
|
"metadata": {},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
"[LightGBM] [Info] Auto-choosing row-wise multi-threading, the overhead of testing was 0.000113 seconds.\n",
|
||||||
|
"You can set `force_row_wise=true` to remove the overhead.\n",
|
||||||
|
"And if memory is not enough, you can set `force_col_wise=true`.\n",
|
||||||
|
"[LightGBM] [Info] Total Bins 1630\n",
|
||||||
|
"[LightGBM] [Info] Number of data points in the train set: 12262, number of used features: 23\n",
|
||||||
|
"[LightGBM] [Info] Start training from score 1055902.695237\n",
|
||||||
|
"R2 = 0.7882\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"from lightgbm import LGBMRegressor\n",
|
||||||
|
"this_model = test_regression_model(\n",
|
||||||
|
" LGBMRegressor(), \n",
|
||||||
|
" X_train, y_train, X_test, y_test,\n",
|
||||||
|
" show_plot=False)\n",
|
||||||
|
"names.append(this_model.__class__.__name__)\n",
|
||||||
|
"scores.append(this_model.score(X_test, y_test))"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": 9,
|
||||||
|
"metadata": {
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [
|
||||||
|
{
|
||||||
|
"name": "stdout",
|
||||||
|
"output_type": "stream",
|
||||||
|
"text": [
|
||||||
|
" models scores\n",
|
||||||
|
"0 AdaBoostRegressor -0.302314\n",
|
||||||
|
"1 GradientBoostingRegressor 0.724983\n",
|
||||||
|
"2 HistGradientBoostingRegressor 0.784615\n",
|
||||||
|
"3 CatBoostRegressor 0.800349\n",
|
||||||
|
"4 LGBMRegressor 0.788166\n"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"source": [
|
||||||
|
"## synthesis\n",
|
||||||
|
"print(pd.DataFrame({'models': names, 'scores': scores}))"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"metadata": {
|
||||||
|
"kernelspec": {
|
||||||
|
"display_name": "Python 3 (ipykernel)",
|
||||||
|
"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.13.0"
|
||||||
|
},
|
||||||
|
"toc": {
|
||||||
|
"base_numbering": "3.3",
|
||||||
|
"nav_menu": {},
|
||||||
|
"number_sections": true,
|
||||||
|
"sideBar": true,
|
||||||
|
"skip_h1_title": false,
|
||||||
|
"title_cell": "3.3 Regression - ML Methoden",
|
||||||
|
"title_sidebar": "Contents",
|
||||||
|
"toc_cell": true,
|
||||||
|
"toc_position": {
|
||||||
|
"height": "calc(100% - 180px)",
|
||||||
|
"left": "10px",
|
||||||
|
"top": "150px",
|
||||||
|
"width": "186.867px"
|
||||||
|
},
|
||||||
|
"toc_section_display": true,
|
||||||
|
"toc_window_display": true
|
||||||
|
},
|
||||||
|
"toc-autonumbering": true,
|
||||||
|
"varInspector": {
|
||||||
|
"cols": {
|
||||||
|
"lenName": 16,
|
||||||
|
"lenType": 16,
|
||||||
|
"lenVar": 40
|
||||||
|
},
|
||||||
|
"kernels_config": {
|
||||||
|
"python": {
|
||||||
|
"delete_cmd_postfix": "",
|
||||||
|
"delete_cmd_prefix": "del ",
|
||||||
|
"library": "var_list.py",
|
||||||
|
"varRefreshCmd": "print(var_dic_list())"
|
||||||
|
},
|
||||||
|
"r": {
|
||||||
|
"delete_cmd_postfix": ") ",
|
||||||
|
"delete_cmd_prefix": "rm(",
|
||||||
|
"library": "var_list.r",
|
||||||
|
"varRefreshCmd": "cat(var_dic_list()) "
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"position": {
|
||||||
|
"height": "321.85px",
|
||||||
|
"left": "787px",
|
||||||
|
"right": "20px",
|
||||||
|
"top": "115px",
|
||||||
|
"width": "350px"
|
||||||
|
},
|
||||||
|
"types_to_exclude": [
|
||||||
|
"module",
|
||||||
|
"function",
|
||||||
|
"builtin_function_or_method",
|
||||||
|
"instance",
|
||||||
|
"_Feature"
|
||||||
|
],
|
||||||
|
"window_display": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nbformat": 4,
|
||||||
|
"nbformat_minor": 4
|
||||||
|
}
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<PMML xmlns="http://www.dmg.org/PMML-4_4" xmlns:data="http://jpmml.org/jpmml-model/InlineTable" version="4.4">
|
||||||
|
<Header>
|
||||||
|
<Application name="SkLearn2PMML package" version="0.119.1"/>
|
||||||
|
<Timestamp>2025-06-21T20:20:46Z</Timestamp>
|
||||||
|
</Header>
|
||||||
|
<MiningBuildTask>
|
||||||
|
<Extension name="repr">PMMLPipeline(steps=[('regressor', DecisionTreeRegressor(max_depth=2, random_state=1234))])</Extension>
|
||||||
|
</MiningBuildTask>
|
||||||
|
<DataDictionary>
|
||||||
|
<DataField name="Price" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Rooms" optype="continuous" dataType="float"/>
|
||||||
|
<DataField name="Type" optype="continuous" dataType="float"/>
|
||||||
|
<DataField name="Regionname_Southern_Metropolitan" optype="continuous" dataType="float"/>
|
||||||
|
</DataDictionary>
|
||||||
|
<TreeModel functionName="regression" algorithmName="sklearn.tree._classes.DecisionTreeRegressor" missingValueStrategy="nullPrediction" noTrueChildStrategy="returnLastPrediction">
|
||||||
|
<MiningSchema>
|
||||||
|
<MiningField name="Price" usageType="target"/>
|
||||||
|
<MiningField name="Rooms"/>
|
||||||
|
<MiningField name="Type"/>
|
||||||
|
<MiningField name="Regionname_Southern_Metropolitan"/>
|
||||||
|
</MiningSchema>
|
||||||
|
<LocalTransformations>
|
||||||
|
<DerivedField name="double(Rooms)" optype="continuous" dataType="double">
|
||||||
|
<FieldRef field="Rooms"/>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="double(Type)" optype="continuous" dataType="double">
|
||||||
|
<FieldRef field="Type"/>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="double(Regionname_Southern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<FieldRef field="Regionname_Southern_Metropolitan"/>
|
||||||
|
</DerivedField>
|
||||||
|
</LocalTransformations>
|
||||||
|
<Node score="2113002.898989899">
|
||||||
|
<True/>
|
||||||
|
<Node score="682863.3751581077">
|
||||||
|
<SimplePredicate field="double(Rooms)" operator="lessOrEqual" value="3.5"/>
|
||||||
|
<Node score="1077045.4976463942">
|
||||||
|
<SimplePredicate field="double(Type)" operator="lessOrEqual" value="1.5"/>
|
||||||
|
</Node>
|
||||||
|
</Node>
|
||||||
|
<Node score="1163850.4992142483">
|
||||||
|
<SimplePredicate field="double(Regionname_Southern_Metropolitan)" operator="lessOrEqual" value="0.5"/>
|
||||||
|
</Node>
|
||||||
|
</Node>
|
||||||
|
</TreeModel>
|
||||||
|
</PMML>
|
||||||
@@ -0,0 +1,89 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<PMML xmlns="http://www.dmg.org/PMML-4_4" xmlns:data="http://jpmml.org/jpmml-model/InlineTable" version="4.4">
|
||||||
|
<Header>
|
||||||
|
<Application name="SkLearn2PMML package" version="0.119.1"/>
|
||||||
|
<Timestamp>2025-06-21T20:20:46Z</Timestamp>
|
||||||
|
</Header>
|
||||||
|
<MiningBuildTask>
|
||||||
|
<Extension name="repr">PMMLPipeline(steps=[('regressor', LinearRegression())])</Extension>
|
||||||
|
</MiningBuildTask>
|
||||||
|
<DataDictionary>
|
||||||
|
<DataField name="Price" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Rooms" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Type" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Distance" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Bathroom" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Car" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logLandsize" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logBuildingArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="YearBuilt" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="CouncilArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Lattitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Longtitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Propertycount" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_S" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_SP" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_VB" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Northern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_South_Eastern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Southern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Victoria" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Western_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="month" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="year" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="day_of_week" optype="continuous" dataType="double"/>
|
||||||
|
</DataDictionary>
|
||||||
|
<RegressionModel functionName="regression" algorithmName="sklearn.linear_model._base.LinearRegression">
|
||||||
|
<MiningSchema>
|
||||||
|
<MiningField name="Price" usageType="target"/>
|
||||||
|
<MiningField name="Rooms"/>
|
||||||
|
<MiningField name="Type"/>
|
||||||
|
<MiningField name="Distance"/>
|
||||||
|
<MiningField name="Bathroom"/>
|
||||||
|
<MiningField name="Car"/>
|
||||||
|
<MiningField name="logLandsize"/>
|
||||||
|
<MiningField name="logBuildingArea"/>
|
||||||
|
<MiningField name="YearBuilt"/>
|
||||||
|
<MiningField name="CouncilArea"/>
|
||||||
|
<MiningField name="Lattitude"/>
|
||||||
|
<MiningField name="Longtitude"/>
|
||||||
|
<MiningField name="Propertycount"/>
|
||||||
|
<MiningField name="Method_S"/>
|
||||||
|
<MiningField name="Method_SP"/>
|
||||||
|
<MiningField name="Method_VB"/>
|
||||||
|
<MiningField name="Regionname_Northern_Metropolitan"/>
|
||||||
|
<MiningField name="Regionname_South_Eastern_Metropolitan"/>
|
||||||
|
<MiningField name="Regionname_Southern_Metropolitan"/>
|
||||||
|
<MiningField name="Regionname_Victoria"/>
|
||||||
|
<MiningField name="Regionname_Western_Metropolitan"/>
|
||||||
|
<MiningField name="month"/>
|
||||||
|
<MiningField name="year"/>
|
||||||
|
<MiningField name="day_of_week"/>
|
||||||
|
</MiningSchema>
|
||||||
|
<RegressionTable intercept="-1.486001530644718E8">
|
||||||
|
<NumericPredictor name="Rooms" coefficient="238730.9316843776"/>
|
||||||
|
<NumericPredictor name="Type" coefficient="-144127.0462703874"/>
|
||||||
|
<NumericPredictor name="Distance" coefficient="-41158.74149442419"/>
|
||||||
|
<NumericPredictor name="Bathroom" coefficient="155233.18486695606"/>
|
||||||
|
<NumericPredictor name="Car" coefficient="41608.24584805156"/>
|
||||||
|
<NumericPredictor name="logLandsize" coefficient="82294.47642306813"/>
|
||||||
|
<NumericPredictor name="logBuildingArea" coefficient="297716.9070603722"/>
|
||||||
|
<NumericPredictor name="YearBuilt" coefficient="-2767.549042441214"/>
|
||||||
|
<NumericPredictor name="CouncilArea" coefficient="-4929.3735515952385"/>
|
||||||
|
<NumericPredictor name="Lattitude" coefficient="-511115.932452351"/>
|
||||||
|
<NumericPredictor name="Longtitude" coefficient="179228.15909129355"/>
|
||||||
|
<NumericPredictor name="Propertycount" coefficient="-1.5874021046959097"/>
|
||||||
|
<NumericPredictor name="Method_S" coefficient="70775.86711001841"/>
|
||||||
|
<NumericPredictor name="Method_SP" coefficient="7998.548503785693"/>
|
||||||
|
<NumericPredictor name="Method_VB" coefficient="33895.327337749855"/>
|
||||||
|
<NumericPredictor name="Regionname_Northern_Metropolitan" coefficient="-173563.80389381657"/>
|
||||||
|
<NumericPredictor name="Regionname_South_Eastern_Metropolitan" coefficient="107806.72896395726"/>
|
||||||
|
<NumericPredictor name="Regionname_Southern_Metropolitan" coefficient="239261.2304157773"/>
|
||||||
|
<NumericPredictor name="Regionname_Victoria" coefficient="281825.04678020324"/>
|
||||||
|
<NumericPredictor name="Regionname_Western_Metropolitan" coefficient="-226744.90218339747"/>
|
||||||
|
<NumericPredictor name="month" coefficient="1272.5340782417852"/>
|
||||||
|
<NumericPredictor name="year" coefficient="53847.63382995822"/>
|
||||||
|
<NumericPredictor name="day_of_week" coefficient="3833.1129349071543"/>
|
||||||
|
</RegressionTable>
|
||||||
|
</RegressionModel>
|
||||||
|
</PMML>
|
||||||
@@ -0,0 +1,244 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
|
<PMML xmlns="http://www.dmg.org/PMML-4_4" xmlns:data="http://jpmml.org/jpmml-model/InlineTable" version="4.4">
|
||||||
|
<Header>
|
||||||
|
<Application name="SkLearn2PMML package" version="0.119.1"/>
|
||||||
|
<Timestamp>2025-06-21T20:20:45Z</Timestamp>
|
||||||
|
</Header>
|
||||||
|
<MiningBuildTask>
|
||||||
|
<Extension name="repr">PMMLPipeline(steps=[('scaler', StandardScaler())])</Extension>
|
||||||
|
</MiningBuildTask>
|
||||||
|
<DataDictionary>
|
||||||
|
<DataField name="Rooms" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Type" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Distance" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Bathroom" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Car" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logLandsize" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="logBuildingArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="YearBuilt" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="CouncilArea" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Lattitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Longtitude" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Propertycount" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_S" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_SP" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Method_VB" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Northern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_South_Eastern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Southern_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Victoria" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="Regionname_Western_Metropolitan" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="month" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="year" optype="continuous" dataType="double"/>
|
||||||
|
<DataField name="day_of_week" optype="continuous" dataType="double"/>
|
||||||
|
</DataDictionary>
|
||||||
|
<TransformationDictionary>
|
||||||
|
<DerivedField name="standardScaler(Rooms)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Rooms"/>
|
||||||
|
<Constant dataType="double">2.9317403359973904</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.9533169121486135</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Type)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Type"/>
|
||||||
|
<Constant dataType="double">1.4526178437449029</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.6844243657125287</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Distance)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Distance"/>
|
||||||
|
<Constant dataType="double">10.426749306801499</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">6.066336425774425</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Bathroom)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Bathroom"/>
|
||||||
|
<Constant dataType="double">1.434757788289023</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.6519175028229948</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Car)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Car"/>
|
||||||
|
<Constant dataType="double">1.6821073234382646</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.8558116035647958</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(logLandsize)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="logLandsize"/>
|
||||||
|
<Constant dataType="double">2.3661529658260885</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.84368444941179</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(logBuildingArea)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="logBuildingArea"/>
|
||||||
|
<Constant dataType="double">2.0990197773631265</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.18284993213113399</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(YearBuilt)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="YearBuilt"/>
|
||||||
|
<Constant dataType="double">1968.0455879954332</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">25.406461747131278</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(CouncilArea)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="CouncilArea"/>
|
||||||
|
<Constant dataType="double">5.748246615560268</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">6.170746654990085</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Lattitude)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Lattitude"/>
|
||||||
|
<Constant dataType="double">-37.80912136193117</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.07441963519407027</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Longtitude)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Longtitude"/>
|
||||||
|
<Constant dataType="double">144.99747812591744</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.09633550128190778</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Propertycount)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Propertycount"/>
|
||||||
|
<Constant dataType="double">7520.394470722557</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">4504.100770431253</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Method_S)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Method_S"/>
|
||||||
|
<Constant dataType="double">0.657396835752732</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.4745800628924771</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Method_SP)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Method_SP"/>
|
||||||
|
<Constant dataType="double">0.12909802642309573</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.3353084043037952</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Method_VB)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Method_VB"/>
|
||||||
|
<Constant dataType="double">0.09182841298320013</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.2887835790902713</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Northern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Northern_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.2894307617028217</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.4534981762730101</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_South_Eastern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_South_Eastern_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.03735116620453433</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.18962082319116638</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Southern_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Southern_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.3430109280704616</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.4747151053997568</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Victoria)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Victoria"/>
|
||||||
|
<Constant dataType="double">0.010112542815201435</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.10005138326386172</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(Regionname_Western_Metropolitan)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="Regionname_Western_Metropolitan"/>
|
||||||
|
<Constant dataType="double">0.210650791061817</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.40777081220564054</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(month)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="month"/>
|
||||||
|
<Constant dataType="double">7.152748328168325</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">2.493359348369748</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(year)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="year"/>
|
||||||
|
<Constant dataType="double">2016.5621432066548</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">0.49612319222817086</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
<DerivedField name="standardScaler(day_of_week)" optype="continuous" dataType="double">
|
||||||
|
<Apply function="/">
|
||||||
|
<Apply function="-">
|
||||||
|
<FieldRef field="day_of_week"/>
|
||||||
|
<Constant dataType="double">4.8392595008970805</Constant>
|
||||||
|
</Apply>
|
||||||
|
<Constant dataType="double">1.1094918421491333</Constant>
|
||||||
|
</Apply>
|
||||||
|
</DerivedField>
|
||||||
|
</TransformationDictionary>
|
||||||
|
</PMML>
|
||||||
@@ -0,0 +1,845 @@
|
|||||||
|
iter Logloss
|
||||||
|
0 0.6715355719
|
||||||
|
1 0.6500104902 2 0.628337545333 0.60966944 044 0.59078205 055 0.57752576 0.6 0.55778077 077 0.54203558 8 8 0.52958589 9 9 0.51714610 1110 0.50423311 11 0.4929307812 12 0.4814072133
|
||||||
|
13 0.4713296171
|
||||||
|
14 0.4618167061
|
||||||
|
15 0.452625197
|
||||||
|
16 0.4442922771717 0.4361589191818 0.4279240561919 0.4218459572020 0.4151507422121 0.409436976222 0.4037422555223 0.3976515008224 0.3923734357225 25 0.389420826 026 0.383436327 027 0.378636828 0.3794535398
|
||||||
|
29 0.3757155885
|
||||||
|
30 0.3717786395
|
||||||
|
31 0.3691171784
|
||||||
|
32 0.3657305059
|
||||||
|
33 0.3632016139
|
||||||
|
34 0.3602285367
|
||||||
|
35 0.3563286411
|
||||||
|
36 0.3536211155
|
||||||
|
37 0.3504242069
|
||||||
|
38 0.3484263966
|
||||||
|
39 0.3458929487
|
||||||
|
40 0.3438820826
|
||||||
|
41 0.3420411561
|
||||||
|
42 0.3396861143
|
||||||
|
43 0.3381319584
|
||||||
|
44 0.3363482476
|
||||||
|
45 0.3345493897
|
||||||
|
46 0.3330299771
|
||||||
|
47 0.3318525724
|
||||||
|
48 0.3309013752
|
||||||
|
49 0.3298096059
|
||||||
|
50 0.3284301698
|
||||||
|
51 0.3269025361
|
||||||
|
52 0.3248681668
|
||||||
|
53 0.3235173677
|
||||||
|
54 0.32236862
|
||||||
|
55 0.3215182991
|
||||||
|
56 0.3204347043
|
||||||
|
57 0.318931893
|
||||||
|
58 0.3175421302
|
||||||
|
59 0.3165771979
|
||||||
|
60 0.3156489037
|
||||||
|
61 0.3144519398
|
||||||
|
62 0.3136613844
|
||||||
|
63 0.3128673057
|
||||||
|
64 0.312212034
|
||||||
|
65 0.3114018298
|
||||||
|
66 0.3106629251
|
||||||
|
67 0.310034156
|
||||||
|
68 0.3092989124
|
||||||
|
69 0.3088944431
|
||||||
|
70 0.3081516939
|
||||||
|
71 0.3075363379
|
||||||
|
72 0.3067525669
|
||||||
|
73 0.3056937007
|
||||||
|
74 0.3046441095
|
||||||
|
75 0.3034415851
|
||||||
|
76 076 0.295545077 077 0.29487978 0.78 0.29434479 0.79 0.2939280 0.380 0.293281 0.2981 0.292782 0.2982 0.29283 0.29883 0.29184 0.2976595593
|
||||||
|
85 0.29785 0.2986 0.2967502188
|
||||||
|
87 0.2962570112
|
||||||
|
88 0.2958939803
|
||||||
|
89 0.2955636397
|
||||||
|
90 0.2949822244
|
||||||
|
91 0.29491 0.28792 0.29492 0.28793 0.2933773115
|
||||||
|
94 0.2929786319
|
||||||
|
95 0.2927127209
|
||||||
|
96 0.2923617196
|
||||||
|
97 0.2920127162
|
||||||
|
98 0.2917110356
|
||||||
|
99 0.2913174166
|
||||||
|
100 0.2909765376
|
||||||
|
101 0.2906426256
|
||||||
|
102 0.2902903937
|
||||||
|
103 0.289738585
|
||||||
|
104 0.2893907106
|
||||||
|
105 0.2890596207
|
||||||
|
106 0.288792732
|
||||||
|
107 0.288534817
|
||||||
|
108 0.2882073116
|
||||||
|
109 0.2876705255
|
||||||
|
110 0.2873647727
|
||||||
|
111 0.2871375052
|
||||||
|
112 0.2867474887
|
||||||
|
113 0.2864232213
|
||||||
|
114 0.2860121057
|
||||||
|
115 0.2856438106
|
||||||
|
116 0.2854464634
|
||||||
|
117 0.2851231367
|
||||||
|
118 0.2847282285
|
||||||
|
119 0.2844702651
|
||||||
|
120 0.2842679116
|
||||||
|
121 0.2839106114
|
||||||
|
122 0.2837456336
|
||||||
|
123 0.2834910124
|
||||||
|
124 0.2832364481
|
||||||
|
125 0.2831050547
|
||||||
|
126 0.2828182024
|
||||||
|
127 0.2825989469
|
||||||
|
128 0.2823589042
|
||||||
|
129 0.2820757526
|
||||||
|
130 0.2816758823
|
||||||
|
131 0.2814171024
|
||||||
|
132 0.2809784086
|
||||||
|
133 0.2807750643
|
||||||
|
134 0.2802622838
|
||||||
|
135 0.2801679472
|
||||||
|
136 0.2799283915
|
||||||
|
137 0.2797753843
|
||||||
|
138 0.2795553411
|
||||||
|
139 0.2790582386
|
||||||
|
140 0.2787916767
|
||||||
|
141 0.2784819034
|
||||||
|
142 0.2781899858
|
||||||
|
143 0.2777745463
|
||||||
|
144 0.2774850792
|
||||||
|
145 0.2771480654
|
||||||
|
146 0.2770049212
|
||||||
|
147 0.2768221416
|
||||||
|
148 0.276566122
|
||||||
|
149 0.2764094158
|
||||||
|
150 0.2762456947
|
||||||
|
151 0.2759876734
|
||||||
|
152 0.2755418589
|
||||||
|
153 0.2753300818
|
||||||
|
154 0.2751304602
|
||||||
|
155 0.2749359612
|
||||||
|
156 0.2748264315
|
||||||
|
157 0.2745800918
|
||||||
|
158 0.2742472939
|
||||||
|
159 0.2740881719
|
||||||
|
160 0.2738565523
|
||||||
|
161 0.273609089
|
||||||
|
162 0.2734032283
|
||||||
|
163 0.2732939985
|
||||||
|
164 0.27164 0.271165 0.27165 0.271166 0.27166 0.270167 0.27167 0.270168 0.27168 0.270169 0.27169 0.270170 0.27170 0.269171 0.27171 0.269172 0.27172 0.269173 0.2173 0.269174 0.27174 0.269175 0.2175 0.2690176 0.2176 0.2687177 0.2177 0.2685178 0.2178 0.2684179 0.2179 0.2680180 0180 0.267876181 0181 0.267755182 0182 0.267473183 0183 0.267351184 0184 0.267194185 0185 0.26700186 0186 0.26687187 0.187 0.26670188 0.188 0.2664957386
|
||||||
|
189 0.266362267
|
||||||
|
190 0.2661136479
|
||||||
|
191 0.2658698416
|
||||||
|
192 0.2657868936
|
||||||
|
193 0.265665353
|
||||||
|
194 0.2653983404
|
||||||
|
195 0.2652371509
|
||||||
|
196 0.2651063849
|
||||||
|
197 0.264913291
|
||||||
|
198 0.2647556863
|
||||||
|
199 0.2645733951
|
||||||
|
200 0.264427887
|
||||||
|
201 0.2642523528
|
||||||
|
202 0.2641045862
|
||||||
|
203 0.2639229314
|
||||||
|
204 0.2637726889
|
||||||
|
205 0.2635740419
|
||||||
|
206 0.26334242720207 0.26314082920208 0.263003622209 0.2628850388
|
||||||
|
210 0.2627407842
|
||||||
|
211 0.2626431306
|
||||||
|
212 0.2624728347
|
||||||
|
213 0.2622310925
|
||||||
|
214 0.2620532664
|
||||||
|
215 0.2618205654
|
||||||
|
216 0.2616589509
|
||||||
|
217 0.2614757645
|
||||||
|
218 0.2612767208
|
||||||
|
219 0.26086677522220 0.2607452221 221 0.2606090222222 0.2604421223 223 0.2603288224 224 0.2601877225 225 0.2600486226226 0.25989308227227 0.25975458228228 0.25941261229229 0.25930457230230 0.2591708023231 0.25908766323232 0.2589107169
|
||||||
|
233 0.258706153
|
||||||
|
234 0.2584906816
|
||||||
|
235 0.2583584315
|
||||||
|
236 0.2581589555
|
||||||
|
237 0.257929247
|
||||||
|
238 0.2578443862
|
||||||
|
239 0.2576799959
|
||||||
|
240 0.2574729962
|
||||||
|
241 0.2573334764
|
||||||
|
242 0.2572371053
|
||||||
|
243 0.25706023824244 0.2569646905
|
||||||
|
245 0.2568318486
|
||||||
|
246 0.256676895
|
||||||
|
247 0.2565448555
|
||||||
|
248 0.2563555465
|
||||||
|
249 0.25619328
|
||||||
|
250 0.2560606951
|
||||||
|
251 0.2558568112
|
||||||
|
2252 0.25761936662253 0.257444013
|
||||||
|
254 0.2573545493
|
||||||
|
255 0.2572290353
|
||||||
|
256 0.2570372912
|
||||||
|
257 0.2568998636
|
||||||
|
258 0.2567575768
|
||||||
|
259 0.2565983849
|
||||||
|
260 0.2564866484
|
||||||
|
261 0.2563507181
|
||||||
|
262 0.2562108287
|
||||||
|
263 0.2560651128
|
||||||
|
264 0.2558375368
|
||||||
|
265 0.2557119265
|
||||||
|
266 0.2556488469
|
||||||
|
267 0.2554304808
|
||||||
|
268 0.2553181749
|
||||||
|
269 0.2551502773
|
||||||
|
270 0.2529029506
|
||||||
|
271 0.2527878029
|
||||||
|
272 0.2546905989
|
||||||
|
273 0.2545215518
|
||||||
|
274 0.2543160817
|
||||||
|
275 0.2541791875
|
||||||
|
276 0.2540513566
|
||||||
|
277 0.2539534559
|
||||||
|
278 0.2538241785
|
||||||
|
279 0.2537508829
|
||||||
|
280 0.2536468795
|
||||||
|
281 0.2534796288
|
||||||
|
282 0.2533210302
|
||||||
|
283 0.2531855087
|
||||||
|
284 0.253060364
|
||||||
|
285 0.252938553
|
||||||
|
286 0.2528939278
|
||||||
|
287 0.2528076195
|
||||||
|
288 0.2526059889
|
||||||
|
289 0.252516485
|
||||||
|
290 0.252431445
|
||||||
|
291 0.2523196753
|
||||||
|
292 0.2522181392
|
||||||
|
293 0.2521492932
|
||||||
|
294 0.2520099701
|
||||||
|
295 0.2518281723
|
||||||
|
296 0.2517333023
|
||||||
|
297 0.2516314819
|
||||||
|
298 0.2514894085
|
||||||
|
299 0.2512929534
|
||||||
|
300 0.251161837
|
||||||
|
301 0.2510757996
|
||||||
|
302 0.2509626284
|
||||||
|
303 0.250759337
|
||||||
|
304 0.2506852761
|
||||||
|
305 0.2505584546
|
||||||
|
306 0.2503785971
|
||||||
|
307 0.2502082196
|
||||||
|
308 0.2500811161
|
||||||
|
309 0.2498829037
|
||||||
|
310 0.249807873
|
||||||
|
311 0.2497761951
|
||||||
|
312 0.2496915317
|
||||||
|
313 0.2495364852
|
||||||
|
314 0.2494153896
|
||||||
|
315 0.2493185598
|
||||||
|
316 0.249183293
|
||||||
|
317 0.249015424
|
||||||
|
318 0.2489144142
|
||||||
|
319 0.24878961
|
||||||
|
320 0.2486696127
|
||||||
|
321 0.2485368039
|
||||||
|
322 0.2484308881
|
||||||
|
323 0.248312298
|
||||||
|
324 0.2481997015
|
||||||
|
325 0.2481188867
|
||||||
|
326 0.2479984017
|
||||||
|
327 0.2478591456
|
||||||
|
328 0.2477113693
|
||||||
|
329 0.2475420313
|
||||||
|
330 0.2473880646
|
||||||
|
331 0.2472143685
|
||||||
|
332 0.2470477079
|
||||||
|
333 0.2469472656
|
||||||
|
334 0.2468033089
|
||||||
|
335 0.2466792314
|
||||||
|
336 0.2465228002
|
||||||
|
337 0.246467637
|
||||||
|
338 0.2463454509
|
||||||
|
339 0.2463055341
|
||||||
|
340 0.2461509115
|
||||||
|
341 0.2459972066
|
||||||
|
342 0.2458799621
|
||||||
|
343 0.2457697806
|
||||||
|
344 0.2456379602
|
||||||
|
345 0.2455365372
|
||||||
|
346 0.245390909
|
||||||
|
347 0.2452414004
|
||||||
|
348 0.2450948022
|
||||||
|
349 0.2449969959
|
||||||
|
350 0.2448391866
|
||||||
|
351 0.2446539586
|
||||||
|
352 0.2445683498
|
||||||
|
353 0.244452316
|
||||||
|
354 0.2443607228
|
||||||
|
355 0.2442654109
|
||||||
|
356 0.2441466725
|
||||||
|
357 0.2440027311
|
||||||
|
358 0.2438814211
|
||||||
|
359 0.2437390836
|
||||||
|
360 0.2436186585
|
||||||
|
361 0.2434403101
|
||||||
|
362 0.2432984141
|
||||||
|
363 0.2430163168
|
||||||
|
364 0.2429432348
|
||||||
|
365 0.2428623686
|
||||||
|
366 0.2426621444
|
||||||
|
367 0.2424578679
|
||||||
|
368 0.2423716254
|
||||||
|
369 0.2422000161
|
||||||
|
370 0.2420397528
|
||||||
|
371 0.241938025
|
||||||
|
372 0.2418099345
|
||||||
|
373 0.2417362403
|
||||||
|
374 0.2416968754
|
||||||
|
375 0.2415959776
|
||||||
|
376 0.2415044143
|
||||||
|
377 0.2414036719
|
||||||
|
378 0.2413144588
|
||||||
|
379 0.2411997505
|
||||||
|
380 0.2409918953
|
||||||
|
381 0.2409076377
|
||||||
|
382 0.2407821352
|
||||||
|
383 0.2406444599
|
||||||
|
384 0.2405312344
|
||||||
|
385 0.2404221339
|
||||||
|
386 0.2403162569
|
||||||
|
387 0.2402180684
|
||||||
|
388 0.2401040161
|
||||||
|
389 0.2399174923
|
||||||
|
390 0.2397740489
|
||||||
|
391 0.2396549174
|
||||||
|
392 0.2394659357
|
||||||
|
393 0.2392422044
|
||||||
|
394 0.239124725
|
||||||
|
395 0.2390173787
|
||||||
|
396 0.2388836747
|
||||||
|
397 0.2388193253
|
||||||
|
398 0.2387095384
|
||||||
|
399 0.2385784603
|
||||||
|
400 0.238428024
|
||||||
|
401 0.238286148
|
||||||
|
402 0.2381384209
|
||||||
|
403 0.2380085855
|
||||||
|
404 0.2378074478
|
||||||
|
405 0.2376414464
|
||||||
|
406 0.2375301155
|
||||||
|
407 0.2373500664
|
||||||
|
408 0.2371299706
|
||||||
|
409 0.2370354963
|
||||||
|
410 0.2368820977
|
||||||
|
411 0.2367257734
|
||||||
|
412 0.2366225093
|
||||||
|
413 0.2364888794
|
||||||
|
414 0.236357993
|
||||||
|
415 0.2361769763
|
||||||
|
416 0.2360451019
|
||||||
|
417 0.2359401969
|
||||||
|
418 0.2358386521
|
||||||
|
419 0.2357085942
|
||||||
|
420 0.2355723146
|
||||||
|
421 0.2353819868
|
||||||
|
422 0.235208862
|
||||||
|
423 0.2351666693
|
||||||
|
424 0.2349425824
|
||||||
|
425 0.2348564318
|
||||||
|
426 0.2347793051
|
||||||
|
427 0.234635617
|
||||||
|
428 0.2345190851
|
||||||
|
429 0.234346511
|
||||||
|
430 0.2342451178
|
||||||
|
431 0.2341454553
|
||||||
|
432 0.2341067534
|
||||||
|
433 0.2339745587
|
||||||
|
434 0.2339165625
|
||||||
|
435 0.2338332876
|
||||||
|
436 0.233759364
|
||||||
|
437 0.2336547665
|
||||||
|
438 0.233574331
|
||||||
|
439 0.233463469
|
||||||
|
440 0.2334118993
|
||||||
|
441 0.2332008858
|
||||||
|
442 0.2330763787
|
||||||
|
443 0.2328962545
|
||||||
|
444 0.2327718352
|
||||||
|
445 0.2325767542
|
||||||
|
446 0.2325135609
|
||||||
|
447 0.2324561774
|
||||||
|
448 0.2322494832
|
||||||
|
449 0.2321726483
|
||||||
|
450 0.2320481129
|
||||||
|
451 0.2319412309
|
||||||
|
452 0.2318444609
|
||||||
|
453 0.2317409901
|
||||||
|
454 0.231635057
|
||||||
|
455 0.2314943555
|
||||||
|
456 0.2313381946
|
||||||
|
457 0.2312849151
|
||||||
|
458 0.2312003718
|
||||||
|
459 0.2311333753
|
||||||
|
460 0.2310068691
|
||||||
|
461 0.2309185959
|
||||||
|
462 0.2308165199
|
||||||
|
463 0.2307248742
|
||||||
|
464 0.2306381584
|
||||||
|
465 0.2305601601
|
||||||
|
466 0.2304672421
|
||||||
|
467 0.2302764413
|
||||||
|
468 0.2301451112
|
||||||
|
469 0.230023544
|
||||||
|
470 0.2298875391
|
||||||
|
471 0.2297757454
|
||||||
|
472 0.2296864367
|
||||||
|
473 0.2296073575
|
||||||
|
474 0.229518713
|
||||||
|
475 0.2294627614
|
||||||
|
476 0.2292573337
|
||||||
|
477 0.2291335591
|
||||||
|
478 0.2290855056
|
||||||
|
479 0.2289984126
|
||||||
|
480 0.2289477607
|
||||||
|
481 0.2287188845
|
||||||
|
482 0.2285575159
|
||||||
|
483 0.2284497673
|
||||||
|
484 0.2283893552
|
||||||
|
485 0.2282141027
|
||||||
|
486 0.2279766928
|
||||||
|
487 0.2279502749
|
||||||
|
488 0.2278614808
|
||||||
|
489 0.2277568426
|
||||||
|
490 0.2276580223
|
||||||
|
491 0.2275783133
|
||||||
|
492 0.2275069093
|
||||||
|
493 0.2274044203
|
||||||
|
494 0.2272090293
|
||||||
|
495 0.2271293126
|
||||||
|
496 0.227022249
|
||||||
|
497 0.2268998836
|
||||||
|
498 0.2267174312
|
||||||
|
499 0.2265308066
|
||||||
|
500 0.2263558855
|
||||||
|
501 0.2262839397
|
||||||
|
502 0.2261074526
|
||||||
|
503 0.2260589388
|
||||||
|
504 0.2259620037
|
||||||
|
505 0.2258239246
|
||||||
|
506 0.2257021737
|
||||||
|
507 0.2256233142
|
||||||
|
508 0.2254568235
|
||||||
|
509 0.2253782036
|
||||||
|
510 0.2252923731
|
||||||
|
511 0.2252153148
|
||||||
|
512 0.2251011445
|
||||||
|
513 0.2249799184
|
||||||
|
514 0.2249385102
|
||||||
|
515 0.2247559255
|
||||||
|
516 0.2246312837
|
||||||
|
517 0.2244927134
|
||||||
|
518 0.2242212439
|
||||||
|
519 0.2241349844
|
||||||
|
520 0.2240605028
|
||||||
|
521 0.223984483
|
||||||
|
522 0.2237981956
|
||||||
|
523 0.2237256507
|
||||||
|
5524 0.22385886595525 0.22376262635526 0.2235791158527 0.2231165879
|
||||||
|
5528 0.22335977375529 0.2232904164
|
||||||
|
530 0.22320548365531 0.22303399353532 0.22287968753533 0.22277903553534 0.22266325553535 0.222594593536 0.2222462479
|
||||||
|
537 0.2221446555
|
||||||
|
538 0.2220074116
|
||||||
|
539 0.2218753682
|
||||||
|
540 0.2217279725
|
||||||
|
541 0.2215278674
|
||||||
|
542 0.2214397229
|
||||||
|
543 0.2213313216
|
||||||
|
544 0.2212424892
|
||||||
|
545 0.2211267104
|
||||||
|
546 0.221058413
|
||||||
|
547 0.2209798705
|
||||||
|
548 0.2208630304
|
||||||
|
549 0.2206737075
|
||||||
|
550 0.2205194543
|
||||||
|
551 0.2204547144
|
||||||
|
552 0.2202746715
|
||||||
|
553 0.220190974
|
||||||
|
554 0.2201306606
|
||||||
|
555 0.2200181894
|
||||||
|
556 0.2199530085
|
||||||
|
557 0.2198615437
|
||||||
|
558 0.2197844022
|
||||||
|
559 0.2196566038
|
||||||
|
560 0.2194860412
|
||||||
|
561 0.2193479078
|
||||||
|
562 0.2192304752
|
||||||
|
563 0.2191926354
|
||||||
|
564 0.2191247914
|
||||||
|
565 0.219021307
|
||||||
|
566 0.2189163296
|
||||||
|
567 0.2188279593
|
||||||
|
568 0.2187010131
|
||||||
|
569 0.2186055581
|
||||||
|
570 0.2185275634
|
||||||
|
571 0.2184622755
|
||||||
|
572 0.2183830614
|
||||||
|
573 0.2182650336
|
||||||
|
574 0.2181024144
|
||||||
|
575 0.2180116354
|
||||||
|
576 0.2179579982
|
||||||
|
577 0.2178746878
|
||||||
|
578 0.2177632613
|
||||||
|
579 0.2176899773
|
||||||
|
580 0.2175603564
|
||||||
|
581 0.2174915483
|
||||||
|
582 0.2174379661
|
||||||
|
583 0.2173251156
|
||||||
|
584 0.2171693914
|
||||||
|
585 0.2170266494
|
||||||
|
586 0.216864334
|
||||||
|
587 0.2168034872
|
||||||
|
588 0.2167335989
|
||||||
|
589 0.2166304359
|
||||||
|
590 0.2164724669
|
||||||
|
591 0.2163198821
|
||||||
|
592 0.2162064726
|
||||||
|
593 0.2161018554
|
||||||
|
594 0.2160103315
|
||||||
|
595 0.2158800181
|
||||||
|
596 0.2157548594
|
||||||
|
597 0.215698425
|
||||||
|
598 0.2155549787
|
||||||
|
599 0.2154764111
|
||||||
|
600 0.2153801721
|
||||||
|
601 0.2152445929
|
||||||
|
602 0.2151411293
|
||||||
|
603 0.2149957359
|
||||||
|
604 0.2148907006
|
||||||
|
605 0.21481046
|
||||||
|
606 0.2147547089
|
||||||
|
607 0.2145890612
|
||||||
|
608 0.2144855403
|
||||||
|
609 0.2143502306
|
||||||
|
610 0.2142863952
|
||||||
|
611 0.2140713228
|
||||||
|
612 0.2139516988
|
||||||
|
613 0.213833705
|
||||||
|
614 0.2137724275
|
||||||
|
615 0615 0.21472616 0.616 0.21461617 0617 0.214560618 0618 0.214500619 0619 0.214408620 0620 0.214339621 0621 0.214243622 0622 0.214137623 0623 0.214008624 0624 0.213951625 0625 0.213780626 0626 0.2137644769
|
||||||
|
627 0.2135857868
|
||||||
|
628 0.2135479067
|
||||||
|
629 0.2134538772
|
||||||
|
630 0.2133340221
|
||||||
|
631 0.2132292656
|
||||||
|
632 0.213112633 0633 0.212972634 0634 0.2128635 0.2635 0.2127636 0.2118510496
|
||||||
|
637 0.2116834225
|
||||||
|
638 0.638 0.2125639 0.2114202615
|
||||||
|
640 0.2113445402
|
||||||
|
641 0.2112853157
|
||||||
|
642 0.2112158115
|
||||||
|
643 0.2111316421
|
||||||
|
644 0.2109834817
|
||||||
|
645 0.2108969759
|
||||||
|
646 0.2108803226
|
||||||
|
647 0.2107759254
|
||||||
|
648 0.2106780292
|
||||||
|
649 0.2105048205
|
||||||
|
650 0.2104594373
|
||||||
|
651 0.210396087
|
||||||
|
652 0.2103460393
|
||||||
|
653 0.2102946071
|
||||||
|
654 0.2101566534
|
||||||
|
655 0.2100883725
|
||||||
|
656 0.2100653199
|
||||||
|
657 0.2099599454
|
||||||
|
658 0.2098735874
|
||||||
|
659 0.2097640203
|
||||||
|
660 0.2096592145
|
||||||
|
661 0.2096139103
|
||||||
|
662 0.2095420758
|
||||||
|
663 0.2094600533
|
||||||
|
664 0.2093671283
|
||||||
|
665 0.2092667665
|
||||||
|
666 0.2091092788
|
||||||
|
667 0.2090712195
|
||||||
|
668 0.2089494467
|
||||||
|
669 0.2088626897
|
||||||
|
670 0.2088150318
|
||||||
|
671 0.2087060848
|
||||||
|
672 0.2086060252
|
||||||
|
673 0.2085728425
|
||||||
|
674 0.2085014618
|
||||||
|
675 0.2084382408
|
||||||
|
676 0.2083550429
|
||||||
|
677 0.2082908508
|
||||||
|
678 0.2081572112
|
||||||
|
679 0.2080626141
|
||||||
|
680 0.2079779102
|
||||||
|
681 0.2078554069
|
||||||
|
682 0.2077728527
|
||||||
|
683 0.2076214333
|
||||||
|
684 0.2075344272
|
||||||
|
685 0.2074853035
|
||||||
|
686 0.20736748
|
||||||
|
687 0.2072321229
|
||||||
|
688 0.2070764962
|
||||||
|
689 0.206959924
|
||||||
|
690 0.2069038453
|
||||||
|
691 0.2068433554
|
||||||
|
692 0.2067499536
|
||||||
|
693 0.2066997999
|
||||||
|
694 0.2065947069
|
||||||
|
695 0.206445379
|
||||||
|
696 0.2063923529
|
||||||
|
697 0.2062890568
|
||||||
|
698 0.2062267393
|
||||||
|
699 0.2061734689
|
||||||
|
700 0.2060068816
|
||||||
|
701 0.2058658631
|
||||||
|
702 0.2057625962
|
||||||
|
703 0.2055892085
|
||||||
|
704 0704 0.20642705 0.2053025211
|
||||||
|
706 0.2051688713
|
||||||
|
707 0.707 0.20618708 0.2050085237
|
||||||
|
709 0.2049088367
|
||||||
|
710 0.2048239642
|
||||||
|
711 0.2047316542
|
||||||
|
712 0.2046032672
|
||||||
|
713 0.2044329749
|
||||||
|
714 0714 0.20548715 0.715 0.20541716 0.716 0.20536717 0.717 0.20524718 0.718 0.20519719 0.719 0.20513720 0.720 0.20510721 0.721 0.20501722 0.722 0.20498723 0.723 0.20493724 0.724 0.20486725 0.725 0.20479726 0.726 0.2047330242
|
||||||
|
727 0.204639792
|
||||||
|
728 0.2045057031
|
||||||
|
729 0.20436730 0.730 0.20429731 0.731 0.20424732 0.732 0.20415733 0.2026522041
|
||||||
|
734 0.734 0.20395735 0.735 0.20387736 0.736 0.20382737 0.737 0.20376738 0.2021816826
|
||||||
|
739 0.2020455078
|
||||||
|
740 0.2018938656
|
||||||
|
741 0.2017567672
|
||||||
|
742 0.2016824228
|
||||||
|
743 0.2016070108
|
||||||
|
744 0.2014842704
|
||||||
|
745 0.2014104849
|
||||||
|
746 0.2013393837
|
||||||
|
747 0.2012833162
|
||||||
|
748 0.2012559259
|
||||||
|
749 0.2011516509
|
||||||
|
750 0.2010261293
|
||||||
|
751 0.2008588018
|
||||||
|
752 0.2007177314
|
||||||
|
753 0.2005909782
|
||||||
|
754 0.2004566848
|
||||||
|
755 0.2003678939
|
||||||
|
756 0.200265596
|
||||||
|
757 0.2002121035
|
||||||
|
758 0.2001129327
|
||||||
|
759 0.2000131959
|
||||||
|
760 0.1999159409
|
||||||
|
761 0.1997892077
|
||||||
|
762 0.1997150572
|
||||||
|
763 0.1995562023
|
||||||
|
764 0.1994189202
|
||||||
|
765 0.1993814234
|
||||||
|
766 0.1993107055
|
||||||
|
767 0.19923773
|
||||||
|
768 0.1991631234
|
||||||
|
769 0.1990231522
|
||||||
|
770 0.1989572232
|
||||||
|
771 0.1989065496
|
||||||
|
772 0.198810354
|
||||||
|
773 0.1987187126
|
||||||
|
774 0.198602681
|
||||||
|
775 0.198544289
|
||||||
|
776 776 0.1974275777777 0.19737911778778 0.19731560779779 0.19729760780780 0.19726183781781 0.19718989782782 0.19714483783783 0.1971086784 784 0.1970310785 785 0.1969040102
|
||||||
|
786 0.1968767787 787 0.1968223788788 0.19671808789 0.1971688679
|
||||||
|
790 0.1971133505
|
||||||
|
791 0.1970573064
|
||||||
|
792 0.1969309651
|
||||||
|
793 0.196822851
|
||||||
|
794 0.1967037121
|
||||||
|
795 0.1965664955
|
||||||
|
796 0.1964988227
|
||||||
|
797 0.1964288204
|
||||||
|
798 0.1962998362
|
||||||
|
799 0.1962072888
|
||||||
|
800 0.1960950051
|
||||||
|
801 0.196044112
|
||||||
|
802 0.1959964318
|
||||||
|
803 0.1959442302
|
||||||
|
804 0.1959037122
|
||||||
|
805 0.1957869796
|
||||||
|
806 0.1956498038
|
||||||
|
807 0.1955275716
|
||||||
|
808 0.1954511929
|
||||||
|
809 0.1953156204
|
||||||
|
810 0.1952535142
|
||||||
|
811 0.1951393533
|
||||||
|
812 0.1950848436
|
||||||
|
813 0.1949760076
|
||||||
|
814 0.1948895198
|
||||||
|
815 0.1948040409
|
||||||
|
816 0.1946758699
|
||||||
|
817 0.1945703718
|
||||||
|
818 0.1945049746
|
||||||
|
819 0.1944564152
|
||||||
|
820 0.1943254884
|
||||||
|
821 0.1942024297
|
||||||
|
822 0.1941361423
|
||||||
|
823 0.1940355461
|
||||||
|
824 0.193928491
|
||||||
|
825 0.1938722662
|
||||||
|
826 0.1938241723
|
||||||
|
827 0.1937563974
|
||||||
|
828 0.1936496047
|
||||||
|
829 0.1935365196
|
||||||
|
830 0.193436826
|
||||||
|
831 0.1934245063
|
||||||
|
832 0.1933003321
|
||||||
|
833 0.1931803445
|
||||||
|
834 0.1931194794
|
||||||
|
835 0.1930578233
|
||||||
|
836 0.1929893039
|
||||||
|
837 0.1928975868
|
||||||
|
838 0.192815136
|
||||||
|
839 0.1926973762
|
||||||
|
840 0.192642313
|
||||||
|
841 0.1925744074
|
||||||
|
842 0.1924976177
|
||||||
|
843 0.1924535229
|
||||||
|
844 0.1923759868
|
||||||
|
845 0.1922892698
|
||||||
|
846 0.1922402248
|
||||||
|
847 0.1921752729
|
||||||
|
848 0.1920466624
|
||||||
|
849 0.1919349155
|
||||||
|
850 0.1918797293
|
||||||
|
851 0.1918321291
|
||||||
|
852 0.1917885763
|
||||||
|
853 0.1917436879
|
||||||
|
854 0.1916714435
|
||||||
|
855 0.1915585621
|
||||||
|
856 0.1914585379
|
||||||
|
857 0.191366928
|
||||||
|
858 0.1912387077
|
||||||
|
859 0.1911316581
|
||||||
|
860 0.1910178787
|
||||||
|
861 0.1909128097
|
||||||
|
862 0.1908743757
|
||||||
|
863 0.1907896694
|
||||||
|
864 0.1906881947
|
||||||
|
865 0.1905467185
|
||||||
|
866 0.1905101728
|
||||||
|
867 0.1904734468
|
||||||
|
868 0.1903627676
|
||||||
|
869 0.1902835324
|
||||||
|
870 0.1901353705
|
||||||
|
871 0.1900130826
|
||||||
|
872 0.1898964985
|
||||||
|
873 0.189843312
|
||||||
|
874 0.1898091057
|
||||||
|
875 0.1897611113
|
||||||
|
876 0.1896789766
|
||||||
|
877 0.1895745098
|
||||||
|
878 0.1894637744
|
||||||
|
879 0.1894036691
|
||||||
|
880 0.1892932683
|
||||||
|
881 0.189258266
|
||||||
|
882 0.1891981233
|
||||||
|
883 0.1891215445
|
||||||
|
884 0.1890143054
|
||||||
|
885 0.1889312723
|
||||||
|
886 0886 0.192085887 0887 0.191935888 0888 0.191898889 0889 0.191846890 0890 0.191790891 0891 0.191729892 0892 0.1916760736
|
||||||
|
893 0.1915335233
|
||||||
|
894 0.1914796028
|
||||||
|
895 0.1913763062
|
||||||
|
896 0.1913395079
|
||||||
|
897 0.1912678699
|
||||||
|
898 0.191243899 0899 0.191162900 0.1876269642
|
||||||
|
901 0.1875001977
|
||||||
|
902 0.187403209
|
||||||
|
903 0.1873043882
|
||||||
|
904 0.1872195534
|
||||||
|
905 0.1871491767
|
||||||
|
906 0.1870104981
|
||||||
|
907 0.1869420064
|
||||||
|
908 0.1868914869
|
||||||
|
909 0.186787065
|
||||||
|
910 0.1866702356
|
||||||
|
911 0.1866046699
|
||||||
|
912 0.1864560457
|
||||||
|
913 0.1863240246
|
||||||
|
914 0.1862062241
|
||||||
|
915 0.1861338881
|
||||||
|
916 0.186025657
|
||||||
|
917 0.1859396015
|
||||||
|
918 0.1858178881
|
||||||
|
919 0.185706966
|
||||||
|
920 0.1856200051
|
||||||
|
921 0.1854981475
|
||||||
|
922 0.1854257424
|
||||||
|
923 0.1853204869
|
||||||
|
924 0.1852156164
|
||||||
|
925 0.1851027012
|
||||||
|
926 0.1849973028
|
||||||
|
927 0.1848849182
|
||||||
|
928 0.1848190864
|
||||||
|
929 0.1846982134
|
||||||
|
930 0.1845826874
|
||||||
|
931 0.18446116
|
||||||
|
932 0.1843612267
|
||||||
|
933 0.1842788248
|
||||||
|
934 0.1841913191
|
||||||
|
935 0.1841571329
|
||||||
|
936 0.1840521094
|
||||||
|
937 0.183983229
|
||||||
|
938 0.1839018212
|
||||||
|
939 0.1838136477
|
||||||
|
940 0.1837559317
|
||||||
|
941 0.1836433761
|
||||||
|
942 0.1835371968
|
||||||
|
943 0.183429206
|
||||||
|
944 0.1833599311
|
||||||
|
945 0.1832798986
|
||||||
|
946 0.1831687847
|
||||||
|
947 0.1830272249
|
||||||
|
948 0.1829354743
|
||||||
|
949 0.1828585222
|
||||||
|
950 0.1828066679
|
||||||
|
951 0.1826992636
|
||||||
|
952 0.1826619975
|
||||||
|
953 0.1826404807
|
||||||
|
954 0.1826049683
|
||||||
|
955 0.182542509
|
||||||
|
956 0.1824707124
|
||||||
|
957 0.1823498301
|
||||||
|
958 0.1822917321
|
||||||
|
959 0.1822506991
|
||||||
|
960 0.18222991
|
||||||
|
961 0.1821302287
|
||||||
|
962 0.1820405902
|
||||||
|
963 0.1819642189
|
||||||
|
964 0.1818719662
|
||||||
|
965 0.1818081334
|
||||||
|
966 0.1817224884
|
||||||
|
967 0.1816794438
|
||||||
|
968 0.18157978
|
||||||
|
969 0.1814637115
|
||||||
|
970 0.1813123668
|
||||||
|
971 0.1811983001
|
||||||
|
972 0.1810990775
|
||||||
|
973 0.1810350562
|
||||||
|
974 0.1809943476
|
||||||
|
975 0.1808972694
|
||||||
|
976 0.1808157769
|
||||||
|
977 0.1807341121
|
||||||
|
978 0.18064582978979 0.18057748979980 0.18051626980 0.18567441698981 0.18559991998982 0.185556502
|
||||||
|
983 0.185514808
|
||||||
|
984 0.1854468917
|
||||||
|
985 0.1853146605
|
||||||
|
986 0.1852626547
|
||||||
|
987 0.185230434
|
||||||
|
988 0.1852016396
|
||||||
|
989 0990 0.179711990 0991 0.17963991 0.992 0.17957992 0.993 0.17951993 0.994 0.17942994 0.995 0.1793665083
|
||||||
|
996 0.17928996 0.997 0.17918997 0.998 0.17911998 0.999 0.17902999 0.1844407665
|
||||||
|
601128
|
||||||
|
@@ -0,0 +1,879 @@
|
|||||||
|
iter Passed Remaining
|
||||||
|
0 59 59828
|
||||||
|
1 61 30821
|
||||||
|
2 63 21170
|
||||||
|
3 65 16340
|
||||||
|
4 67 13429
|
||||||
|
5 69 11507
|
||||||
|
6 71 1021377 73 915888 75 833299 77 7671110 79 7156111 82 6779112 84 6426113 86 6106114 88 5843115 90 5593116 92 5358117 94 5168118 97 5022119 99 4864220 101 4740221 103 4609222 105 4487223 107 4369224 109 4274225 112 4209226 114 4118227 116 402728 118 3960
|
||||||
|
29 120 3889
|
||||||
|
30 123 3846
|
||||||
|
31 124 3767
|
||||||
|
32 126 3709
|
||||||
|
33 129 3666
|
||||||
|
34 131 3627
|
||||||
|
35 133 3585
|
||||||
|
36 135 3539
|
||||||
|
37 138 3506
|
||||||
|
38 141 3474
|
||||||
|
39 142 3429
|
||||||
|
40 144 3388
|
||||||
|
41 146 3349
|
||||||
|
42 149 3321
|
||||||
|
43 151 3290
|
||||||
|
44 153 3259
|
||||||
|
45 155 3223
|
||||||
|
46 157 3197
|
||||||
|
47 159 3165
|
||||||
|
48 161 3139
|
||||||
|
49 164 3121
|
||||||
|
50 166 3089
|
||||||
|
51 168 3075
|
||||||
|
52 170 3051
|
||||||
|
53 173 3032
|
||||||
|
54 174 3006
|
||||||
|
55 176 2981
|
||||||
|
56 179 2961
|
||||||
|
57 181 2945
|
||||||
|
58 183 2929
|
||||||
|
59 185 2906
|
||||||
|
60 187 2884
|
||||||
|
61 189 2861
|
||||||
|
62 190 2837
|
||||||
|
63 192 2821
|
||||||
|
64 194 2803
|
||||||
|
65 196 2785
|
||||||
|
66 198 2767
|
||||||
|
67 200 2747
|
||||||
|
68 202 2736
|
||||||
|
69 204 2721
|
||||||
|
70 206 2703
|
||||||
|
71 208 2686
|
||||||
|
72 210 2672
|
||||||
|
73 212 2659
|
||||||
|
74 214 2647
|
||||||
|
75 216 2635
|
||||||
|
776 219 2630777 221 2615778 223 2607779 225 2598880 227 2582881 229 2569882 231 2559883 233 254984 235 2537
|
||||||
|
885 237 252786 240 2522
|
||||||
|
87 242 2510
|
||||||
|
88 244 2499
|
||||||
|
89 246 2488
|
||||||
|
90 248 2477
|
||||||
|
991 250 2467992 251 245793 253 2447
|
||||||
|
94 256 2441
|
||||||
|
95 258 2435
|
||||||
|
96 260 2426
|
||||||
|
97 263 2422
|
||||||
|
98 265 2420
|
||||||
|
99 268 2412
|
||||||
|
100 269 2402
|
||||||
|
101 272 2397
|
||||||
|
102 274 2387
|
||||||
|
103 275 2377
|
||||||
|
104 277 2366
|
||||||
|
105 279 2358
|
||||||
|
106 281 2351
|
||||||
|
107 283 2340
|
||||||
|
108 286 2339
|
||||||
|
109 288 2336
|
||||||
|
110 290 2324
|
||||||
|
111 292 2316
|
||||||
|
112 294 2308
|
||||||
|
113 296 2302
|
||||||
|
114 298 2294
|
||||||
|
115 300 2287
|
||||||
|
116 302 2279
|
||||||
|
117 304 2275
|
||||||
|
118 306 2267
|
||||||
|
119 308 2259
|
||||||
|
120 309 2251
|
||||||
|
121 312 2248
|
||||||
|
122 314 2242
|
||||||
|
123 316 2238
|
||||||
|
124 318 2229
|
||||||
|
125 320 2223
|
||||||
|
126 322 2215
|
||||||
|
127 324 2208
|
||||||
|
128 326 2205
|
||||||
|
129 328 2199
|
||||||
|
130 330 2194
|
||||||
|
131 332 2187
|
||||||
|
132 334 2182
|
||||||
|
133 336 2177
|
||||||
|
134 338 2171
|
||||||
|
135 340 2164
|
||||||
|
136 342 2159
|
||||||
|
137 346 2162
|
||||||
|
138 348 2156
|
||||||
|
139 350 2152
|
||||||
|
140 352 2147
|
||||||
|
141 354 2141
|
||||||
|
142 356 2135
|
||||||
|
143 358 2130
|
||||||
|
144 360 2124
|
||||||
|
145 362 2118
|
||||||
|
146 364 2112
|
||||||
|
147 366 2106
|
||||||
|
148 367 2101
|
||||||
|
149 369 2095
|
||||||
|
150 372 2092
|
||||||
|
151 374 2090
|
||||||
|
152 377 2088
|
||||||
|
153 379 2082
|
||||||
|
154 380 2076
|
||||||
|
155 383 2072
|
||||||
|
156 384 2066
|
||||||
|
157 386 2060
|
||||||
|
158 388 2054
|
||||||
|
159 390 2051
|
||||||
|
160 392 2046
|
||||||
|
161 394 2042
|
||||||
|
162 396 2036
|
||||||
|
163 398 2031
|
||||||
|
164 400 2025
|
||||||
|
165 402 2021
|
||||||
|
166 404 2016
|
||||||
|
167 406 2012
|
||||||
|
168 408 2007
|
||||||
|
169 410 2002
|
||||||
|
170 412 1999
|
||||||
|
171 414 1997
|
||||||
|
172 416 1992
|
||||||
|
173 418 1987
|
||||||
|
174 421 1985
|
||||||
|
175 423 1981
|
||||||
|
176 424 1975
|
||||||
|
177 426 1971
|
||||||
|
178 429 1968
|
||||||
|
179 431 1965
|
||||||
|
180 433 1960
|
||||||
|
181 435 1955
|
||||||
|
182 437 1954
|
||||||
|
183 440 1951
|
||||||
|
184 441 1946
|
||||||
|
185 443 1942
|
||||||
|
186 445 1937
|
||||||
|
187 448 1936
|
||||||
|
188 450 1933
|
||||||
|
189 452 1929
|
||||||
|
190 454 1926
|
||||||
|
191 456 1922
|
||||||
|
192 458 1918
|
||||||
|
193 461 1916
|
||||||
|
194 463 1911
|
||||||
|
195 465 1910
|
||||||
|
196 467 1907
|
||||||
|
197 470 1905
|
||||||
|
198 472 1901
|
||||||
|
199 474 1898
|
||||||
|
200 476 1894
|
||||||
|
201 478 1890
|
||||||
|
202 480 1885
|
||||||
|
203 481 1880
|
||||||
|
204 483 1876
|
||||||
|
205 485 1872
|
||||||
|
206 487 1867
|
||||||
|
207 489 1863
|
||||||
|
208 491 1860
|
||||||
|
209 494 1858
|
||||||
|
210 496 1855
|
||||||
|
211 498 1851
|
||||||
|
212 500 1849
|
||||||
|
213 502 1845
|
||||||
|
214 504 1842
|
||||||
|
215 507 1840
|
||||||
|
216 509 1837
|
||||||
|
217 511 1833
|
||||||
|
218 513 1829
|
||||||
|
219 515 1825
|
||||||
|
220 516 1821
|
||||||
|
221 518 1817
|
||||||
|
222 520 1814
|
||||||
|
223 522 1810
|
||||||
|
224 524 1807
|
||||||
|
225 526 1803
|
||||||
|
226 528 1799
|
||||||
|
227 530 1795
|
||||||
|
228 532 1792
|
||||||
|
229 534 1788
|
||||||
|
230 536 1784
|
||||||
|
231 538 1781
|
||||||
|
232 540 1779
|
||||||
|
233 542 1775
|
||||||
|
234 545 1774
|
||||||
|
235 547 1772
|
||||||
|
236 549 1768
|
||||||
|
237 551 1764
|
||||||
|
238 553 1762
|
||||||
|
239 555 1759
|
||||||
|
240 557 1756
|
||||||
|
241 559 1752
|
||||||
|
242 561 1748
|
||||||
|
243 563 1745
|
||||||
|
244 565 1743
|
||||||
|
245 567 1740
|
||||||
|
246 569 1736
|
||||||
|
247 571 1733
|
||||||
|
248 574 1731
|
||||||
|
249 576 1728
|
||||||
|
250 578 1725
|
||||||
|
251 580 1722
|
||||||
|
252 583 1721
|
||||||
|
253 586 1723
|
||||||
|
254 590 1725
|
||||||
|
255 593 1725
|
||||||
|
256 596 1725
|
||||||
|
257 598 1722
|
||||||
|
258 602 1722
|
||||||
|
259 604 1719
|
||||||
|
260 606 1716
|
||||||
|
261 607 1712
|
||||||
|
262 610 1711
|
||||||
|
263 613 1711
|
||||||
|
264 616 1710
|
||||||
|
265 618 1708
|
||||||
|
266 621 1707
|
||||||
|
267 625 1707
|
||||||
|
268 628 1706
|
||||||
|
269 630 1704
|
||||||
|
270 632 1701
|
||||||
|
271 635 1700
|
||||||
|
272 638 1699
|
||||||
|
273 641 1699
|
||||||
|
274 644 1699
|
||||||
|
275 646 1696
|
||||||
|
276 648 1693
|
||||||
|
277 651 1692
|
||||||
|
278 654 1691
|
||||||
|
279 656 1689
|
||||||
|
280 660 1688
|
||||||
|
281 663 1688
|
||||||
|
282 666 1687
|
||||||
|
283 669 1687
|
||||||
|
284 671 1685
|
||||||
|
285 673 1681
|
||||||
|
286 676 1680
|
||||||
|
287 679 1680
|
||||||
|
288 682 1679
|
||||||
|
289 684 1676
|
||||||
|
290 687 1675
|
||||||
|
291 689 1672
|
||||||
|
292 692 1671
|
||||||
|
293 695 1670
|
||||||
|
294 699 1670
|
||||||
|
295 702 1670
|
||||||
|
296 705 1669
|
||||||
|
297 707 1665
|
||||||
|
298 709 1662
|
||||||
|
299 711 1659
|
||||||
|
300 713 1658
|
||||||
|
301 716 1654
|
||||||
|
302 718 1653
|
||||||
|
303 720 1650
|
||||||
|
304 723 1649
|
||||||
|
305 727 1648
|
||||||
|
306 730 1648
|
||||||
|
307 733 1647
|
||||||
|
308 736 1646
|
||||||
|
309 739 1645
|
||||||
|
310 741 1642
|
||||||
|
311 744 1642
|
||||||
|
312 748 1641
|
||||||
|
313 751 1641
|
||||||
|
314 753 1637
|
||||||
|
315 755 1635
|
||||||
|
316 758 1634
|
||||||
|
317 761 1632
|
||||||
|
318 764 1631
|
||||||
|
319 767 1629
|
||||||
|
320 770 1629
|
||||||
|
321 773 1628
|
||||||
|
322 776 1627
|
||||||
|
323 779 1626
|
||||||
|
324 782 1625
|
||||||
|
325 785 1624
|
||||||
|
326 787 1621
|
||||||
|
327 789 1618
|
||||||
|
328 792 1617
|
||||||
|
329 796 1616
|
||||||
|
330 799 1615
|
||||||
|
331 802 1613
|
||||||
|
332 805 1613
|
||||||
|
333 808 1612
|
||||||
|
334 810 1608
|
||||||
|
335 812 1604
|
||||||
|
336 815 1603
|
||||||
|
337 817 1601
|
||||||
|
338 819 1598
|
||||||
|
339 821 1594
|
||||||
|
340 823 1590
|
||||||
|
341 826 1589
|
||||||
|
342 829 1588
|
||||||
|
343 831 1585
|
||||||
|
344 833 1581
|
||||||
|
345 835 1578
|
||||||
|
346 837 1575
|
||||||
|
347 838 1571
|
||||||
|
348 840 1568
|
||||||
|
349 842 1565
|
||||||
|
350 845 1563
|
||||||
|
351 849 1563
|
||||||
|
352 852 1561
|
||||||
|
353 854 1558
|
||||||
|
354 856 1556
|
||||||
|
355 858 1553
|
||||||
|
356 860 1550
|
||||||
|
357 863 1548
|
||||||
|
358 866 1547
|
||||||
|
359 869 1545
|
||||||
|
360 872 1544
|
||||||
|
361 875 1543
|
||||||
|
362 879 1542
|
||||||
|
363 881 1539
|
||||||
|
364 884 1538
|
||||||
|
365 886 1535
|
||||||
|
366 889 1533
|
||||||
|
367 892 1532
|
||||||
|
368 895 1530
|
||||||
|
369 897 1527
|
||||||
|
370 899 1524
|
||||||
|
371 900 1520
|
||||||
|
372 902 1517
|
||||||
|
373 905 1515
|
||||||
|
374 907 1512
|
||||||
|
375 909 1509
|
||||||
|
376 911 1506
|
||||||
|
377 913 1502
|
||||||
|
378 914 1499
|
||||||
|
379 916 1495
|
||||||
|
380 919 1493
|
||||||
|
381 922 1492
|
||||||
|
382 925 1491
|
||||||
|
383 928 1490
|
||||||
|
384 931 1488
|
||||||
|
385 934 1486
|
||||||
|
386 937 1485
|
||||||
|
387 940 1483
|
||||||
|
388 943 1482
|
||||||
|
389 946 1481
|
||||||
|
390 950 1479
|
||||||
|
391 953 1478
|
||||||
|
392 956 1477
|
||||||
|
393 958 1474
|
||||||
|
394 960 1470
|
||||||
|
395 962 1467
|
||||||
|
396 964 1465
|
||||||
|
397 967 1463
|
||||||
|
398 969 1460
|
||||||
|
399 971 1457
|
||||||
|
400 973 1454
|
||||||
|
401 976 1452
|
||||||
|
402 978 1449
|
||||||
|
403 980 1446
|
||||||
|
404 983 1444
|
||||||
|
405 985 1441
|
||||||
|
406 987 1438
|
||||||
|
407 990 1437
|
||||||
|
408 993 1436
|
||||||
|
409 995 1433
|
||||||
|
410 999 1432
|
||||||
|
411 1002 1430
|
||||||
|
412 1005 1429
|
||||||
|
413 1007 1426
|
||||||
|
414 1009 1423
|
||||||
|
415 1011 1420
|
||||||
|
416 1015 1419
|
||||||
|
417 1017 1416
|
||||||
|
418 1020 1414
|
||||||
|
419 1022 1411
|
||||||
|
420 1024 1408
|
||||||
|
421 1025 1405
|
||||||
|
422 1029 1403
|
||||||
|
423 1031 1400
|
||||||
|
424 1033 1397
|
||||||
|
425 1036 1396
|
||||||
|
426 1039 1394
|
||||||
|
427 1042 1393
|
||||||
|
428 1044 1390
|
||||||
|
429 1047 1388
|
||||||
|
430 1050 1386
|
||||||
|
431 1053 1385
|
||||||
|
432 1056 1383
|
||||||
|
433 1059 1382
|
||||||
|
434 1062 1380
|
||||||
|
435 1065 1378
|
||||||
|
436 1068 1376
|
||||||
|
437 1070 1373
|
||||||
|
438 1073 1372
|
||||||
|
439 1076 1370
|
||||||
|
440 1078 1367
|
||||||
|
441 1080 1364
|
||||||
|
442 1082 1361
|
||||||
|
443 1084 1357
|
||||||
|
444 1087 1356
|
||||||
|
445 1090 1354
|
||||||
|
446 1092 1351
|
||||||
|
447 1095 1350
|
||||||
|
448 1098 1348
|
||||||
|
449 1101 1346
|
||||||
|
450 1103 1343
|
||||||
|
451 1106 1342
|
||||||
|
452 1109 1339
|
||||||
|
453 1110 1335
|
||||||
|
454 1113 1333
|
||||||
|
455 1116 1332
|
||||||
|
456 1118 1329
|
||||||
|
457 1121 1327
|
||||||
|
458 1124 1325
|
||||||
|
459 1126 1322
|
||||||
|
460 1128 1319
|
||||||
|
461 1131 1317
|
||||||
|
462 1134 1315
|
||||||
|
463 1137 1314
|
||||||
|
464 1140 1312
|
||||||
|
465 1143 1310
|
||||||
|
466 1146 1309
|
||||||
|
467 1149 1306
|
||||||
|
468 1152 1304
|
||||||
|
469 1154 1301
|
||||||
|
470 1156 1298
|
||||||
|
471 1157 1295
|
||||||
|
472 1159 1291
|
||||||
|
473 1161 1288
|
||||||
|
474 1164 1286
|
||||||
|
475 1166 1283
|
||||||
|
476 1168 1281
|
||||||
|
477 1171 1279
|
||||||
|
478 1174 1277
|
||||||
|
479 1177 1275
|
||||||
|
480 1179 1273
|
||||||
|
481 1182 1270
|
||||||
|
482 1185 1268
|
||||||
|
483 1187 1266
|
||||||
|
484 1189 1262
|
||||||
|
485 1191 1259
|
||||||
|
486 1193 1257
|
||||||
|
487 1195 1254
|
||||||
|
488 1198 1252
|
||||||
|
489 1202 1251
|
||||||
|
490 1205 1249
|
||||||
|
491 1208 1247
|
||||||
|
492 1211 1245
|
||||||
|
493 1213 1243
|
||||||
|
494 1215 1239
|
||||||
|
495 1217 1237
|
||||||
|
496 1220 1235
|
||||||
|
497 1223 1232
|
||||||
|
498 1224 1229
|
||||||
|
499 1226 1226
|
||||||
|
500 1228 1223
|
||||||
|
501 1230 1220
|
||||||
|
502 1233 1218
|
||||||
|
503 1235 1215
|
||||||
|
504 1237 505 1505 1240 1210
|
||||||
|
506 1243 1209
|
||||||
|
507 1246 1207
|
||||||
|
508 1249 1205
|
||||||
|
509 1252 1203
|
||||||
|
510 1254 1200
|
||||||
|
511 1256 1197
|
||||||
|
512 1259 1195
|
||||||
|
513 1261 514 1514 1264 515 1515 1266 1188
|
||||||
|
516 1268 517 1517 1270 518 1272 1179
|
||||||
|
519 1275 1177
|
||||||
|
520 1277 1174
|
||||||
|
521 1279 1171
|
||||||
|
522 1282 1169
|
||||||
|
523 1285 1168
|
||||||
|
524 1524 1288 525 1525 1290 526 1526 1292 527 1294 1157
|
||||||
|
528 1528 1297 529 1529 1301 1153
|
||||||
|
530 1303 531 1531 1304 532 1532 1307 533 1533 1311 534 1534 1314 535 1535 1316 536 1319 1137
|
||||||
|
537 1322 1135
|
||||||
|
538 1325 1133
|
||||||
|
539 1328 1131
|
||||||
|
540 1331 1129
|
||||||
|
541 1334 1127
|
||||||
|
542 1336 1125
|
||||||
|
543 1339 1123
|
||||||
|
544 1342 1121
|
||||||
|
545 1345 1119
|
||||||
|
546 1347 1116
|
||||||
|
547 1350 1114
|
||||||
|
548 1353 1112
|
||||||
|
549 1355 1109
|
||||||
|
550 1358 1106
|
||||||
|
551 1360 1104
|
||||||
|
552 1363 1102
|
||||||
|
553 1365 1099
|
||||||
|
554 1368 1096
|
||||||
|
555 1371 1095
|
||||||
|
556 1374 1093
|
||||||
|
557 1376 1090
|
||||||
|
558 1379 1088
|
||||||
|
559 1381 1085
|
||||||
|
560 1383 1082
|
||||||
|
561 1385 1079
|
||||||
|
562 1387 1076
|
||||||
|
563 1389 1073
|
||||||
|
564 1392 1071
|
||||||
|
565 1395 1069
|
||||||
|
566 1397 1067
|
||||||
|
567 1400 1065
|
||||||
|
568 1402 1062
|
||||||
|
569 1406 1060
|
||||||
|
570 1408 1058
|
||||||
|
571 1411 1056
|
||||||
|
572 1414 1054
|
||||||
|
573 1416 1051
|
||||||
|
574 1418 1048
|
||||||
|
575 1420 1045
|
||||||
|
576 1423 1043
|
||||||
|
577 1426 1041
|
||||||
|
578 1429 1039
|
||||||
|
579 1431 1036
|
||||||
|
580 1433 1033
|
||||||
|
581 1435 1031
|
||||||
|
582 1438 1028
|
||||||
|
583 1441 1026
|
||||||
|
584 1443 1023
|
||||||
|
585 1445 1021
|
||||||
|
586 1448 1018
|
||||||
|
587 1451 1016
|
||||||
|
588 1453 1014
|
||||||
|
589 1457 1012
|
||||||
|
590 1460 1010
|
||||||
|
591 1463 1008
|
||||||
|
592 1466 1006
|
||||||
|
593 1468 1003
|
||||||
|
594 1470 1001
|
||||||
|
595 1472 998
|
||||||
|
596 1474 995
|
||||||
|
597 1477 993
|
||||||
|
598 1479 990
|
||||||
|
599 1481 987
|
||||||
|
600 1483 984
|
||||||
|
601 1485 982
|
||||||
|
602 1487 979
|
||||||
|
603 1489 976
|
||||||
|
604 1491 973
|
||||||
|
605 1492 970
|
||||||
|
606 1494 967
|
||||||
|
607 1496 965
|
||||||
|
608 1498 962
|
||||||
|
609 1500 959
|
||||||
|
610 1502 956
|
||||||
|
611 1505 954
|
||||||
|
612 1507 952
|
||||||
|
613 1510 949
|
||||||
|
614 1513 947
|
||||||
|
615615 1515 9616616 1518 9617617 1520 9618618 1522 9619619 1525 9620620 1527 9621621 1529 9622622 1532 9623623 1534 9624624 1537 9625625 1540 9626626 1543 918
|
||||||
|
627 1545 915
|
||||||
|
628 1548 913
|
||||||
|
629 1551 911
|
||||||
|
630 1555 909
|
||||||
|
631 1557 906
|
||||||
|
632 1559 9633633 1561 9634634 1563 8635635 1565 8636 1567 893
|
||||||
|
637 1571 891
|
||||||
|
638638 1573 8639 1576 886
|
||||||
|
640 1579 884
|
||||||
|
641 1581 881
|
||||||
|
642 1583 879
|
||||||
|
643 1586 876
|
||||||
|
644 1589 874
|
||||||
|
645 1592 872
|
||||||
|
646 1594 870
|
||||||
|
647 1596 867
|
||||||
|
648 1598 864
|
||||||
|
649 1601 862
|
||||||
|
650 1604 860
|
||||||
|
651 1606 857
|
||||||
|
652 1609 855
|
||||||
|
653 1611 852
|
||||||
|
654 1613 849
|
||||||
|
655 1616 847
|
||||||
|
656 1620 845
|
||||||
|
657 1622 843
|
||||||
|
658 1625 841
|
||||||
|
659 1628 838
|
||||||
|
660 1631 836
|
||||||
|
661 1633 834
|
||||||
|
662 1635 831
|
||||||
|
663 1638 829
|
||||||
|
664 1641 827
|
||||||
|
665 1644 824
|
||||||
|
666 1647 822
|
||||||
|
667 1649 819
|
||||||
|
668 1652 817
|
||||||
|
669 1654 815
|
||||||
|
670 1656 812
|
||||||
|
671 1659 810
|
||||||
|
672 1662 808
|
||||||
|
673 1664 805
|
||||||
|
674 1667 803
|
||||||
|
675 1669 800
|
||||||
|
676 1672 797
|
||||||
|
677 1674 795
|
||||||
|
678 1676 792
|
||||||
|
679 1678 789
|
||||||
|
680 1680 787
|
||||||
|
681 1682 784
|
||||||
|
682 1684 781
|
||||||
|
683 1687 779
|
||||||
|
684 1690 777
|
||||||
|
685 1693 775
|
||||||
|
686 1695 772
|
||||||
|
687 1698 770
|
||||||
|
688 1700 767
|
||||||
|
689 1703 765
|
||||||
|
690 1705 762
|
||||||
|
691 1707 759
|
||||||
|
692 1709 757
|
||||||
|
693 1712 755
|
||||||
|
694 1715 752
|
||||||
|
695 1718 750
|
||||||
|
696 1721 748
|
||||||
|
697 1724 746
|
||||||
|
698 1727 743
|
||||||
|
699 1730 741
|
||||||
|
700 1732 738
|
||||||
|
701 1734 736
|
||||||
|
702 1736 733
|
||||||
|
703 1739 731
|
||||||
|
704704 1741 7705 1744 726
|
||||||
|
706 1746 723
|
||||||
|
707707 1749 7708 1752 719
|
||||||
|
709 1754 716
|
||||||
|
710 1756 713
|
||||||
|
711 1757 711
|
||||||
|
712 1761 708
|
||||||
|
713 1763 706
|
||||||
|
714714 1765 7715715 1768 7716716 1770 6717717 1773 6718718 1775 6719719 1777 6720720 1780 6721721 1782 6722722 1785 6723723 1789 6724724 1791 6725725 1795 6726726 1798 675
|
||||||
|
727 1800 672
|
||||||
|
728 1802 670
|
||||||
|
729 1804 6730730 1807 6731731 1810 6732 1812 660
|
||||||
|
733 1815 657
|
||||||
|
734734 1818 6735735 1821 6736736 1823 6737737 1825 6738 1828 645
|
||||||
|
739 1830 643
|
||||||
|
740 1833 641
|
||||||
|
741 1837 638
|
||||||
|
742 1840 636
|
||||||
|
743 1843 634
|
||||||
|
744 1846 631
|
||||||
|
745 1848 629
|
||||||
|
746 1850 626
|
||||||
|
747 1851 623
|
||||||
|
748 1854 621
|
||||||
|
749 1858 619
|
||||||
|
750 1860 616
|
||||||
|
751 1862 614
|
||||||
|
752 1865 612
|
||||||
|
753 1868 609
|
||||||
|
754 1872 607
|
||||||
|
755 1874 604
|
||||||
|
756 1876 602
|
||||||
|
757 1878 599
|
||||||
|
758 1881 597
|
||||||
|
759 1884 595
|
||||||
|
760 1886 592
|
||||||
|
761 1888 589
|
||||||
|
762 1890 587
|
||||||
|
763 1892 584
|
||||||
|
764 1895 582
|
||||||
|
765 1898 579
|
||||||
|
766 1900 577
|
||||||
|
767 1768 1900768 1769 1902769 1770 1905770 1771 1907771 1772 1910772 1773 1913773 1774 1916774 1775 1919775 1776 1921 551
|
||||||
|
777 1923 548
|
||||||
|
778 1925 546
|
||||||
|
779 1928 544
|
||||||
|
780 1932 541
|
||||||
|
781 1934 539
|
||||||
|
782 1937 536
|
||||||
|
783 1939 534
|
||||||
|
784 1942 531
|
||||||
|
785 1945 529
|
||||||
|
786 1947 527
|
||||||
|
787 1949 524
|
||||||
|
788 1951 521
|
||||||
|
789 1953789 1790 1955790 1791 1958791 1792 1960792 1793 1963793 1794 1965794 1970 507
|
||||||
|
795 1973 505
|
||||||
|
796 1975 503
|
||||||
|
797 1978 500
|
||||||
|
798 1799 1978799 1800 1982800 1986 493
|
||||||
|
801 1988 490
|
||||||
|
802 1803 1989803 1993 486
|
||||||
|
804 1996 483
|
||||||
|
805 1998 481
|
||||||
|
806 2001 478
|
||||||
|
807 2003 476
|
||||||
|
808 2006 473
|
||||||
|
809 2009 471
|
||||||
|
810 2012 468
|
||||||
|
811 2015 466
|
||||||
|
812 2017 464
|
||||||
|
813 2019 461
|
||||||
|
814 2022 459
|
||||||
|
815 2024 456
|
||||||
|
816 2027 454
|
||||||
|
817 2029 451
|
||||||
|
818 2032 449
|
||||||
|
819 2034 446
|
||||||
|
820 2037 444
|
||||||
|
821 2039 441
|
||||||
|
822 2042 439
|
||||||
|
823 2045 436
|
||||||
|
824 2049 434
|
||||||
|
825 2051 432
|
||||||
|
826 2053 429
|
||||||
|
827 2054 426
|
||||||
|
828 2056 424
|
||||||
|
829 2059 421
|
||||||
|
830 2062 419
|
||||||
|
831 2064 416
|
||||||
|
832 2067 414
|
||||||
|
833 2069 411
|
||||||
|
834 2072 409
|
||||||
|
835 2075 407
|
||||||
|
836 2077 404
|
||||||
|
837 2079 402
|
||||||
|
838 2081 399
|
||||||
|
839 2083 396
|
||||||
|
840 2085 394
|
||||||
|
841 2087 391
|
||||||
|
842 2090 389
|
||||||
|
843 2093 386
|
||||||
|
844 2095 384
|
||||||
|
845 2098 381
|
||||||
|
846 2101 379
|
||||||
|
847 2104 377
|
||||||
|
848 2108 374
|
||||||
|
849 2110 372
|
||||||
|
850 2112 369
|
||||||
|
851 2114 367
|
||||||
|
852 2116 364
|
||||||
|
853 2119 362
|
||||||
|
854 2122 359
|
||||||
|
855 2125 357
|
||||||
|
856 2128 355
|
||||||
|
857 2130 352
|
||||||
|
858 2133 350
|
||||||
|
859 2136 347
|
||||||
|
860 2138 345
|
||||||
|
861 2140 342
|
||||||
|
862 2143 340
|
||||||
|
863 2147 337
|
||||||
|
864 2150 335
|
||||||
|
865 2153 333
|
||||||
|
866 2155 330
|
||||||
|
867 2158 328
|
||||||
|
868 2161 325
|
||||||
|
869 2164 323
|
||||||
|
870 2166 320
|
||||||
|
871 2169 318
|
||||||
|
872 2171 315
|
||||||
|
873 2174 313
|
||||||
|
874 2176 310
|
||||||
|
875 2178 308
|
||||||
|
876 2179 305
|
||||||
|
877 2181 303
|
||||||
|
878 2185 300
|
||||||
|
879 2187 298
|
||||||
|
880 2189 295
|
||||||
|
881 2191 293
|
||||||
|
882 2194 290
|
||||||
|
883 2196 288
|
||||||
|
884 2197 285
|
||||||
|
885 2200 283
|
||||||
|
886886 2201 2887887 2204 2888888 2207 2889889 2211 2890890 2214 2891891 2217 2892892 2220 266
|
||||||
|
893 2222 263
|
||||||
|
894 2225 261
|
||||||
|
895 2228 258
|
||||||
|
896 2231 256
|
||||||
|
897 2234 253
|
||||||
|
898 2236 2899899 2238 2900 2241 246
|
||||||
|
901 2244 243
|
||||||
|
902 2247 241
|
||||||
|
903 2251 239
|
||||||
|
904 2254 236
|
||||||
|
905 2256 234
|
||||||
|
906 2258 231
|
||||||
|
907 2261 229
|
||||||
|
908 2264 226
|
||||||
|
909 2266 224
|
||||||
|
910 2268 221
|
||||||
|
911 2271 219
|
||||||
|
912 2274 216
|
||||||
|
913 2277 214
|
||||||
|
914 2279 211
|
||||||
|
915 2282 209
|
||||||
|
916 2285 206
|
||||||
|
917 2288 204
|
||||||
|
918 2291 202
|
||||||
|
919 2295 199
|
||||||
|
920 2298 197
|
||||||
|
921 2300 194
|
||||||
|
922 2302 192
|
||||||
|
923 2304 189
|
||||||
|
924 2306 187
|
||||||
|
925 2308 184
|
||||||
|
926 2311 181
|
||||||
|
927 2314 179
|
||||||
|
928 2317 177
|
||||||
|
929 2319 174
|
||||||
|
930 2321 172
|
||||||
|
932 2315 166
|
||||||
|
933 2318 163
|
||||||
|
933 2328 164
|
||||||
|
935 2322 158
|
||||||
|
936 2326 156
|
||||||
|
937 2329 153
|
||||||
|
938 2332 151
|
||||||
|
939 2335 149
|
||||||
|
940 2337 146
|
||||||
|
941 2339 144
|
||||||
|
942 2341 141
|
||||||
|
943 2343 138
|
||||||
|
944 2346 136
|
||||||
|
945 2348 134
|
||||||
|
946 2351 131
|
||||||
|
946 2360 132
|
||||||
|
947 2363 129
|
||||||
|
948 2366 127
|
||||||
|
949 2369 124
|
||||||
|
950 2371 122
|
||||||
|
951 2374 119
|
||||||
|
952 2377 117
|
||||||
|
953 2380 114
|
||||||
|
954 2384 112
|
||||||
|
955 2386 109
|
||||||
|
956 2388 107
|
||||||
|
957 2390 104
|
||||||
|
958 2391 102
|
||||||
|
959 2395 99
|
||||||
|
960 2398 97
|
||||||
|
961 2400 94
|
||||||
|
962 2403 92
|
||||||
|
963 2408 89
|
||||||
|
964 2410 87
|
||||||
|
965 2414 84
|
||||||
|
966 2416 82
|
||||||
|
967 2418 79
|
||||||
|
968 2420 77
|
||||||
|
969 2422 74
|
||||||
|
970 2424 72
|
||||||
|
971 2425 699972 2428 67
|
||||||
|
973 2431 64
|
||||||
|
974 2434 62
|
||||||
|
975 2436 59
|
||||||
|
976 2439 57
|
||||||
|
977 2442 54
|
||||||
|
978978 2443 979979 2446 980980 2449 47
|
||||||
|
981 2451 44
|
||||||
|
982 2455 42
|
||||||
|
983 2458 39
|
||||||
|
984 2461 37
|
||||||
|
985 2463 34
|
||||||
|
986 2466 32
|
||||||
|
987 2470 30
|
||||||
|
988 2472 27
|
||||||
|
989 2474 990990 2477 991991 2479 992992 2482 993993 2484 994994 2487 995 2491 10
|
||||||
|
996996 2494997997 2497998998 2501999999 2503 0
|
||||||
|
@@ -0,0 +1,82 @@
|
|||||||
|
"y","X1","X2"
|
||||||
|
"A",6,2.5
|
||||||
|
"A",5.1,1.9
|
||||||
|
"A",5.9,2.1
|
||||||
|
"A",5.6,1.8
|
||||||
|
"A",5.8,2.2
|
||||||
|
"A",6.6,2.1
|
||||||
|
"A",4.5,1.7
|
||||||
|
"A",6.3,1.8
|
||||||
|
"A",5.8,1.8
|
||||||
|
"A",6.1,2.5
|
||||||
|
"A",5.1,2
|
||||||
|
"A",5.3,1.9
|
||||||
|
"A",5.5,2.1
|
||||||
|
"A",5,2
|
||||||
|
"A",5.1,2.4
|
||||||
|
"A",5.3,2.3
|
||||||
|
"A",5.5,1.8
|
||||||
|
"A",6.7,2.2
|
||||||
|
"A",6.9,2.3
|
||||||
|
"A",5,1.5
|
||||||
|
"A",5.7,2.3
|
||||||
|
"A",4.9,2
|
||||||
|
"A",6.7,2
|
||||||
|
"A",4.9,1.8
|
||||||
|
"A",5.7,2.1
|
||||||
|
"A",6,1.8
|
||||||
|
"A",4.8,1.8
|
||||||
|
"A",5.6,2.1
|
||||||
|
"A",5.8,1.6
|
||||||
|
"A",6.1,1.9
|
||||||
|
"A",6.4,2
|
||||||
|
"A",5.6,2.2
|
||||||
|
"A",5.6,1.4
|
||||||
|
"A",6.1,2.3
|
||||||
|
"A",5.6,2.4
|
||||||
|
"A",4.8,1.9
|
||||||
|
"A",5.4,2.1
|
||||||
|
"A",5.1,2.3
|
||||||
|
"A",5.9,2.3
|
||||||
|
"A",5.7,2.5
|
||||||
|
"A",5.2,2.3
|
||||||
|
"A",5,1.9
|
||||||
|
"A",5.2,2
|
||||||
|
"A",5.4,2.3
|
||||||
|
"A",5.1,1.8
|
||||||
|
"B",4.7,1.4
|
||||||
|
"B",4.5,1.5
|
||||||
|
"B",4.9,1.5
|
||||||
|
"B",4,1.3
|
||||||
|
"B",4.6,1.5
|
||||||
|
"B",4.5,1.3
|
||||||
|
"B",4.7,1.6
|
||||||
|
"B",3.3,1
|
||||||
|
"B",4.6,1.3
|
||||||
|
"B",3.9,1.4
|
||||||
|
"B",3.5,1
|
||||||
|
"B",4.2,1.5
|
||||||
|
"B",4,1
|
||||||
|
"B",3.6,1.3
|
||||||
|
"B",4.4,1.4
|
||||||
|
"B",4.1,1
|
||||||
|
"B",3.9,1.1
|
||||||
|
"B",4.8,1.7
|
||||||
|
"B",4.7,1.2
|
||||||
|
"B",4.3,1.3
|
||||||
|
"B",4.8,1.4
|
||||||
|
"B",5,1.7
|
||||||
|
"B",3.8,1.1
|
||||||
|
"B",3.7,1
|
||||||
|
"B",3.9,1.2
|
||||||
|
"B",5.1,1.6
|
||||||
|
"B",4.5,1.6
|
||||||
|
"B",4.7,1.5
|
||||||
|
"B",4.4,1.3
|
||||||
|
"B",4.1,1.3
|
||||||
|
"B",4.4,1.2
|
||||||
|
"B",4.6,1.4
|
||||||
|
"B",4,1.2
|
||||||
|
"B",4.2,1.3
|
||||||
|
"B",4.2,1.2
|
||||||
|
"B",3,1.1
|
||||||
|
@@ -0,0 +1,82 @@
|
|||||||
|
"X","y"
|
||||||
|
6,2.5
|
||||||
|
5.1,1.9
|
||||||
|
5.9,2.1
|
||||||
|
5.6,1.8
|
||||||
|
5.8,2.2
|
||||||
|
6.6,2.1
|
||||||
|
4.5,1.7
|
||||||
|
6.3,1.8
|
||||||
|
5.8,1.8
|
||||||
|
6.1,2.5
|
||||||
|
5.1,2
|
||||||
|
5.3,1.9
|
||||||
|
5.5,2.1
|
||||||
|
5,2
|
||||||
|
5.1,2.4
|
||||||
|
5.3,2.3
|
||||||
|
5.5,1.8
|
||||||
|
6.7,2.2
|
||||||
|
6.9,2.3
|
||||||
|
5,1.5
|
||||||
|
5.7,2.3
|
||||||
|
4.9,2
|
||||||
|
6.7,2
|
||||||
|
4.9,1.8
|
||||||
|
5.7,2.1
|
||||||
|
6,1.8
|
||||||
|
4.8,1.8
|
||||||
|
5.6,2.1
|
||||||
|
5.8,1.6
|
||||||
|
6.1,1.9
|
||||||
|
6.4,2
|
||||||
|
5.6,2.2
|
||||||
|
5.6,1.4
|
||||||
|
6.1,2.3
|
||||||
|
5.6,2.4
|
||||||
|
4.8,1.9
|
||||||
|
5.4,2.1
|
||||||
|
5.1,2.3
|
||||||
|
5.9,2.3
|
||||||
|
5.7,2.5
|
||||||
|
5.2,2.3
|
||||||
|
5,1.9
|
||||||
|
5.2,2
|
||||||
|
5.4,2.3
|
||||||
|
5.1,1.8
|
||||||
|
4.7,1.4
|
||||||
|
4.5,1.5
|
||||||
|
4.9,1.5
|
||||||
|
4,1.3
|
||||||
|
4.6,1.5
|
||||||
|
4.5,1.3
|
||||||
|
4.7,1.6
|
||||||
|
3.3,1
|
||||||
|
4.6,1.3
|
||||||
|
3.9,1.4
|
||||||
|
3.5,1
|
||||||
|
4.2,1.5
|
||||||
|
4,1
|
||||||
|
3.6,1.3
|
||||||
|
4.4,1.4
|
||||||
|
4.1,1
|
||||||
|
3.9,1.1
|
||||||
|
4.8,1.7
|
||||||
|
4.7,1.2
|
||||||
|
4.3,1.3
|
||||||
|
4.8,1.4
|
||||||
|
5,1.7
|
||||||
|
3.8,1.1
|
||||||
|
3.7,1
|
||||||
|
3.9,1.2
|
||||||
|
5.1,1.6
|
||||||
|
4.5,1.6
|
||||||
|
4.7,1.5
|
||||||
|
4.4,1.3
|
||||||
|
4.1,1.3
|
||||||
|
4.4,1.2
|
||||||
|
4.6,1.4
|
||||||
|
4,1.2
|
||||||
|
4.2,1.3
|
||||||
|
4.2,1.2
|
||||||
|
3,1.1
|
||||||
|