Python Pandas - Alat IO
Itu Pandas I/O API adalah sekumpulan fungsi pembaca tingkat atas yang diakses seperti pd.read_csv() yang biasanya mengembalikan objek Pandas.
Dua fungsi pekerja keras untuk membaca file teks (atau file datar) adalah read_csv() dan read_table(). Keduanya menggunakan kode parsing yang sama untuk secara cerdas mengubah data tabular menjadi fileDataFrame objek -
pandas.read_csv(filepath_or_buffer, sep=',', delimiter=None, header='infer',
names=None, index_col=None, usecols=None
pandas.read_csv(filepath_or_buffer, sep='\t', delimiter=None, header='infer',
names=None, index_col=None, usecols=None
Begini caranya csv data file terlihat seperti -
S.No,Name,Age,City,Salary
1,Tom,28,Toronto,20000
2,Lee,32,HongKong,3000
3,Steven,43,Bay Area,8300
4,Ram,38,Hyderabad,3900
Simpan data ini sebagai temp.csv dan melakukan operasi di atasnya.
S.No,Name,Age,City,Salary
1,Tom,28,Toronto,20000
2,Lee,32,HongKong,3000
3,Steven,43,Bay Area,8300
4,Ram,38,Hyderabad,3900
Simpan data ini sebagai temp.csv dan melakukan operasi di atasnya.
read.csv
read.csv membaca data dari file csv dan membuat objek DataFrame.
import pandas as pd
df=pd.read_csv("temp.csv")
print df
Nya output adalah sebagai berikut -
S.No Name Age City Salary
0 1 Tom 28 Toronto 20000
1 2 Lee 32 HongKong 3000
2 3 Steven 43 Bay Area 8300
3 4 Ram 38 Hyderabad 3900
indeks khusus
Ini menentukan kolom di file csv untuk menyesuaikan indeks menggunakan index_col.
import pandas as pd
df=pd.read_csv("temp.csv",index_col=['S.No'])
print df
Nya output adalah sebagai berikut -
S.No Name Age City Salary
1 Tom 28 Toronto 20000
2 Lee 32 HongKong 3000
3 Steven 43 Bay Area 8300
4 Ram 38 Hyderabad 3900
Pengonversi
dtype kolom dapat dilewatkan sebagai dikt.
import pandas as pd
df = pd.read_csv("temp.csv", dtype={'Salary': np.float64})
print df.dtypes
Nya output adalah sebagai berikut -
S.No int64
Name object
Age int64
City object
Salary float64
dtype: object
Secara default, file dtype dari kolom Gaji adalah int, tetapi hasilnya menunjukkan sebagai float karena kami telah secara eksplisit memasukkan tipe tersebut.
Jadi, datanya terlihat seperti float -
S.No Name Age City Salary
0 1 Tom 28 Toronto 20000.0
1 2 Lee 32 HongKong 3000.0
2 3 Steven 43 Bay Area 8300.0
3 4 Ram 38 Hyderabad 3900.0
header_names
Tentukan nama header menggunakan argumen nama.
import pandas as pd
df=pd.read_csv("temp.csv", names=['a', 'b', 'c','d','e'])
print df
Nya output adalah sebagai berikut -
a b c d e
0 S.No Name Age City Salary
1 1 Tom 28 Toronto 20000
2 2 Lee 32 HongKong 3000
3 3 Steven 43 Bay Area 8300
4 4 Ram 38 Hyderabad 3900
Perhatikan, nama header ditambahkan dengan nama kustom, tetapi header dalam file belum dihilangkan. Sekarang, kami menggunakan argumen header untuk menghapusnya.
Jika header berada di baris selain yang pertama, teruskan nomor baris ke header. Ini akan melewati baris sebelumnya.
import pandas as pd
df=pd.read_csv("temp.csv",names=['a','b','c','d','e'],header=0)
print df
Nya output adalah sebagai berikut -
a b c d e
0 S.No Name Age City Salary
1 1 Tom 28 Toronto 20000
2 2 Lee 32 HongKong 3000
3 3 Steven 43 Bay Area 8300
4 4 Ram 38 Hyderabad 3900
orang melompat
skiprows melewatkan jumlah baris yang ditentukan.
import pandas as pd
df=pd.read_csv("temp.csv", skiprows=2)
print df
Nya output adalah sebagai berikut -
2 Lee 32 HongKong 3000
0 3 Steven 43 Bay Area 8300
1 4 Ram 38 Hyderabad 3900