Python Pandas - Seriler
Seri, her türden veriyi (tamsayı, dize, kayan nokta, python nesneleri vb.) Tutabilen tek boyutlu etiketlenmiş bir dizidir. Eksen etiketleri topluca indeks olarak adlandırılır.
pandalar serisi
Aşağıdaki kurucu kullanılarak bir Pandalar Serisi oluşturulabilir -
pandas.Series( data, index, dtype, copy)
Yapıcının parametreleri aşağıdaki gibidir -
Sr.No | Parametre ve Açıklama |
---|---|
1 |
data veriler ndarray, liste, sabitler gibi çeşitli biçimler alır |
2 |
index Dizin değerleri benzersiz ve hashable olmalıdır, verilerle aynı uzunlukta olmalıdır. Varsayılannp.arrange(n) hiçbir dizin geçilmezse. |
3 |
dtype dtype, veri türü içindir. Yok ise, veri türü çıkarılacaktır |
4 |
copy Verileri kopyalayın. Varsayılan Yanlış |
Aşağıdaki gibi çeşitli girdiler kullanılarak bir dizi oluşturulabilir:
- Array
- Dict
- Skaler değer veya sabit
Boş Seri Oluşturun
Oluşturulabilecek temel bir seri, Boş Seridir.
Misal
#import the pandas library and aliasing as pd
import pandas as pd
s = pd.Series()
print s
Onun output aşağıdaki gibidir -
Series([], dtype: float64)
Ndarray'den bir Seri oluşturun
Veri bir ndarray ise, aktarılan dizin aynı uzunlukta olmalıdır. Hiçbir dizin geçilmezse, varsayılan olarak dizinrange(n) nerede n dizi uzunluğudur, yani [0,1,2,3…. range(len(array))-1].
örnek 1
#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = np.array(['a','b','c','d'])
s = pd.Series(data)
print s
Onun output aşağıdaki gibidir -
0 a
1 b
2 c
3 d
dtype: object
Herhangi bir dizini geçmedik, bu nedenle varsayılan olarak 0 ile len(data)-1yani 0 ila 3.
Örnek 2
#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = np.array(['a','b','c','d'])
s = pd.Series(data,index=[100,101,102,103])
print s
Onun output aşağıdaki gibidir -
100 a
101 b
102 c
103 d
dtype: object
İndeks değerlerini buraya ilettik. Artık çıktıda özelleştirilmiş indekslenmiş değerleri görebiliriz.
Dikteden bir dizi oluşturun
Bir dictgirdi olarak geçirilebilir ve herhangi bir dizin belirtilmezse, dizin oluşturmak için sözlük anahtarları sıralı bir sırada alınır. Eğerindex geçildiğinde, dizindeki etiketlere karşılık gelen verilerdeki değerler çıkarılır.
örnek 1
#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = {'a' : 0., 'b' : 1., 'c' : 2.}
s = pd.Series(data)
print s
Onun output aşağıdaki gibidir -
a 0.0
b 1.0
c 2.0
dtype: float64
Observe - Dizin oluşturmak için sözlük tuşları kullanılır.
Örnek 2
#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
data = {'a' : 0., 'b' : 1., 'c' : 2.}
s = pd.Series(data,index=['b','c','d','a'])
print s
Onun output aşağıdaki gibidir -
b 1.0
c 2.0
d NaN
a 0.0
dtype: float64
Observe - Dizin sırası korunur ve eksik eleman NaN (Sayı Değil) ile doldurulur.
Skalerden Seri Oluşturun
Veri skaler bir değer ise, bir indeks sağlanmalıdır. Değer, uzunluğuyla eşleşecek şekilde tekrarlanacaktır.index
#import the pandas library and aliasing as pd
import pandas as pd
import numpy as np
s = pd.Series(5, index=[0, 1, 2, 3])
print s
Onun output aşağıdaki gibidir -
0 5
1 5
2 5
3 5
dtype: int64
Pozisyonlu Serilerden Verilere Erişim
Serideki verilere, bir ndarray.
örnek 1
İlk öğeyi geri alın. Bilindiği gibi, birinci eleman sıfır vasıtasında depolanır dizisi için sıfırdan başlar sayma inci pozisyon ve böylece.
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
#retrieve the first element
print s[0]
Onun output aşağıdaki gibidir -
1
Örnek 2
Serideki ilk üç öğeyi alın. Önüne bir: girilirse, o dizinden sonraki tüm öğeler çıkarılacaktır. İki parametre (aralarında: aralarında) kullanılıyorsa, iki dizin arasındaki öğeler (durdurma dizini hariç)
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
#retrieve the first three element
print s[:3]
Onun output aşağıdaki gibidir -
a 1
b 2
c 3
dtype: int64
Örnek 3
Son üç öğeyi geri alın.
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
#retrieve the last three element
print s[-3:]
Onun output aşağıdaki gibidir -
c 3
d 4
e 5
dtype: int64
Etiketi Kullanarak Verileri Alın (Dizin)
Seri, sabit boyuta benzer dict indeks etiketine göre değerleri alabilir ve ayarlayabilirsiniz.
örnek 1
Dizin etiketi değerini kullanarak tek bir öğeyi alın.
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
#retrieve a single element
print s['a']
Onun output aşağıdaki gibidir -
1
Örnek 2
Bir dizin etiketi değerleri listesi kullanarak birden çok öğeyi alın.
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
#retrieve multiple elements
print s[['a','c','d']]
Onun output aşağıdaki gibidir -
a 1
c 3
d 4
dtype: int64
Örnek 3
Bir etiket yoksa, bir istisna ortaya çıkar.
import pandas as pd
s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
#retrieve multiple elements
print s['f']
Onun output aşağıdaki gibidir -
…
KeyError: 'f'