diff options
Diffstat (limited to 'data/nn-goldman.py')
| -rwxr-xr-x | data/nn-goldman.py | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/data/nn-goldman.py b/data/nn-goldman.py index 297544b..34072de 100755 --- a/data/nn-goldman.py +++ b/data/nn-goldman.py @@ -3,13 +3,19 @@ import sys import numpy as np #in place modification ! -def normalize(a): - print a - for i in range(a.shape[1]): +def normalize(a,weights=None): + if weights == None: + weights= {} + cols = a.shape[1] + for i in range(cols): + weights[i] = None + + for i in weights.keys(): column = a[:,i] - weights = np.mean(column), np.std(column) - a[:,i] = (column-weights[0])/weights[1] - return a + if weights[i] == None: + weights[i] = np.mean(column), np.std(column) + a[:,i] = (column-weights[i][0])/weights[i][1] + return a,weights def knn_search(names,d1,d2,k): for i,row2 in enumerate(d2): @@ -29,7 +35,11 @@ if __name__ == "__main__": sk_data = sk_data[:,1:] noise1 = np.random.normal(0,var,sk_data.shape) noise2 = np.random.normal(0,var,sk_data.shape) - sk1 = normalize(sk_data+noise1) - sk2 = normalize(sk_data+noise2) + #sk1,weights = normalize(sk_data+noise1) + #sk2,weights = normalize(sk_data+noise2,weights) + sk1 = sk_data + noise1 + sk2 = sk_data + noise2 + print sk1 + print sk2 knn_search(names,sk1,sk2,1) |
