diff --git a/labs06/task02.py b/labs06/task02.py index 9d96016..4846bca 100644 --- a/labs06/task02.py +++ b/labs06/task02.py @@ -1,14 +1,34 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- +""" +** zad. 2 (domowe) ** +Jest to zadanie złożone, składające się z kilku części. Całość będzie opierać się o dane zawarte w pliku *mieszkania.csv* i dotyczą cen mieszkań w Poznaniu kilka lat temu. + 1. Napisz funkcje ``find_borough(desc)``, która przyjmuje 1 argument typu *string* i zwróci jedną z dzielnic zdefiniowaną w liście ``dzielnice``. Funkcja ma zwrócić pierwszą (wzgledem kolejności) nazwę dzielnicy, która jest zawarta w ``desc``. Jeżeli żadna nazwa nie została odnaleziona, zwróć *Inne*. + 1. Dodaj kolumnę ``Borough``, która będzie zawierać informacje o dzielnicach i powstanie z kolumny ``Localization``. Wykorzystaj do tego funkcję ``find_borough``. + 1. Uzupełnił funkcje ``write_plot``, która zapisze do pliku ``filename`` wykres słupkowy przedstawiający liczbę ogłoszeń mieszkań z podziałem na dzielnice. + 1. Napisz funkcje ``mean_price``, która zwróci średnią cenę mieszkania ``room_numer``-pokojowego. + 1. Uzupełnij funkcje ``find_13``, która zwróci listę dzielnic, które zawierają ofertę mieszkanie na 13 piętrze. + 1. Napisz funkcje ``find_best_flats``, która zwróci wszystkie ogłoszenia mieszkań, które znajdują się na Winogradach, mają 3 pokoje i są położone na 1 piętrze. + 1. *(dodatkowe)*: Korzystając z pakietu *sklearn* zbuduj model regresji liniowej, która będzie wyznaczać cenę mieszkania na podstawie wielkości mieszkania i liczby pokoi. +""" +import csv +import pandas as pd +import statistics + def wczytaj_dane(): - pass + raw_data = pd.read_csv('mieszkania.csv',sep=',') + data = pd.DataFrame(raw_data) + return data def most_common_room_number(dane): - pass + rooms=dane['Rooms'] + return(int(statistics.mode(rooms))) def cheapest_flats(dane, n): - pass + cheapest=pd.DataFrame(dane['Expected']) + cheapest.sort=cheapest.sort_values(by=['Expected']) + return cheapest.sort[:n] def find_borough(desc): dzielnice = ['Stare Miasto', @@ -37,6 +57,7 @@ def find_13(dane): def find_best_flats(dane): pass + def main(): dane = wczytaj_dane() print(dane[:5]) @@ -44,11 +65,14 @@ def main(): 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")))) + #print("{} to najłądniejsza dzielnica w Poznaniu." + # .format(find_borough("Grunwald i Jeżyce")))) + + #print("Średnia cena mieszkania 3-pokojowego, to: {}" + # .format(mean_price(dane, 3))) + + - print("Średnia cena mieszkania 3-pokojowego, to: {}" - .format(mean_price(dane, 3))) if __name__ == "__main__": main()