forked from tdwojak/Python2018
zad2domowe
This commit is contained in:
parent
ac3c32e920
commit
c25baf9469
72
labs06/zad2domowe
Normal file
72
labs06/zad2domowe
Normal file
@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
import pandas as pd
|
||||
from statistics import mode
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
def wczytaj_dane():
|
||||
data = pd.read_csv('mieszkania.csv')
|
||||
return data
|
||||
|
||||
def most_common_room_number(dane):
|
||||
return mode(dane.Rooms)
|
||||
|
||||
|
||||
def cheapest_flats(dane, n):
|
||||
sorted = dane.Expected.sort()
|
||||
return sorted.head(n)
|
||||
|
||||
def find_borough(desc):
|
||||
dzielnice = ['Stare Miasto',
|
||||
'Wilda',
|
||||
'Jezyce',
|
||||
'Rataje',
|
||||
'Piatkowo',
|
||||
'Winogrady',
|
||||
'Milostowo',
|
||||
'Debiec']
|
||||
for dzielnica in dzielnice:
|
||||
list = desc.split(' ')
|
||||
for element in list:
|
||||
if len(element) > 2 and element == dzielnica:
|
||||
return dzielnica
|
||||
break
|
||||
return "Inne"
|
||||
|
||||
|
||||
|
||||
def add_borough(dane):
|
||||
dane['Borough'] = dane['Location'].apply(find_borough)
|
||||
return dane
|
||||
|
||||
def write_plot(dane, filename):
|
||||
plotdata = pd.Series(dane.Location.value_counts())
|
||||
plotdata.plot(x='Location', y='Liczba ogloszen', kind='bar')
|
||||
plt.savefig(filename)
|
||||
|
||||
|
||||
def mean_price(dane, room_number):
|
||||
mean_price = dane.Expected[(dane['Rooms'] == room_number)]
|
||||
return mean_price.mean()
|
||||
|
||||
def find_13(dane):
|
||||
return dane.Location[(dane['Floor'] == 13)].unique()
|
||||
|
||||
def find_best_flats(dane):
|
||||
return dane[(dane['Location'] == 'Winogrady') & (dane['Rooms'] == 3) & (dane['Floor'] == 1)]
|
||||
|
||||
def main():
|
||||
dane = wczytaj_dane()
|
||||
print(dane[:5])
|
||||
|
||||
print("Najpopularniejsza liczba pokoi w mieszkaniu to: {}"
|
||||
.format(most_common_room_number(dane)))
|
||||
|
||||
print("{} to najadniejsza dzielnica w Poznaniu."
|
||||
.format(find_borough("Jeżyce i Wilda")))
|
||||
|
||||
print("Średnia cena mieszkania 3-pokojowego, to: {}"
|
||||
.format(mean_price(dane, 3)))
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
Loading…
Reference in New Issue
Block a user