Introduction: Data Mining with Matlab

Data Mining berasal dari dua kata yaitu Data yang berarti sekumpulan fakta yang masih kasar dan Mining yang berarti menggali/menambang. Jadi dengan Data Mining diharapkan ada informasi tersembunyi yang bisa digali dari sekumpulan data tersebut. Metode-metode yang digunakan cukup banyak yang mudah-mudahan dapat diulas semua hingga UAS nanti.

Pertemuan kali ini hanya akan membahas sedikit bahasa pemrograman yang cukup mudah yaitu Matlab. Dibandingkan dengan c++, java, dan sejenisnya, Matlab jauh lebih mudah dan cocok jika kita hanya ingin mempelajari metode saja. Sebenarnya banyak alat lainnya seperti Rapidminer atau SQL Server Business Intelligent. Akan tetapi tools tersebut sangat sulit dianalisa struktur kodenya dan tidak cocok untuk pendidikan. Berbeda dengan matlab yang strukture toolbox yang dapat dilihat kode programnya yang dapat kita edit jika hasil algoritmanya kurang memuaskan. Selain itu Matlab dapat digunakan untuk membuat aplikasi yang dapat dijalankan oleh komputer lain yang tidak terinstal Matlab di dalamnya lewat mekanisme kompilasi menjadi executable program.

Here is an example of using GUI Matlab for getting data from excel and plotting it into graph. First open the GUI design, File – New – GUI. Choose the blank GUI and then with two push buttons and a single chart, make the simple GUI here:

After finishing GUI, save your GUI, so Matlab can generate the code with one m-file. You also can open the m-file editor by type: edit LATIHAN. I save my GUI’s name LATIHAN. We have two files for our application, LATIHAN.m and LATIHAN.fig that represent code and GUI respectively.

Beside edit the “String” on property editor, I suggest you to edit push button 1 and 2 with other name on “Tag” at property editor in order not to have difficult in searching function at m-file editor. Fill the script of function ambil_data and lihat_grafik with this sample code:

Of course you may your function left default option pushbutton1 and 2 . The function uigetfile was typed for calling the GUI for inserting the file. After catching the file (here denote with x), we continue to read that excel file with function xlsread. We have to use two other scripts handles.data and guidata(hObject,handles) because this variable (data) must send to other function (lihat_grafik function). Use your excel to create sample data (two field/column and some lines).

The second function was made for creating graph purpose. We use function plot with x-axis and y-ordinate. x=data(:,1) means creating the x variable contain data from colom 1 of data. If you run the program, you have to get the plot of the data.

This is the end of the introduction to Matlab for data mining session. Next week we’ll learn data mining algorithm : K-nearest Neighbourhood.

Iklan

