Python - Veri İşleme
Veri tartışması, verileri analiz etmek veya başka bir veri setiyle kullanıma hazır hale getirmek amacıyla birleştirme, gruplama, birleştirme vb. Gibi çeşitli formatlarda işlemeyi içerir. Python, analitik hedefe ulaşmak için bu tartışma yöntemlerini çeşitli veri kümelerine uygulamak için yerleşik özelliklere sahiptir. Bu bölümde, bu yöntemleri açıklayan birkaç örneğe bakacağız.
Verileri Birleştirme
Python'daki Pandas kitaplığı tek bir işlev sağlar, merge, DataFrame nesneleri arasındaki tüm standart veritabanı birleştirme işlemleri için giriş noktası olarak -
pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None,
left_index=False, right_index=False, sort=True)
Şimdi iki farklı DataFrame oluşturalım ve üzerinde birleştirme işlemlerini gerçekleştirelim.
# import the pandas library
import pandas as pd
left = pd.DataFrame({
'id':[1,2,3,4,5],
'Name': ['Alex', 'Amy', 'Allen', 'Alice', 'Ayoung'],
'subject_id':['sub1','sub2','sub4','sub6','sub5']})
right = pd.DataFrame(
{'id':[1,2,3,4,5],
'Name': ['Billy', 'Brian', 'Bran', 'Bryce', 'Betty'],
'subject_id':['sub2','sub4','sub3','sub6','sub5']})
print left
print right
Onun output aşağıdaki gibidir -
Name id subject_id
0 Alex 1 sub1
1 Amy 2 sub2
2 Allen 3 sub4
3 Alice 4 sub6
4 Ayoung 5 sub5
Name id subject_id
0 Billy 1 sub2
1 Brian 2 sub4
2 Bran 3 sub3
3 Bryce 4 sub6
4 Betty 5 sub5
Verileri Gruplama
Veri setlerinin gruplanması, veri setinde bulunan çeşitli gruplar açısından sonuca ihtiyaç duyduğumuz veri analizinde sık bir ihtiyaçtır. Panadas, verileri çeşitli gruplara toplayabilen yerleşik yöntemlere sahiptir.
Aşağıdaki örnekte, verileri yıllara göre gruplandırıyoruz ve ardından belirli bir yıl için sonucu alıyoruz.
# import the pandas library
import pandas as pd
ipl_data = {'Team': ['Riders', 'Riders', 'Devils', 'Devils', 'Kings',
'kings', 'Kings', 'Kings', 'Riders', 'Royals', 'Royals', 'Riders'],
'Rank': [1, 2, 2, 3, 3,4 ,1 ,1,2 , 4,1,2],
'Year': [2014,2015,2014,2015,2014,2015,2016,2017,2016,2014,2015,2017],
'Points':[876,789,863,673,741,812,756,788,694,701,804,690]}
df = pd.DataFrame(ipl_data)
grouped = df.groupby('Year')
print grouped.get_group(2014)
Onun output aşağıdaki gibidir -
Points Rank Team Year
0 876 1 Riders 2014
2 863 2 Devils 2014
4 741 3 Kings 2014
9 701 4 Royals 2014
Verileri Birleştirme
Pandalar, kolayca bir araya gelmek için çeşitli olanaklar sağlar Series, DataFrame, ve Panelnesneler. Aşağıdaki örnekteconcatişlevi, bir eksen boyunca birleştirme işlemleri gerçekleştirir. Farklı nesneler yaratalım ve birleştirme yapalım.
import pandas as pd
one = pd.DataFrame({
'Name': ['Alex', 'Amy', 'Allen', 'Alice', 'Ayoung'],
'subject_id':['sub1','sub2','sub4','sub6','sub5'],
'Marks_scored':[98,90,87,69,78]},
index=[1,2,3,4,5])
two = pd.DataFrame({
'Name': ['Billy', 'Brian', 'Bran', 'Bryce', 'Betty'],
'subject_id':['sub2','sub4','sub3','sub6','sub5'],
'Marks_scored':[89,80,79,97,88]},
index=[1,2,3,4,5])
print pd.concat([one,two])
Onun output aşağıdaki gibidir -
Marks_scored Name subject_id
1 98 Alex sub1
2 90 Amy sub2
3 87 Allen sub4
4 69 Alice sub6
5 78 Ayoung sub5
1 89 Billy sub2
2 80 Brian sub4
3 79 Bran sub3
4 97 Bryce sub6
5 88 Betty sub5