Пример #1
0
    363111, 820117, 488463, 455872, 473954, 371886, 451887, 403893, 364007,
    331575
]
BNPSyss = [
    918710, 771973, 831298, 808765, 777248, 922939, 834642, 850163, 759414,
    731136, 1125019, 899272, 846111, 886057, 817060, 824648, 811833, 792748,
    778412
]
Sysselsatte = [
    270338, 47868, 125938, 37143, 86627, 254290, 127060, 116020, 62621, 86968,
    468375, 233986, 54490, 166479, 74749, 84537, 86997, 106931, 118320
]

X = np.transpose(np.array([Areal, Folketall, BNPKap, BNPSyss, Sysselsatte]))

X = pca.standardize(pca.meanCenter(X))

[T, P, E] = pca.pca(X, a=2)

plt.figure(2)

plt.scatter(T[:, 0], T[:, 1])
for txt, x, y in zip(Fylker, T[:, 0], T[:, 1]):
    plt.annotate(txt, xy=(x, y))

plt.scatter(P[:, 0], P[:, 1])
for txt, x, y in zip(Indikatorer, P[:, 0], P[:, 1]):
    plt.annotate(txt, xy=(x, y))

plt.show()
Пример #2
0
from __future__ import division
import pca
import scipy.io
import numpy as np
import scipy.linalg as sl
import matplotlib.pyplot as plt
import pylab

data = scipy.io.loadmat("Arbeidskrav3.mat")
X1 = np.array(data['X1'])
X2 = np.array(data['X2'])

# 2a:
X1 = pca.meanCenter(
    X1)  # Preprosessering av matrisen. Gjennomsnitt = 0 i hver søyle/kolonne.
X1 = pca.standardize(
    X1)  # Preprossesering av matrisen. standardavvik = 1 i hver søyle/kolonne.

objNames1 = data[
    'objNames1']  # Navn på pkt i scoreplot ['1:Milk+','2','3:Sugar','4','5a','5b','6','7:Cocoa+']
varNames1 = data[
    'varNames1']  # Navn på pkt i loadingsplot ['%COCOA','%SUGAR','%MILK','COLOUR(L)','VISCOSITY/10','colour','cocoa-odour','smooth-txtr','milk-taste','sweet']

# 2b:
# Vi bruker PCA til å beskrive varians i datasettet vårt, og derfor er det
# viktig med standardisering. Ved standardisering får vi sammenliknbare
# resultater, uavhengig hvilken måleenhet eller benevning som var brukt på
# dataene i utgangspunktet.

# 2c
[T, P, E] = pca.pca(
    X1, a=2)  # Setter a=2 fordi vi skal ha de to første prinsipalkomponentene
Пример #3
0
    918710, 771973, 831298, 808765, 777248, 922939, 834642, 850163, 759414,
    731136, 1125019, 899272, 846111, 886057, 817060, 824648, 811833, 792748,
    778412
]

Sysselsatte = [
    270338, 47868, 125938, 37143, 86627, 254290, 127060, 116020, 62621, 86968,
    468375, 233986, 54490, 166479, 74749, 84537, 86997, 106931, 118320
]

X = np.transpose(np.array([Areal, Folketall, BNPKap, BNPSyss, Sysselsatte]))

# a)

X = meanCenter(X)
X = standardize(X)

# Matrise X

# [-0.63453849 -0.94222438 -0.89082706 -0.80036086 -0.85331319]
# [-0.17137967  0.01742517 -0.33347532 -0.11689616 -0.10886456]
# [ 2.54145713 -1.18074621  0.05798917 -0.37649178 -0.95558309]
# [ 0.83313906 -0.47419209 -0.6365081  -0.73958924 -0.48372072]
# [-0.12915832  1.43151638  0.52872913  0.93887103  1.11505589]
# [-0.15618356 -0.06168186  0.00552233 -0.07837098 -0.09816556]
# [ 1.72458964 -0.19945995 -0.03811831  0.10044159 -0.20343919]
# [ 0.43216942 -0.82120945 -0.61564018 -0.94504915 -0.71263366]
# [ 0.6556773  -0.51369263 -0.65379274 -1.27083111 -0.48046906]
# [-1.33458788  2.29554883  3.65563591  3.26697127  3.15649669]
# [-0.61672521  1.1493503   0.52823879  0.66621096  0.92144394]
# [ 0.12712403 -0.9799356   0.2209155   0.05375977 -0.79016807]
Пример #4
0
    331575
]
BNPSyss = [
    918710, 771973, 831298, 808765, 777248, 922939, 834642, 850163, 759414,
    731136, 1125019, 899272, 846111, 886057, 817060, 824648, 811833, 792748,
    778412
]
Sysselsatte = [
    270338, 47868, 125938, 37143, 86627, 254290, 127060, 116020, 62621, 86968,
    468375, 233986, 54490, 166479, 74749, 84537, 86997, 106931, 118320
]

