#!/usr/bin/env python3 import pandas as pd import kaggle #kaggle datasets download -d brezniczky/2019-european-parliament-election-in-poland-data #Rozpakowanie danych #unzip -o 2019-european-parliament-election-in-poland-data.zip #Testowe wczytanie pojedynczego arkusza z danymi (1 z 13) import pandas as pd data_district_1=pd.read_csv('2019-european-parliament-election-in-poland-data\wyniki_gl_na_kand_po_obwodach_sheet_1.csv') #Wczytanie i obróbka całości danych big_dataset = pd.DataFrame() #Trzeba wczytać każdy z 13 arkuszy z danymi dla poszczególnych okręgów wyborczych for i in range(1,14): filename = '2019-european-parliament-election-in-poland-data\wyniki_gl_na_kand_po_obwodach_sheet_'+str(i)+'.csv' data_district = pd.read_csv(filename) data_district['obwod'] = i df = data_district.copy() cols_to_remove = [] for c in range(35,len(df.columns)): cols_to_remove.append(c) #Wycięcie nadmiarowych danych - szczegółowych informacji o głosach na poszczególnych kandydatów w poszczególnych komisjach df.drop(df.columns[cols_to_remove],axis=1,inplace=True) #Uwzględnienie w danych zbiorczych wyników komitetów wyborczych w poszczególnych komisjach df['Konfederacja'] = data_district['Lista nr 1 - KWW KONFEDERACJA KORWIN BRAUN LIROY NARODOWCY'] df['Wiosna'] = data_district['Lista nr 2 - KW WIOSNA ROBERTA BIEDRONIA'] df['Koalicja Europejska'] = data_district['Lista nr 3 - KKW KOALICJA EUROPEJSKA PO PSL SLD .N ZIELONI'] df['Prawo i Sprawiedliwość'] = data_district['Lista nr 4 - KW PRAWO I SPRAWIEDLIWOŚĆ'] df['Lewica Razem'] = data_district['Lista nr 5 - KKW LEWICA RAZEM - RAZEM, UNIA PRACY, RSS'] df['Kukiz15'] = data_district['Lista nr 6 - KWW KUKIZ\'15'] #Poniżej trzy komitety, które były zarejestrowane tylko w niektórych okręgach wyborczych if 'Lista nr 7 - KWW POLSKA FAIR PLAY BEZPARTYJNI GWIAZDOWSKI' in data_district.columns: df['Polska Fair Play'] = data_district['Lista nr 7 - KWW POLSKA FAIR PLAY BEZPARTYJNI GWIAZDOWSKI'] else: df['Polska Fair Play'] = 0 if 'Lista nr 9 - KKW POLEXIT - KOALICJA' in data_district.columns: df['POLEXIT'] = data_district['Lista nr 9 - KKW POLEXIT - KOALICJA'] else: df['POLEXIT'] = 0 if 'Lista nr 10 - KW JEDNOŚĆ NARODU' in data_district.columns: df['Jedność Narodu'] = data_district['Lista nr 10 - KW JEDNOŚĆ NARODU'] else: df['Jedność Narodu'] = 0 #Dodanie kolumny przechowującej informację o tym, w którym okręgu znajduje się dana komisja df['obwod'] = i #Doklejenie wczytanych dla okręgu i obrobionych danych do głównego zbioru big_dataset = pd.concat([big_dataset,df]) big_dataset.describe(include='all') import sklearn #Wyodrębnienie z danych zbioru testowego from sklearn.model_selection import train_test_split data_train, data_test = sklearn.model_selection.train_test_split(big_dataset, test_size=2700, random_state=1) data_train['obwod'].value_counts() #Wyodrębnienie zbioru walidacyjnego z pozostałego zbioru treningowego data_train, data_val = sklearn.model_selection.train_test_split(data_train, test_size=2700, random_state=1) data_val['obwod'].value_counts()