Python Pandas - IO Araçları
Pandas I/O API gibi erişilen bir üst düzey okuyucu işlevleri kümesidir. pd.read_csv() genellikle bir Pandas nesnesi döndürür.
Metin dosyalarını (veya düz dosyaları) okumak için iki iş gücü işlevi read_csv() ve read_table(). Her ikisi de tablo verilerini akıllıca birDataFrame nesne -
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
İşte nasıl csv dosya verileri şöyle görünür -
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
Bu verileri farklı kaydedin temp.csv ve üzerinde işlem yapmak.
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
Bu verileri farklı kaydedin temp.csv ve üzerinde işlem yapmak.
read.csv
read.csv csv dosyalarındaki verileri okur ve bir DataFrame nesnesi oluşturur.
import pandas as pd
df=pd.read_csv("temp.csv")
print df
Onun output aşağıdaki gibidir -
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
özel dizin
Bu, csv dosyasında dizini özelleştirmek için bir sütun belirtir. index_col.
import pandas as pd
df=pd.read_csv("temp.csv",index_col=['S.No'])
print df
Onun output aşağıdaki gibidir -
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
Dönüştürücüler
dtype sütunların sayısı bir dikt olarak aktarılabilir.
import pandas as pd
df = pd.read_csv("temp.csv", dtype={'Salary': np.float64})
print df.dtypes
Onun output aşağıdaki gibidir -
S.No int64
Name object
Age int64
City object
Salary float64
dtype: object
Varsayılan olarak, dtype Maaş sütununun int, ancak sonuç bunu gösteriyor float çünkü türü açıkça belirledik.
Böylece, veriler float gibi görünür -
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
Names argümanını kullanarak başlığın adlarını belirtin.
import pandas as pd
df=pd.read_csv("temp.csv", names=['a', 'b', 'c','d','e'])
print df
Onun output aşağıdaki gibidir -
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
Dikkat edin, başlık adlarına özel adlar eklenir, ancak dosyadaki başlık kaldırılmamıştır. Şimdi, bunu kaldırmak için başlık argümanını kullanıyoruz.
Başlık birinciden farklı bir satırdaysa, satır numarasını başlığa iletin. Bu, önceki satırları atlayacaktır.
import pandas as pd
df=pd.read_csv("temp.csv",names=['a','b','c','d','e'],header=0)
print df
Onun output aşağıdaki gibidir -
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
satır atlamak
skiprows, belirtilen satır sayısını atlar.
import pandas as pd
df=pd.read_csv("temp.csv", skiprows=2)
print df
Onun output aşağıdaki gibidir -
2 Lee 32 HongKong 3000
0 3 Steven 43 Bay Area 8300
1 4 Ram 38 Hyderabad 3900