TUGAS 3
DATA MINING
METODE KNN MIN-MAX-NORMALIZA MIN-MAX-NORMALIZATION TION
Oleh:
RAHMANITA M. KARIMA
(0810963023)
MUTYA FANI ATSOMYA
(0810963019)
RIA KURNIANTI
(0810963065)
RIZKHY AYUNING TYAS
(0810963067)
PROGRAM STUDI ILMU KOMPUTER JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN PENGETAHUAN ALAM UNIVERSITAS BRAWIJAYA MALANG 2011
TUGAS DATA MINING
CONTOH DATA TINGGI BADAN MODEL INDONESIA
NO
NAMA
TINGGI (cm)
JENIS KELAMIN
0
yuna
162
Tinggi
1
so-young
160
Tinggi
2
jesica
173
Tinggi
3
tifani
168
Tinggi
4
taeyon
150
Pendek
5
yuri
166
Tinggi
6
ria
155
Pendek
7
dinda
161
Tinggi
8
sunny
162,5
Tinggi
9
mumy
152
Pendek
10
adit
165
Tinggi
11
wicaksono
166
Tinggi
12
akbar
156
Pendek
13
pono
178
Tinggi
14
rahmanita
169
Tinggi
15
maulidia
167
Tinggi
16
karima
162
Tinggi
17
mutya
159
Pendek
18
rizkhy ayuning
151,5
Pendek
19
atsomya
152
Pendek
20
budi
153
Pendek
PERHITUNGAN 1. NORMALISASI MIN-MAX
Min (X) =150 Max (X) = 178 Range (X) = Min (X) – Min (X) = 178 – 150 = 28
HASIL NORMALISASI
NO 0
0,428571429
1
0,357142857
2
0,821428571
3
0,642857143
4
0
5
0,571428571
2
TUGAS DATA MINING
6
0,178571429
7
0,392857143
8
0,446428571
9
0,071428571
10
0,535714286
11
0,571428571
12
0,214285714
13
1
14
0,678571429
15
0,607142857
16
0,428571429
17
0,321428571
18
0,053571429
19
0,071428571
20
0,107142857
2. JARAK ANTAR VARIABEL Rumus jarak: D(new,object)=SQRT(POWER(normalisasi_new - normalisasi_object))
Misalnya data yang akan di bandingkan adalah 165.
Di normalisasinya:
= 0,535714285 NO
Object
Jarak
0
d(new,yuna)
0,107142857
1
d(new,so-young)
0,178571429
2
d(new,jesica)
0,285714286
3
d(new,tifani)
0,107142857
4
d(new,taeyon)
0,535714286
5
d(new,yuri)
0,035714286
6
d(new,ria)
0,357142857
7
d(new,dinda)
0,142857143
8
d(new,sunny)
0,089285714
9
d(new,mumy)
0,464285714
10
d(new,adit)
0
11
d(new,wicaksono)
0,035714286
12
d(new,akbar)
0,321428571
13
d(new,pono)
0,464285714
14
d(new, rahmanita)
0,142857143
15
d(new,maulidia)
0,071428571
3
TUGAS DATA MINING
16
d(new,karima)
0,107142857
17
0,214285714
18
d(new,mutya) d(new,rizkhy ayuning)
19
d(new,atsomya)
0,464285714
20
d(new,budi)
0,428571429
0,482142857
3. SIMPLE UNWEIGHT VOTING Misalkan K=2 Langkah-Langkah: a. Sorting NO
DISTANCE
SORTING
0
0,107142857
0
1
0,178571429
0,035714286
2
0,285714286
0,035714286
3
0,107142857
0,071428571
4
0,535714286
0,089285714
5
0,035714286
0,107142857
6
0,357142857
0,107142857
7
0,142857143
0,107142857
8
0,089285714
0,142857143
9
0,464285714
0,142857143
10
0
0,178571429
11
0,035714286
0,214285714
12
0,321428571
0,285714286
13
0,464285714
0,321428571
14
0,142857143
0,357142857
15
0,071428571
0,428571429
16
0,107142857
0,464285714
17
0,214285714
0,464285714
18
0,482142857
0,464285714
19
0,464285714
0,482142857
20
0,428571429
0,535714286
karena k=2 , maka diambil 2 terendah dari hasil sorting maka hasilnya adalah 0 dan 0,035714286.
4
TUGAS DATA MINING
SOURCE CODE
KNN_nor mal i sasi _unwei ght . j ava package t ugasdat mi nknn_nor m_unwei ght ; i mpor t j avax. swi ng. J Text Ar ea; publ i c cl ass KNN_nomal i sasi _unwei ght ext ends j avax. swi ng. J Fr ame { publ i c KNN_nomal i sasi _unwei ght ( ) { i ni t Component s( ) ; b1. set Enabl ed( f al se) ; b2. set Enabl ed( f al se) ; b3. set Enabl ed( f al se) ; kedekat an. set Enabl ed( f al se) ; r eset . set Enabl ed( f al se) ; } publ i c St r i ng nama[ ] ={"yuna", "so- young", "j esi ca", "t i f ani ", "t aeyon", "yur i ", "r i a", "di nda", "sunny", "mumy", "adi t ", "wi caksono", "akbar ", " pono", "r ahmani t a" , " maul i da" , " kar i ma" , " Mut ya" , " Ri zkhy Ayuni ng" , " At somya" , " Budi " }; publ i c doubl e t i nggi [ ] ={162, 160, 173 , 168, 150, 166, 155, 161, 162. 5, 152, 165, 166, 156, 178, 169, 167, 162, 159, 151. 5, 152, 153 }; publ i c St r i ng ket [ ] ={"Ti nggi ", "Ti nggi ", "Ti nggi ", "Ti nggi ", "Pendek", "Ti nggi ", "Pendek", "Ti nggi ", "Ti nggi ", "Pendek", " Ti nggi " , " Ti nggi " , " Pendek" , " Ti nggi " , " Ti nggi " , " Ti nggi ", " Ti nggi ", "Pendek", "Pendek", " Pendek", " Pendek" }; publ i c doubl e msk1; publ i c i nt k; publ i c st at i c TugasDat mi n h=new TugasDat mi n( ) ; publ i publ i publ i publ i publ i publ i publ i publ i publ i
c c c c c c c c c
doubl e mx=h. maksi mum( t i nggi ) ; doubl e mn=h. mi ni mum( t i nggi ) ; St r i ng kl as i f i kas i ; St r i ng r st ="" ; i nt count T = 0; i nt count P = 0; doubl e r =mx- mn; i nt ah=t i nggi . l engt h; doubl e j ar ak_dengan_new [ ] =new doubl e [ ah] ;
publ i c doubl e normal i sasi ( doubl e a) { doubl e nor m; nor m=( a- mn) / r ; r et ur n nor m; } publ i c s t at i c voi d s s s_ ur ut ( doubl e j [ ] , St r i ng k[ ] ) { i nt n = j . l engt h; f or ( i nt pass=1; pass < n; pass ++) { f or ( i nt i =0; i < n- pass; i ++) { i f ( j [ i ] > j [ i +1] ) { doubl e t emp = j [ i ] ; j [ i ] = j [ i +1] ; j [ i +1] = t emp; / / sor t i ng kat egor i ber dasar kan j ar ak
5
TUGAS DATA MINING
St r i ng aduh=k[ i ] ; k[ i ] =k[ i +1] ; k[ i +1] =aduh; } } } / / r et ur n x; } publ i c voi d c l as si f i c at i on( J Text Ar ea j j ) { sss_ ur ut ( j arak_dengan_new, ket ) ; k=I nt eger . par seI nt ( masukan_k. get Text( ) ) ; / / sss_urut( j ar ak_dengan_new, ket ) ; j j . append( " Dengan k = " +k+" , maka\ n") ; f or ( i nt b = 0; b
count P) { kl as i f i kas i = " Ti nggi " ; } el se i f ( count T
: " + kl asi f i kasi ) ;
} pr i vat e voi d b3Act i onPer f ormed( j ava. awt . event . Act i onEvent evt ) { kedekat an. set Enabl ed( t r ue) ; msk1=Doubl e. par seDoubl e( newbar u. get Text ( ) ) ; i nt p=t i nggi . l engt h; i nt aa; f or ( aa=0; aa
6
TUGAS DATA MINING
pr i vat e voi d b2Act i onPer f ormed( j ava. awt . event . Act i onEvent evt ) { b3. set Enabl ed( t r ue) ; doubl e j r k=0; doubl e j r k_nya=0; i nt c, m, d; f or ( d=0; d maks) { maks = dat a[ k] ; } } r et ur n( maks) ; } publ i c doubl e mi ni mum( doubl e dat a[ ] ) { i nt N=dat a. l engt h; doubl e mi n; mi n = dat a[ 0] ; f or ( i nt k=1; k < N; k++) { i f ( dat a[ k] < mi n) { mi n = dat a[ k] ;
7
TUGAS DATA MINING
} } r et ur n( mi n) ; } publ i c doubl e kat egor i ( char kat egor i 1, char kat egor i 2) { doubl e var i abel ; i f ( kat egor i 1! =kat egor i 2) { var i abel =1. 0; } el se var i abel =0. 0; r et ur n var i abel ; } publ i c doubl e hi t ung_j ar ak( doubl e xi , doubl e yi ) { / / doubl e kat eg=kk. kat egor i ( a, b) ; doubl e di st ance=xi - yi ; doubl e t emp1=Mat h. pow( di st ance, 2) ; / / doubl e t emp2=Mat h. pow( kat eg, 2) ; doubl e J ar ak_Ku=Mat h. sqr t ( t emp1) ; r et ur n J ar ak_Ku; } publ i c st at i c voi d ur ut _dat a( doubl e x[ ] , J Text Ar ea d) { i nt n = x. l engt h; f or ( i nt pass=1; pass < n; pass ++) { f or ( i nt i =0; i < n- pass; i ++) { i f ( x[ i ] > x[ i +1] ) { doubl e t emp = x[ i ] ; x[ i ] = x[ i +1] ; x[ i +1] = t emp; } } } f or( i nt k=1; k
OUTPUT
8
TUGAS DATA MINING
9