Anggaplah kali ini kita ingin membuat data set sebanyak 100 data nama dan jumlah bayi yang lahir pada tahun 1992. Seandainya kita membuat data set secara manual tentunya akan sangat lama dan sulit dan NumPy adalah solusi untuk menyederhanakan masalah itu. Berikut adalah cara Generate Data Set dengan NumPy.
import library pandas dan NumPy beserta fungsi yang akan digunakan
In [1]: from pandas import DataFrame In [2]: import pandas as pd In [3]: from numpy import random
Awalnya kita akan membuat 5 nama bayi dan jumlahnya seperti pada Export DataFrame ke Format CSV selanjutnya kita generate data set sehingga terduplikat menjadi 100 nama.
In [4]: nama = ['faqih','dana','iin','andi','wati'] In [5]: random_nama = [nama[random.randint(low=0,high=len(nama))] for i in range (100)]
Ketika kita ketik random_nama maka akan muncul 100 nama. untuk melihat 10 record pertama cobalah tulis
In [6]: random_nama[:10] Out[6]: ['andi', 'faqih', 'dana', 'iin', 'iin', 'iin', 'wati', 'wati', 'andi', 'faqih']
Untuk jumlah bayi kita juga akan melakukan generate 100 data dengan angka tertinggi 1000
In [7]: lahir = [random.randint(low=0,high=1000) for i in range(100)] In [8]: lahir[:10] Out[8]: [83, 387, 172, 38, 248, 333, 487, 558, 865, 273]
Menggabungkan list nama dan lahir dengan fungsi zip dan menampilkan 10 baris
In [9]: BayiDataSet = list(zip(random_nama,lahir))
In [10]: BayiDataSet[:10]
Out[10]:
[('andi', 83),
('faqih', 387),
('dana', 172),
('iin', 38),
('iin', 248),
('iin', 333),
('wati', 487),
('wati', 558),
('andi', 865),
('faqih', 273)]
Simpan dalam bentuk DataFrame
In [11]: frame = pd.DataFrame(data = BayiDataSet, columns=['random_nama','lahir']) In [12]: frame[:10] Out[12]: random_nama lahir 0 andi 83 1 faqih 387 2 dana 172 3 iin 38 4 iin 248 5 iin 333 6 wati 487 7 wati 558 8 andi 865 9 faqih 273
Simpan dalam bentuk CSV
In [13]: frame.to_csv('lahir1992.csv')


Tidak ada komentar:
Posting Komentar