From 689e3bc8eeb240388cb2358504d3aaff3049590a Mon Sep 17 00:00:00 2001 From: s45162 Date: Sat, 20 Jan 2018 15:40:45 +0100 Subject: [PATCH] Homework#6 --- labs06/barPlot.png | Bin 0 -> 16088 bytes labs06/task02.py | 39 ++++++++++++++++++++++++--------------- 2 files changed, 24 insertions(+), 15 deletions(-) create mode 100644 labs06/barPlot.png diff --git a/labs06/barPlot.png b/labs06/barPlot.png new file mode 100644 index 0000000000000000000000000000000000000000..f7476021c9cf9753020d59d6e1c41716e9b0ac3f GIT binary patch literal 16088 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 H*+2dtrh#Pa literal 0 HcmV?d00001 diff --git a/labs06/task02.py b/labs06/task02.py index 9d96016..3e205b8 100755 --- a/labs06/task02.py +++ b/labs06/task02.py @@ -1,14 +1,18 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- - +import pandas as pd def wczytaj_dane(): - pass + mieszkania = pd.read_csv('mieszkania.csv', # ścieżka do pliku + sep=',', # separator + encoding='UTF-8', + usecols=[0,1,2,3,4,5,6]) + return mieszkania def most_common_room_number(dane): - pass + return dane.mode(numeric_only =True)["Rooms"][0] def cheapest_flats(dane, n): - pass + return dane.sort_values("Expected")[:n] def find_borough(desc): dzielnice = ['Stare Miasto', @@ -19,36 +23,41 @@ def find_borough(desc): 'Winogrady', 'Miłostowo', 'Dębiec'] - pass + inputList=desc.split(' ') + for i in inputList: + if i in dzielnice: + return i + break + return "Inne" def add_borough(dane): - pass + newcol=dane["Location"].apply(find_borough) + dane["Borough"]=newcol + return dane def write_plot(dane, filename): - pass + bar=dane["Borough"].value_counts().plot(kind="bar", figsize=(6,6)) + fig=bar.get_figure() + fig.savefig(filename) def mean_price(dane, room_number): - pass + return dane[dane["Rooms"]==room_number]["Expected"].mean() def find_13(dane): - pass + return dane[dane["Floor"]==13]["Borough"].unique() def find_best_flats(dane): - pass + return dane[(dane["Borough"]=="Winogrady") & (dane["Floor"]==1) & (dane["Rooms"]==3)] def main(): dane = wczytaj_dane() print(dane[:5]) - print("Najpopularniejsza liczba pokoi w mieszkaniu to: {}" .format(most_common_room_number(dane))) - print("{} to najłądniejsza dzielnica w Poznaniu." - .format(find_borough("Grunwald i Jeżyce")))) - + .format(find_borough("Grunwald i Jeżyce"))) print("Średnia cena mieszkania 3-pokojowego, to: {}" .format(mean_price(dane, 3))) - if __name__ == "__main__": main()