X = np.transpose(np.array([Areal, Folketall, BNPKap, BNPSyss, Sysselsatte]))

X = pca.meanCenter(X)
X = pca.standardize(X)

print("Oppgave 3a, prossesert X = \n", X)

# b)

[T, P, E] = pca.pca(X, a=2)

print("\nOppgave 3b, T =\n", T)
print("\nP =\n", P)

# c)

# plotter skåreplot med fylkenavn
plt.figure(1)
plt.scatter(T[:, 0], T[:, 1])
Пример #5
0
import scipy.io
import numpy as np
import scipy.linalg as sl
import matplotlib.pyplot as plt
import pylab

data = scipy.io.loadmat("Arbeidskrav3.mat")

X1 = np.array(data['X1'])
X2 = np.array(data['X2'])

# Oppgave 1
# Preprossessering, meancenter for gjennomsnitt = 0 i hver søyle/kolonne,
# standardize for standardavvik = 1 i hver søyle/kolonne
X1 = pca.meanCenter(X1)
X1 = pca.standardize(X1)

# Navn på punkt i score plot
objNames1 = data['objNames1']
# Navn på punkt i loading plot
varNames1 = data['varNames1']

# Oppgave 2
# Standardisering i PCA er viktig fordi PCA beskriver varians i et sett.
# Når vi standardiserer dataene vi tar inn, får vi sammenlignbare resultater,
# på tvers av måleenheter og størrelsesordener

# Oppgave 3
[T, P, E] = pca.pca(X1, a=2)

plt.figure(0)
Пример #6
0
from ksvm import poly_kernel, gauss_kernel, SDCARegressor
from rn_tf import *

X_train, Y_train = retrieve(2016)
X_val, Y_val = retrieve(2017)
X_test, Y_test = retrieve(2018)
m = X_train.shape[1]
print(str(m) + " features")

# Testing PCA and creating modified sets

X_train_n = normalize(X_train)
X_val_n = normalize(X_val)
X_test_n = normalize(X_test)

X_train_s = standardize(X_train)
X_val_s = standardize(X_val)
X_test_s = standardize(X_test)

pca = PCA(n_components=m, whiten=True)

X_train_pca = pca.fit_transform(X_train_s)
X_val_pca = pca.fit_transform(X_val_s)
X_test_pca = pca.fit_transform(X_test_s)

# Testing Linear_regression
# With normalized data

print("Linear regression with normalized data")
LR = LinearRegression(lamb=0.1, delta=0.000015)
LR.fit(X_train_n, Y_train, epochs=1000, Visual=True)
Пример #7
0
]
BNPSyss = [
    918710, 771973, 831298, 808765, 777248, 922939, 834642, 850163, 759414,
    731136, 1125019, 899272, 846111, 886057, 817060, 824648, 811833, 792748,
    778412
]
Sysselsatte = [
    270338, 47868, 125938, 37143, 86627, 254290, 127060, 116020, 62621, 86968,
    468375, 233986, 54490, 166479, 74749, 84537, 86997, 106931, 118320
]

X = np.transpose(np.array([Areal, Folketall, BNPKap, BNPSyss, Sysselsatte]))
#E.T er transponerte av e

#Oppgave 3a
Xnorm = standardize(meanCenter(X))
print('Preprossessert X:')
print(Xnorm)

#Oppgave b
[T, P, E] = pca(Xnorm, a=2)
#T inneholder koordinatene til datapunktene i svaret, og hva en nxa-matrise-
print(T)
#P inneholder retningene på de a aksene i m dimensjoner vi velger. det inneholder også koor til målretningene i svaret. P er en mxa-matrise(så den transponerte er axm)
print(P)

print('c):')
plt.figure(0)
plt.scatter(T[:, 0], T[:, 1])
for label, x, y in zip(Fylker, T[:, 0], T[:, 1]):
    plt.annotate(label,