44 thoughts on “Introduction: Data Mining with Matlab

  1. -Pak saya ingin menanyakan soal cara menampilkan result DSS
    -Data hasil pada matlab ditampilkan dalam bentuk string/primary key data dr sebuah table/grafik???
    -semua data berupa table sudah saya masukkan pd workspace di matla au ai hasil dr DSS yg tidak bias sya ambil pak

  2. Pak saya ingin bertanya,
    Bagaimana script load data .mat bila di implementasikan dalam GUI Matlab.

    Diatas kan bapak menjelaskan load data ber ekstensikan xlsx, apa tinggal di ganti ekstensinya dengan .mat saja???

    mohon jawabanya pak

  3. pak saya ingin bertanya,
    1. bagaimana script atau coding gui matlab untuk load data berekstensikan .mat??
    2. bagaimana script atau coding gui matlab untuk save data matlab pak??

    sebelumnya terimakasi dan mohon jawabanya pak

    • COBA DI COMMAND WINDOW DULU (kayaknya harus diketik):
      [x,y] = uigetfile(‘*.mat’, ‘Membuka data hasil rekaman tanda tangan’);

      KALO MAU SIMPAN HASIL KLIK DI MEMORY:
      set(handles.edit1,’String’,x);
      axes(handles.axes1);

      KALO MAU SIMPAN KE FILE:
      save nama_file.mat

  4. kalo ditest pada command window mau pak,
    namun kenapa jika ditaruh di GUI matlabnya tidak mau di proses??

    saya ingin hasil load data yang saya load itu bisa diproses langsung pak untuk mendapatkan bobot citra gambar.

  5. ini pak yang saya ingin save itu proses hasil pre processing citra dari suatu gambar tapi menggunakan tombol gui matlab pak,,

    itu bagai mana iia pak??
    mohon bantuannya pak.

    • panggil pembuka gui untuk mengisi nama file yang akan disimpan
      atau masukan save .mat ke fungsi tombol simpan saja. cuma namanya sudah pasti .mat

  6. itu maksudnya gimana pak??
    saya belum paham maksudnya panggil membuka gui??

    saya sudah coba coding save seperti yang bapak anjurkan, namun masih juga belum bisa pak??

  7. Sebelumnya saya mohon maaf iia pak kalo banyak nanya masalah ini pak,
    karna saya sedang membuat program untuk Tugas Akhir saya pak.

  8. pak kalo boleh tau bapak tinggal di daerah mana??
    soalnya saya ingin minta tolong di bantu dalam pembuatan aplikasi pengenalan wajah yang saat ini saya sedang kerjakan untuk tugas akhir.

    kira-kira bapak berkenan tidak??

  9. waduh,, jauh iia pak.
    habisnya saya bingung pak mau bimbingan sama siapa??
    sebab dosen” saya di kampus tidak ada yang bisa membimbing saya dalam pembuatan aplikasi yang ingin saya buat ini pak.

    terlebih masih jarang sekali yang bisa mengimlementasikan aplikasi dengan GUI matlab pak.

  10. pak saya ingin tanya lagi nih pak,
    ini pak data kemarin yang di load sudah bisa,
    namun saya ingin proses menggunakan datanya itu tidak bisa di proses.

    saya kan ingin memproses data yang di load tersebut pak initinya.

    mohon bantuannya pak.

    • kalo udah bisa load, coba utak-atik di command window. tiap load file mat hasil training berisi banyak variabel. gunakan handles.??? untuk mengakses salah satu variabelnya. pokoknya yang bisa dijalankan di command window pasti bisa jalan di gui.

  11. asssalamualaikum
    pak, saya mencoba skrip matlab untuk clustering.
    hasilnya centroid disini ditentukan secara random.
    nah bagaimana skrip matlab yang harus diketikkan agar dapat menentukan centroid secara manual, bukan random.

    ini skripnya:
    [idx,C,sumd,D] = kmeans(data, k)

    Terimakasih
    Wassalamualaikum wr wb
    Adi

    • centroid kan diperoleh dari proses menentukan jarak terdekat dari anggota klusternya. kalo centroid ditentukan terlebih dahulu ya boleh saja, tapi namanya bukan kmeans. langsung aja dipakai untuk pengambilan keputusan terhadap suatu data masuk kluster mana dengan cara menghitung jarak dengan beberapa centroid yang telah ditentukan terlebih dahulu itu.

  12. selamat siang
    saya mau tanya tentang pemograman matlab seputar pengolahan data modis
    saya sudah buat scriptnya tapi tidak bisa di run
    clc
    close all
    clear all
    Latitude=hdfread(‘D:\data KP\python\t1.14224.0221.mod35.hdf’,’/Latitude’,’Index’,{[1 1],[1 1],[1104 270]});
    Longitude=hdfread(‘D:\data KP\python\t1.14224.0221.mod35.hdf’,’/Longitude’,’Index’,{[1 1],[1 1],[1104 270]});
    Cloud_Mask=hdfread(‘D:\data KP\python\t1.14224.0221.mod35.hdf’,’/Cloud_Mask’,’Index’,{[1 1 1],[1 1 1],[6 5520 1354]});
    t1=(Cloud_Mask);
    t2=t1(6,1:5520,1:1354);

    tlev=t1(1:6,500,100);
    tlev=double(tlev);
    tlev=squeeze(tlev);
    tlev=(0.01*(tlev-(-0)))-273;
    t2=double(t2);
    t2=squeeze(t2);
    t2(t2==-32768)=NaN;
    t2=(0.01*(t2-(-0)))-273;
    t2(t231)=NaN;
    t2=fliplr(t2);
    Longitude(Longitude==-999)=NaN;
    Latitude(Latitude==-999)=NaN;
    longit=reshape(Longitude,[],1);
    latit=reshape(Latitude,[],1);
    tt2=reshape(t2,[],1);
    k=0;
    for g=1:length(tt2);
    if tt2(g,1)>6
    k=k+1;
    c1(k,1)=longit(g,1);
    c2(k,1)=latit(g,1);
    c3(k,1)=tt2(g,1);
    end
    end
    mian=[c1 c2 c3];
    load coast
    figure(1)
    h4=pcolor(Longitude,Latitude,t2);
    set(h4,’edgecolor’,’none’)
    hold on
    plot(long,lat,’k’)
    plot(lonindo,latindo,’k’)
    colorbar
    xlabel(‘Lon’,’fontweight’,’bold’)
    ylabel(‘Lat’,’fontweight’,’bold’)
    title(‘Cloud mask Lev.20′,’fontweight’,’bold’)
    grid on

    lev=[5 10 20 30 50 70 100 150 200 250 300 400 500 620 700 780 850 920 950 1000];
    %hPa
    lev=lev’;

    figure(2)
    plot(tlev,lev,’-o’);
    set(gca,’xlim’,[-80 40],’ylim’,[0 1000]);
    set(gca,’YDir’,’reverse’);
    xlabel(‘0C’);
    ylabel(‘hPa’);
    jk=[lev tlev];
    ini scriptnya dan muncul di commad windows
    Undefined function or variable ‘c1′.

    Error in cloud_mask (line 35)
    mian=[c1 c2 c3];
    mohon solusinya supaya bisa d run
    terima kasih

    • kalau diurut mundur, c1 dari longit, dari Longitude nah Longitude(Longitude==-999)=NaN maksudnya apa ya? kalau ga salah di situ mungkin ga ketarik dari hdfread

  13. ini sepertinya aneh: Longitude(Longitude==-999)=NaN
    Longitude itu fungsi kan? apakah sudah didefinisikan? Kalo tidak didefinisikan berarti variabel, tapi bentuknya kan biasanya koordinat matriks, misal jarak(1,2) berarti jarak di baris1 kolom 2

  14. Pak, saya ingin mengolah data *.mat di MATLAB
    saya sudah bisa load data tersebut sesuai dengan arahan bapak
    selanjutnya bagaimana cara untuk mengolah data tersebut

    terima kasih

    • kalo berhasil diload kan di workspace (biasanya di pojok kanan matlab) muncul tuh variabel-variabel yang diloadnya, misalnya hasil training jaringan syaraf tiruan, dll. variabel yg sudah diload tinggal dipakai untuk proses berikutnya.

    • coba ketik di command window>
      x=’data’
      y=3
      muncul ga di workspace? harus muncul lho, kalo nggak, matlabnya berarti error. simpan misalnya dengan nama bagus.mat
      save bagus
      coba hapus variabel yang ada di workspace,
      clear
      tampilkan lagi variabel dari data bagus.mat ketik:
      load bagus
      harus muncul lho variabel di workspace, atau untuk lihat di command window ketik:
      who

  15. mass boleh saya minta source code aplikasi data mining dgn matlab diatas? saya butuh bgt mas buat belajar buat aplikasi data mining…,, tolong lah mas…,,

  16. Asalamualaikum, pak saya mau tanya mengenai data import dari excel untuk 3 varicabel(nama, x, dan y) apakah bisa dibuat figure dari 3 variabel. soalnya saya mencoba indeksnya melebihi matrix dimensi.?

    • bisa saja, yg tidak bisa itu empat dimensi. tetapi biasanya dipotong jadi tiga dimensi dengan cara yg sama seperti memotong tiga dimensi menjadi dua dimensi. misalnya a,b,out kan 3d, jika ingin 2d berarti ada dua figure yaitu a,out dan b,out.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s