Jarak Data (Atribut Ordinal)
Jarak Data (Atribut Ordinal)¶
Diberikan file excel bernama "jarak.xlsx" sheet "Ordinal"
Kali ini kita akan membicarakan data dengan atribut ordinal (peringkat). Atribut dari data bisa kita buat sebagai peringkat mulai dari 1.
Perhatikan data berikut
In [1]:
import pandas as pd
import numpy as np
In [2]:
data=pd.read_excel("jarak.xlsx", sheet_name="Ordinal")
print("Tampilan 5 data teratas :")
print("Banyak baris/objek data", data.shape[0])
print("Banyak kolom/atribut data", data.shape[1])
data.head()
Tampilan 5 data teratas : Banyak baris/objek data 9 Banyak kolom/atribut data 4
Out[2]:
Nama | Langganan | Pendidikan | Menikah | |
---|---|---|---|---|
0 | Francis Aguilar | Silver | S1 | Ya |
1 | Morris Wallace | Gold | S2 | Belum |
2 | Santiago Hicks | Platinum | S3 | Ya |
3 | Forrest Nash | Gold | S2 | Ya |
4 | Manuel Lawson | Gold | S1 | Belum |
Ubahlah data tersebut menjadi bentuk ordinal numerik
In [3]:
def ordinal_langganan(L):
#input L list
#output L2 bentuk ordinal numerik dari L
L2=[]
for x in L:
if x=="Silver":
L2.append(0)
elif x=="Gold":
L2.append(1)
else:
L2.append(2)
return L2
def ordinal_pendidikan(L):
#input L list
#output L2 bentuk ordinal numerik dari L
L2=[]
for x in L:
if x=="S1":
L2.append(0)
elif x=="S2":
L2.append(1)
else:
L2.append(2)
return L2
def ordinal_menikah(L):
#input L list
#output L2 bentuk ordinal numerik dari L
L2=[]
for x in L:
if x=="Ya":
L2.append(0)
else:
L2.append(1)
return L2
In [4]:
data2=data.copy()
data2["Langganan"]=ordinal_langganan(data2["Langganan"])
data2["Pendidikan"]=ordinal_pendidikan(data2["Pendidikan"])
data2["Menikah"]=ordinal_menikah(data2["Menikah"])
data2
Out[4]:
Nama | Langganan | Pendidikan | Menikah | |
---|---|---|---|---|
0 | Francis Aguilar | 0 | 0 | 0 |
1 | Morris Wallace | 1 | 1 | 1 |
2 | Santiago Hicks | 2 | 2 | 0 |
3 | Forrest Nash | 1 | 1 | 0 |
4 | Manuel Lawson | 1 | 0 | 1 |
5 | Carrie Douglas | 2 | 0 | 1 |
6 | Claire Walton | 0 | 1 | 0 |
7 | Kenny Peters | 0 | 0 | 1 |
8 | Ivan Carroll | 2 | 0 | 1 |
Data yang dimiliki sekarang sudah menjadi data dengan atribut numerik. Silahkan Anda hitung jaraknya dengan jarak Euclid, Manhattan atau Minkowski. :)
Apabila diperlukan, silahkan lakukan normalisasi data, agar datanya memiliki rentang yang sama, yaitu 0 sampai 1.
Comments
Post a Comment