Masih menggunakan data dari modul sebelumnya. Kita akan ulangi proses import dan load data dari awal.
import pandas as pd
df = pd.read_csv("jamesbond.csv")
Perbedaan iloc adalah mengakses row berdasarkan index position. Jadi index berupa angka.
Cara-cara yang dapat dilakukan pada loc, dapat dilakukan pada iloc. Berikut contoh penggunaan iloc.
df.iloc[4]
Film Casino Royale
Year 1967
Actor David Niven
Director Ken Hughes
Box Office 315
Budget 85
Bond Actor Salary NaN
Name: 4, dtype: object
Sama seperti pada method loc, jika single row, akan dikembalikan berupa series.
df.iloc[[4, 7]]
Jika lebih dari 1 row, maka akan dikembalikan berupa dataframe.
Pada iloc juga kita bisa melakukan slicing.
df.iloc[4 : 7]
Perhatian, pada iloc, index terakhir (dalam hal ini index ke 7), tidak disertakan. Sementara untuk loc, jika menggunakan label indexing, index terakhir disertakan.
Berikut cara slicing yang valid.
#mengembalikan row dari index ke 4 sampai akhir dataframe. df.iloc[4 :] #mengembalikan row dari awal dataframe sampai index ke 4. df.iloc[: 4]
Jika Anda memilki dataframe yang menggunakan Label sebagai index, perintah iloc tetap dapat digunakan.
Contoh, kita akan load kembali data jamesbond.csv dengan index menggunakan kolom film.
df = pd.read_csv("jamesbond.csv", index_col="Film")
df.sort_index(inplace=True)
df.iloc[:3]
Parameter kedua dari iloc adalah parameter untuk mengakses kolom. Contoh kita ingin mengakses film index ke 0 dengan kolom index 0, 1 dan 2.
df.iloc[0, [0, 1, 2]]
Year 1985
Actor Roger Moore
Director John Glen
Name: A View to a Kill, dtype: object
Untuk parameter row, kita bisa melakukan slicing, sementara untuk parameter kolom tidak bisa.
#ERROR df.iloc[0, [0:2]] #VALID, akan mengembalikan 2 row, dengan 3 kolom (Year, Actor dan Director). df.iloc[0:2, [0, 1, 2]]