forked from tdwojak/Python2018
Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
a9867f7588 | |||
3cad5c014a | |||
57058a0112 | |||
4628385887 | |||
b7c0ed29b4 | |||
884d9ab808 | |||
09af71f29d | |||
2cadffe872 |
@ -9,54 +9,48 @@ Zadania wprowadzające do pierwszych ćwiczeń.
|
|||||||
"""
|
"""
|
||||||
Wypisz na ekran swoje imię i nazwisko.
|
Wypisz na ekran swoje imię i nazwisko.
|
||||||
"""
|
"""
|
||||||
print("Sylwia Miśkiewicz")
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Oblicz i wypisz na ekran pole koła o promienie 10. Jako PI przyjmij 3.14.
|
Oblicz i wypisz na ekran pole koła o promienie 10. Jako PI przyjmij 3.14.
|
||||||
"""
|
"""
|
||||||
pole= 3.14 * (10**2)
|
|
||||||
print (pole)
|
|
||||||
"""
|
"""
|
||||||
Stwórz zmienną pole_kwadratu i przypisz do liczbę: pole kwadratu o boku 3.
|
Stwórz zmienną pole_kwadratu i przypisz do liczbę: pole kwadratu o boku 3.
|
||||||
"""
|
"""
|
||||||
pole_kwadratu= 3*3
|
|
||||||
"""
|
"""
|
||||||
Stwórz 3 elementową listę, która zawiera nazwy 3 Twoich ulubionych owoców.
|
Stwórz 3 elementową listę, która zawiera nazwy 3 Twoich ulubionych owoców.
|
||||||
Wynik przypisz do zmiennej `owoce`.
|
Wynik przypisz do zmiennej `owoce`.
|
||||||
"""
|
"""
|
||||||
owoce=['banan','borówka','czereśnia']
|
|
||||||
"""
|
"""
|
||||||
Dodaj do powyższej listy jako nowy element "pomidor".
|
Dodaj do powyższej listy jako nowy element "pomidor".
|
||||||
"""
|
"""
|
||||||
owoce.append('pomidor')
|
|
||||||
"""
|
"""
|
||||||
Usuń z powyższej listy drugi element.
|
Usuń z powyższej listy drugi element.
|
||||||
"""
|
"""
|
||||||
owoce.pop(1)
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Rozszerz listę o tablice ['Jabłko', "Gruszka"].
|
Rozszerz listę o tablice ['Jabłko', "Gruszka"].
|
||||||
"""
|
"""
|
||||||
owoce.extend(['Jabłko',"Gruszka"])
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Wyświetl listę owoce, ale bez pierwszego i ostatniego elementu.
|
Wyświetl listę owoce, ale bez pierwszego i ostatniego elementu.
|
||||||
"""
|
"""
|
||||||
print(owoce[0:-2])
|
|
||||||
"""
|
"""
|
||||||
Wyświetl co trzeci element z listy owoce.
|
Wyświetl co trzeci element z listy owoce.
|
||||||
"""
|
"""
|
||||||
print(owoce[::3])
|
|
||||||
"""
|
"""
|
||||||
Stwórz pusty słownik i przypisz go do zmiennej magazyn.
|
Stwórz pusty słownik i przypisz go do zmiennej magazyn.
|
||||||
"""
|
"""
|
||||||
magazyn={}
|
|
||||||
"""
|
"""
|
||||||
Dodaj do słownika magazyn owoce z listy owoce, tak, aby owoce były kluczami,
|
Dodaj do słownika magazyn owoce z listy owoce, tak, aby owoce były kluczami,
|
||||||
zaś wartościami były równe 5.
|
zaś wartościami były równe 5.
|
||||||
"""
|
"""
|
||||||
for key in owoce:
|
|
||||||
magazyn[key]=[5]
|
|
||||||
|
|
||||||
print(magazyn)
|
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ która zawiera tylko elementy z list o parzystych indeksach.
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
def even_elements(lista):
|
def even_elements(lista):
|
||||||
return lista [::2]
|
pass
|
||||||
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
|
@ -6,16 +6,7 @@
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
def days_in_year(days):
|
def days_in_year(days):
|
||||||
days_in_year=0
|
pass
|
||||||
if days % 4 == 0 and days % 100 != 0 or days % 400 == 0:
|
|
||||||
days_in_year = 366
|
|
||||||
|
|
||||||
else:
|
|
||||||
|
|
||||||
days_in_year = 365
|
|
||||||
|
|
||||||
return days_in_year
|
|
||||||
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
inputs = [[2015], [2012], [1900], [2400], [1977]]
|
inputs = [[2015], [2012], [1900], [2400], [1977]]
|
||||||
|
@ -13,10 +13,7 @@ jak 'set', która przechowuje elementy bez powtórzeń.)
|
|||||||
|
|
||||||
|
|
||||||
def oov(text, vocab):
|
def oov(text, vocab):
|
||||||
test = text.split(' ')
|
pass
|
||||||
words = set()
|
|
||||||
words = {word for word in test if word not in vocab}
|
|
||||||
return words
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,10 +7,7 @@ Jeśli podany argument jest mniejszy od 1 powinna być zwracana wartość 0.
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
def sum_from_one_to_n(n):
|
def sum_from_one_to_n(n):
|
||||||
if n < 1:
|
pass
|
||||||
return 0
|
|
||||||
else:
|
|
||||||
return sum(i for i in range(1, n+1))
|
|
||||||
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
|
@ -8,9 +8,9 @@ dwoma punktami przestrzeni trójwymiarowej. Punkty są dane jako
|
|||||||
trzyelementowe listy liczb zmiennoprzecinkowych.
|
trzyelementowe listy liczb zmiennoprzecinkowych.
|
||||||
np. odległość pomiędzy punktami (0, 0, 0) i (3, 4, 0) jest równa 5.
|
np. odległość pomiędzy punktami (0, 0, 0) i (3, 4, 0) jest równa 5.
|
||||||
"""
|
"""
|
||||||
import math as m
|
|
||||||
def euclidean_distance(x, y):
|
def euclidean_distance(x, y):
|
||||||
return m.sqrt(sum((i-j)**2 for i,j in zip(x,y)))
|
pass
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
inputs = [[(2.3, 4.3, -7.5), (2.3, 8.5, -7.5)]]
|
inputs = [[(2.3, 4.3, -7.5), (2.3, 8.5, -7.5)]]
|
||||||
|
@ -10,11 +10,7 @@ ma być zwracany napis "It's not a Big 'No!'".
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
def big_no(n):
|
def big_no(n):
|
||||||
if n < 5:
|
pass
|
||||||
return "It's not a Big 'No!'"
|
|
||||||
else:
|
|
||||||
big_no= "N" + "O" * n + "!"
|
|
||||||
return big_no
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
inputs = [[5], [6], [2]]
|
inputs = [[5], [6], [2]]
|
||||||
|
@ -6,9 +6,7 @@ Napisz funkcję char_sum, która dla zadanego łańcucha zwraca
|
|||||||
sumę kodów ASCII znaków.
|
sumę kodów ASCII znaków.
|
||||||
"""
|
"""
|
||||||
def char_sum(text):
|
def char_sum(text):
|
||||||
z = list(text)
|
pass
|
||||||
lista = [ord(x) for x in z]
|
|
||||||
return sum(lista)
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
inputs = [["this is a string"], ["this is another string"]]
|
inputs = [["this is a string"], ["this is another string"]]
|
||||||
|
@ -6,17 +6,8 @@ Napisz funkcję sum_div35(n), która zwraca sumę wszystkich liczb podzielnych
|
|||||||
przez 3 lub 5 mniejszych niż n.
|
przez 3 lub 5 mniejszych niż n.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def sum_div35(n) :
|
def sum_div35(n):
|
||||||
|
pass
|
||||||
suma = 0
|
|
||||||
|
|
||||||
for i in range(n) :
|
|
||||||
|
|
||||||
if i % 3 == 0 or i % 5 == 0:
|
|
||||||
|
|
||||||
suma += i
|
|
||||||
|
|
||||||
return suma
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
inputs = [[10], [100], [3845]]
|
inputs = [[10], [100], [3845]]
|
||||||
|
@ -9,15 +9,7 @@ Np. leet('leet') powinno zwrócić '1337'.
|
|||||||
|
|
||||||
|
|
||||||
def leet_speak(text):
|
def leet_speak(text):
|
||||||
slownik = {'e' : '3', 'l' : '1', 'o' : '0', 't' : '7'}
|
pass
|
||||||
|
|
||||||
for a in text:
|
|
||||||
|
|
||||||
if a in slownik:
|
|
||||||
|
|
||||||
text = text.replace(a, slownik [a])
|
|
||||||
return text
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
|
@ -9,15 +9,7 @@ na wielką. Np. pokemon_speak('pokemon') powinno zwrócić 'PoKeMoN'.
|
|||||||
|
|
||||||
|
|
||||||
def pokemon_speak(text):
|
def pokemon_speak(text):
|
||||||
result = []
|
pass
|
||||||
|
|
||||||
for i in range(len(text)):
|
|
||||||
if i % 2 == 0:
|
|
||||||
result.append(text[i].upper())
|
|
||||||
else:
|
|
||||||
result.append(text[i])
|
|
||||||
|
|
||||||
return ''.join(result)
|
|
||||||
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
|
@ -9,7 +9,7 @@ Oba napisy będą składać się wyłacznie z małych liter.
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
def common_chars(string1, string2):
|
def common_chars(string1, string2):
|
||||||
return sorted(set(string1.replace(' ',''))& set(string2.replace(' ','')))
|
pass
|
||||||
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
|
4
labs02/test_task.py
Normal file → Executable file
4
labs02/test_task.py
Normal file → Executable file
@ -6,9 +6,7 @@ def suma(a, b):
|
|||||||
"""
|
"""
|
||||||
Napisz funkcję, która zwraca sumę elementów.
|
Napisz funkcję, która zwraca sumę elementów.
|
||||||
"""
|
"""
|
||||||
suma= a+b
|
return 0
|
||||||
|
|
||||||
return suma
|
|
||||||
|
|
||||||
def tests(f):
|
def tests(f):
|
||||||
inputs = [(2, 3), (0, 0), (1, 1)]
|
inputs = [(2, 3), (0, 0), (1, 1)]
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
import os
|
|
||||||
|
|
||||||
import glob
|
|
||||||
|
|
||||||
import re
|
|
||||||
|
|
||||||
import pandas
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
|
|
||||||
bleu_files = glob.glob('./scores/model.iter*.npz.bleu')
|
|
||||||
|
|
||||||
lines = []
|
|
||||||
|
|
||||||
for bleu_file in bleu_files:
|
|
||||||
|
|
||||||
lines += [[os.path.abspath(bleu_file), float(re.sub(r'.*?=\s*([^,]+).*', '\\1', line.rstrip('\n')))] for line in open(bleu_file)]
|
|
||||||
|
|
||||||
df = pandas.DataFrame(lines, columns=list('AB'))
|
|
||||||
|
|
||||||
print(df['A'].loc[df['B'].idxmax()])
|
|
42
labs06/task02.py
Normal file → Executable file
42
labs06/task02.py
Normal file → Executable file
@ -1,22 +1,14 @@
|
|||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import pandas as pd
|
|
||||||
import matplotlib.pyplot as plt
|
|
||||||
|
|
||||||
|
|
||||||
def wczytaj_dane():
|
def wczytaj_dane():
|
||||||
df = pd.read_csv("./mieszkania.csv", sep=',', header=0)
|
pass
|
||||||
return df
|
|
||||||
|
|
||||||
|
|
||||||
def most_common_room_number(dane):
|
def most_common_room_number(dane):
|
||||||
return dane['Rooms'].value_counts().idxmax()
|
pass
|
||||||
|
|
||||||
|
|
||||||
def cheapest_flats(dane, n):
|
def cheapest_flats(dane, n):
|
||||||
return dane.sort_values(by='Expected').head(n)
|
pass
|
||||||
|
|
||||||
|
|
||||||
def find_borough(desc):
|
def find_borough(desc):
|
||||||
dzielnice = ['Stare Miasto',
|
dzielnice = ['Stare Miasto',
|
||||||
@ -27,40 +19,36 @@ def find_borough(desc):
|
|||||||
'Winogrady',
|
'Winogrady',
|
||||||
'Miłostowo',
|
'Miłostowo',
|
||||||
'Dębiec']
|
'Dębiec']
|
||||||
return next((desc for i in dzielnice if desc in i), 'Inne')
|
pass
|
||||||
|
|
||||||
|
|
||||||
def add_borough(dane):
|
def add_borough(dane):
|
||||||
dane['Borough'] = dane['Location'].apply(find_borough)
|
pass
|
||||||
|
|
||||||
|
|
||||||
def write_plot(dane, filename):
|
def write_plot(dane, filename):
|
||||||
dane['Borough'].value_counts().plot(x='Borough', y='Quantity of adwerts', kind='bar')
|
pass
|
||||||
plt.savefig('./'+filename)
|
|
||||||
|
|
||||||
|
|
||||||
def mean_price(dane, room_number):
|
def mean_price(dane, room_number):
|
||||||
return dane[dane["Rooms"] == room_number]["Expected"].mean()
|
pass
|
||||||
|
|
||||||
|
|
||||||
def find_13(dane):
|
def find_13(dane):
|
||||||
return dane[dane["Floor"] == 13]["Borough"].unique()
|
pass
|
||||||
|
|
||||||
|
|
||||||
def find_best_flats(dane):
|
def find_best_flats(dane):
|
||||||
return dane[(dane["Borough"] == "Winogrady") & (dane["Floor"] == 1) & (dane["Rooms"] == 3)]
|
pass
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
dane = wczytaj_dane()
|
dane = wczytaj_dane()
|
||||||
print(dane[:5])
|
print(dane[:5])
|
||||||
|
|
||||||
print("Najpopularniejsza liczba pokoi w mieszkaniu to: {}".format(most_common_room_number(dane)))
|
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__":
|
if __name__ == "__main__":
|
||||||
main()
|
main()
|
||||||
|
|
||||||
|
30
labs06/tasks.py
Normal file → Executable file
30
labs06/tasks.py
Normal file → Executable file
@ -4,83 +4,77 @@
|
|||||||
"""
|
"""
|
||||||
1. Zaimportuj bibliotkę pandas jako pd.
|
1. Zaimportuj bibliotkę pandas jako pd.
|
||||||
"""
|
"""
|
||||||
import pandas as pd
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
2. Wczytaj zbiór danych `311.csv` do zniennej data.
|
2. Wczytaj zbiór danych `311.csv` do zniennej data.
|
||||||
"""
|
"""
|
||||||
data = pd.read_csv("./311.csv", sep=',', header=0, low_memory=0)
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
3. Wyświetl 5 pierwszych wierszy z data.
|
3. Wyświetl 5 pierwszych wierszy z data.
|
||||||
"""
|
"""
|
||||||
print(data.head(5))
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
4. Wyświetl nazwy kolumn.
|
4. Wyświetl nazwy kolumn.
|
||||||
"""
|
"""
|
||||||
print(data.columns)
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
5. Wyświetl ile nasz zbiór danych ma kolumn i wierszy.
|
5. Wyświetl ile nasz zbiór danych ma kolumn i wierszy.
|
||||||
"""
|
"""
|
||||||
print(str(data.shape[1]) +', '+ str(data.shape[0]))
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
6. Wyświetl kolumnę 'City' z powyższego zbioru danych.
|
6. Wyświetl kolumnę 'City' z powyższego zbioru danych.
|
||||||
"""
|
"""
|
||||||
print(data['City'])
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
7. Wyświetl jakie wartoścu przyjmuje kolumna 'City'.
|
7. Wyświetl jakie wartoścu przyjmuje kolumna 'City'.
|
||||||
"""
|
"""
|
||||||
print(data['City'].unique())
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
8. Wyświetl tabelę rozstawną kolumny City.
|
8. Wyświetl tabelę rozstawną kolumny City.
|
||||||
"""
|
"""
|
||||||
print(pd.pivot_table(data,columns=['City']))
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
9. Wyświetl tylko pierwsze 4 wiersze z wcześniejszego polecenia.
|
9. Wyświetl tylko pierwsze 4 wiersze z wcześniejszego polecenia.
|
||||||
"""
|
"""
|
||||||
print(pd.pivot_table(data,columns=['City']).head(4))
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
10. Wyświetl, w ilu przypadkach kolumna City zawiera NaN.
|
10. Wyświetl, w ilu przypadkach kolumna City zawiera NaN.
|
||||||
"""
|
"""
|
||||||
print(data['City'].isnull().sum())
|
|
||||||
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
11. Wyświetl data.info()
|
11. Wyświetl data.info()
|
||||||
"""
|
"""
|
||||||
print(data.info())
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
12. Wyświetl tylko kolumny Borough i Agency i tylko 5 ostatnich linii.
|
12. Wyświetl tylko kolumny Borough i Agency i tylko 5 ostatnich linii.
|
||||||
"""
|
"""
|
||||||
print(data[['Borough','Agency']].tail(5))
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
13. Wyświetl tylko te dane, dla których wartość z kolumny Agency jest równa
|
13. Wyświetl tylko te dane, dla których wartość z kolumny Agency jest równa
|
||||||
NYPD. Zlicz ile jest takich przykładów.
|
NYPD. Zlicz ile jest takich przykładów.
|
||||||
"""
|
"""
|
||||||
print(data[data['Agency'] == 'NYPD'])
|
|
||||||
print(data['Agency'].value_counts()['NYPD'])
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
14. Wyświetl wartość minimalną i maksymalną z kolumny Longitude.
|
14. Wyświetl wartość minimalną i maksymalną z kolumny Longitude.
|
||||||
"""
|
"""
|
||||||
print(data['Longitude'].max())
|
|
||||||
print(data['Longitude'].min())
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
15. Dodaj kolumne diff, która powstanie przez sumowanie kolumn Longitude i Latitude.
|
15. Dodaj kolumne diff, która powstanie przez sumowanie kolumn Longitude i Latitude.
|
||||||
"""
|
"""
|
||||||
data['diff'] = data['Longitude'] + data['Latitude']
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
16. Wyświetl tablę rozstawną dla kolumny 'Descriptor', dla której Agency jest
|
16. Wyświetl tablę rozstawną dla kolumny 'Descriptor', dla której Agency jest
|
||||||
równe NYPD.
|
równe NYPD.
|
||||||
"""
|
"""
|
||||||
print(pd.pivot_table(data[data['Agency'] == 'NYPD'],columns=['Descriptor']))
|
|
||||||
|
Loading…
Reference in New Issue
Block a user