Compare commits
17 Commits
Author | SHA1 | Date | |
---|---|---|---|
c5b58c514b | |||
|
b5dbb6ca08 | ||
|
aaa6fd05a5 | ||
|
c547ed0502 | ||
86acfcd661 | |||
2f180bdafd | |||
776abbce40 | |||
493056edb6 | |||
c5944a3f95 | |||
4a42679729 | |||
|
9b66c64e59 | ||
|
9bced26d9f | ||
|
228375a4b2 | ||
|
1e73032203 | ||
|
d5816599fd | ||
|
36af9a48a9 | ||
|
95eba0f25e |
6
.idea/vcs.xml
Normal file
6
.idea/vcs.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
@ -168,7 +168,7 @@ for i in range(5):# range[5] = [0,1,2,3,4]
|
||||
|
||||
for zmienna in lista:
|
||||
# operacje do wykonania w pętli
|
||||
|
||||
pass
|
||||
|
||||
# In[ ]:
|
||||
|
||||
|
@ -9,48 +9,59 @@ Zadania wprowadzające do pierwszych ćwiczeń.
|
||||
"""
|
||||
Wypisz na ekran swoje imię i nazwisko.
|
||||
"""
|
||||
|
||||
print("Andrea Góralczyk")
|
||||
|
||||
"""
|
||||
Oblicz i wypisz na ekran pole koła o promienie 10. Jako PI przyjmij 3.14.
|
||||
"""
|
||||
|
||||
pi= 3.14
|
||||
p=pi*(10**2)
|
||||
print("pole=",p )
|
||||
"""
|
||||
Stwórz zmienną pole_kwadratu i przypisz do liczbę: pole kwadratu o boku 3.
|
||||
"""
|
||||
|
||||
pole_kwadratu=3**2
|
||||
print(pole_kwadratu)
|
||||
"""
|
||||
Stwórz 3 elementową listę, która zawiera nazwy 3 Twoich ulubionych owoców.
|
||||
Wynik przypisz do zmiennej `owoce`.
|
||||
"""
|
||||
|
||||
owoce= ["truskawki", "gruszki", "banan"]
|
||||
print(owoce)
|
||||
"""
|
||||
Dodaj do powyższej listy jako nowy element "pomidor".
|
||||
"""
|
||||
|
||||
owoce.append("pomidor")
|
||||
print(owoce)
|
||||
"""
|
||||
Usuń z powyższej listy drugi element.
|
||||
"""
|
||||
|
||||
owoce.pop(1)
|
||||
print(owoce)
|
||||
|
||||
"""
|
||||
Rozszerz listę o tablice ['Jabłko', "Gruszka"].
|
||||
"""
|
||||
|
||||
owoce.extend(["Jabłko","Gruszka"])
|
||||
print(owoce)
|
||||
"""
|
||||
Wyświetl listę owoce, ale bez pierwszego i ostatniego elementu.
|
||||
"""
|
||||
|
||||
print("bez pierwszego i ostatniego elementu", owoce[1:-1])
|
||||
"""
|
||||
Wyświetl co trzeci element z listy owoce.
|
||||
"""
|
||||
|
||||
print("co trzeci element", owoce[::3])
|
||||
"""
|
||||
Stwórz pusty słownik i przypisz go do zmiennej magazyn.
|
||||
"""
|
||||
slownik= {}
|
||||
magazyn= slownik
|
||||
|
||||
"""
|
||||
Dodaj do słownika magazyn owoce z listy owoce, tak, aby owoce były kluczami,
|
||||
zaś wartościami były równe 5.
|
||||
"""
|
||||
|
||||
for i in owoce:
|
||||
magazyn[i]=[5]
|
||||
print(magazyn)
|
@ -7,7 +7,8 @@ która zawiera tylko elementy z list o parzystych indeksach.
|
||||
"""
|
||||
|
||||
def even_elements(lista):
|
||||
pass
|
||||
|
||||
return lista[::2]
|
||||
|
||||
|
||||
def tests(f):
|
||||
|
@ -6,7 +6,12 @@
|
||||
"""
|
||||
|
||||
def days_in_year(days):
|
||||
pass
|
||||
if ((days%4) == 0 and (days%100!= 0)) or ((days%400) == 0):
|
||||
liczba_dni=366
|
||||
else:
|
||||
liczba_dni=365
|
||||
return liczba_dni
|
||||
|
||||
|
||||
def tests(f):
|
||||
inputs = [[2015], [2012], [1900], [2400], [1977]]
|
||||
|
@ -11,11 +11,15 @@ litery. (OOV = out of vocabulary) (W pythonie istnieje struktura danych tak
|
||||
jak 'set', która przechowuje elementy bez powtórzeń.)
|
||||
"""
|
||||
|
||||
|
||||
from sets import Set
|
||||
def oov(text, vocab):
|
||||
pass
|
||||
rozdzielenie=text.split(' ')
|
||||
slowa= set()
|
||||
slowa= (slowa for slowa in rozdzielenie if slowa not in vocab)
|
||||
|
||||
|
||||
return slowa
|
||||
|
||||
|
||||
def tests(f):
|
||||
inputs = [("this is a string , which i will use for string testing",
|
||||
|
@ -7,7 +7,14 @@ Jeśli podany argument jest mniejszy od 1 powinna być zwracana wartość 0.
|
||||
"""
|
||||
|
||||
def sum_from_one_to_n(n):
|
||||
pass
|
||||
|
||||
suma= 0
|
||||
if n < 1:
|
||||
return 0
|
||||
else:
|
||||
for i in range(n+1):
|
||||
suma= suma+i
|
||||
return suma
|
||||
|
||||
|
||||
def tests(f):
|
||||
|
@ -9,8 +9,15 @@ trzyelementowe listy liczb zmiennoprzecinkowych.
|
||||
np. odległość pomiędzy punktami (0, 0, 0) i (3, 4, 0) jest równa 5.
|
||||
"""
|
||||
|
||||
|
||||
def euclidean_distance(x, y):
|
||||
pass
|
||||
odleglosc = 0
|
||||
|
||||
for i in range(3):
|
||||
odleglosc = odleglosc + (x[i] - y[i]) ** 2
|
||||
|
||||
odleglosc = cmath.sqrt(odleglosc)
|
||||
return odleglosc
|
||||
|
||||
def tests(f):
|
||||
inputs = [[(2.3, 4.3, -7.5), (2.3, 8.5, -7.5)]]
|
||||
|
@ -10,7 +10,15 @@ ma być zwracany napis "It's not a Big 'No!'".
|
||||
"""
|
||||
|
||||
def big_no(n):
|
||||
pass
|
||||
if n<5:
|
||||
zwraca= "It's not a Big 'No!'"
|
||||
return zwraca
|
||||
else:
|
||||
zwraca=''
|
||||
for i in range(n):
|
||||
zwraca=zwraca + 'O'
|
||||
|
||||
return ("N"+ zwraca+ "!")
|
||||
|
||||
def tests(f):
|
||||
inputs = [[5], [6], [2]]
|
||||
|
@ -6,7 +6,10 @@ Napisz funkcję char_sum, która dla zadanego łańcucha zwraca
|
||||
sumę kodów ASCII znaków.
|
||||
"""
|
||||
def char_sum(text):
|
||||
pass
|
||||
suma = 0
|
||||
for znak in text:
|
||||
suma= suma + ord(znak)
|
||||
return suma
|
||||
|
||||
def tests(f):
|
||||
inputs = [["this is a string"], ["this is another string"]]
|
||||
|
@ -7,7 +7,15 @@ przez 3 lub 5 mniejszych niż n.
|
||||
"""
|
||||
|
||||
def sum_div35(n):
|
||||
pass
|
||||
|
||||
if n == 0:
|
||||
return 0
|
||||
else:
|
||||
suma=0
|
||||
for i in range(n):
|
||||
if ((i%3) == 0) or ((i%5) == 0):
|
||||
suma =suma + i
|
||||
return suma
|
||||
|
||||
def tests(f):
|
||||
inputs = [[10], [100], [3845]]
|
||||
|
@ -7,10 +7,18 @@ na podobnie wyglądające cyfry: 'e' na '3', 'l' na '1', 'o' na '0', 't' na '7'.
|
||||
Np. leet('leet') powinno zwrócić '1337'.
|
||||
"""
|
||||
|
||||
|
||||
def leet_speak(text):
|
||||
pass
|
||||
|
||||
|
||||
for i in range(len(text)):
|
||||
if ((text[i]) == 'e'):
|
||||
text = text[:i] + '3' + text[i + 1:]
|
||||
elif ((text[i]) == 'l'):
|
||||
text = text[:i] + '1' + text[i + 1:]
|
||||
elif ((text[i]) == 'o'):
|
||||
text = text[:i] + '0' + text[i + 1:]
|
||||
elif ((text[i]) == 't'):
|
||||
text = text[:i] + '7' + text[i + 1:]
|
||||
return text
|
||||
|
||||
def tests(f):
|
||||
inputs = [['leet'], ['do not want']]
|
||||
|
@ -9,8 +9,12 @@ na wielką. Np. pokemon_speak('pokemon') powinno zwrócić 'PoKeMoN'.
|
||||
|
||||
|
||||
def pokemon_speak(text):
|
||||
pass
|
||||
|
||||
for i in range(len(text)):
|
||||
if ((i % 2) == 0):
|
||||
text = text[:i] + (text[i].upper()) + text[i + 1:]
|
||||
|
||||
return text
|
||||
|
||||
def tests(f):
|
||||
inputs = [['pokemon'], ['do not want'], ['POKEMON']]
|
||||
|
@ -9,7 +9,24 @@ Oba napisy będą składać się wyłacznie z małych liter.
|
||||
"""
|
||||
|
||||
def common_chars(string1, string2):
|
||||
pass
|
||||
n= string1
|
||||
m= string2
|
||||
li = []
|
||||
if len(n) >= len(m):
|
||||
for i in range(len(n)):
|
||||
for j in range(len(m)):
|
||||
if n[i] == m[j]:
|
||||
li.append(n[i])
|
||||
|
||||
else:
|
||||
for i in range(len(m)):
|
||||
for j in range(len(n)):
|
||||
if m[i] == n[j]:
|
||||
li.append(m[i])
|
||||
li = list(set(li))
|
||||
li.remove(' ')
|
||||
li.sort()
|
||||
return li
|
||||
|
||||
|
||||
def tests(f):
|
||||
|
3
labs02/test_task.py
Executable file → Normal file
3
labs02/test_task.py
Executable file → Normal file
@ -6,7 +6,8 @@ def suma(a, b):
|
||||
"""
|
||||
Napisz funkcję, która zwraca sumę elementów.
|
||||
"""
|
||||
return 0
|
||||
wynik= a+b
|
||||
return wynik
|
||||
|
||||
def tests(f):
|
||||
inputs = [(2, 3), (0, 0), (1, 1)]
|
||||
|
@ -5,11 +5,6 @@
|
||||
**ćwiczenie 0**
|
||||
Uruchom programy z katalogu `examples` i zobacz ich kod. Spróbuj odgadnąć, co robią konkretne linie w kodzie.
|
||||
|
||||
**ćwiczenie 1**
|
||||
Każdy obiekt w Pythonie na wbudowaną funkcję ``id()``, która zwraca liczbę, która jest unikatowa i stała dla obiektu. Pozwala ona w prosty sposób sprawdzić, który obiekt jest *mutable*a, który *immutable*: jeżeli po wykonaniu operacji, zwracana liczba jest stała, to oznacza, że obiekt jest *mutable*. Sprawdź zachowanie funkcji na obiektach typy:
|
||||
* lista,
|
||||
* napis (string),
|
||||
* liczba zmiennoprzecinkowa.
|
||||
|
||||
**ćwiczenie 2**
|
||||
Napisz generator, który będzie zwracać ``n`` kolejnych liczb ciągu Fibonacciego (``F(0)=1, F(1)=1, FN=F(N-1) + F(N-2)``).
|
||||
|
17
labs04/cw5.py
Normal file
17
labs04/cw5.py
Normal file
@ -0,0 +1,17 @@
|
||||
import glob
|
||||
|
||||
sciezka = "/scores/model.iter*.npz.bleu"
|
||||
|
||||
for file in glob.glob(sciezka):
|
||||
with open(file, 'r') as plik:
|
||||
for line in plik.readlines():
|
||||
bleu = float(line[line.find("=")+ 1:line.find(",")])
|
||||
if bleu >0:
|
||||
max = bleu
|
||||
maxi = file
|
||||
|
||||
plik.close()
|
||||
|
||||
print ( maxi )
|
||||
|
||||
|
0
labs04/examples/06_execution_time.py
Executable file → Normal file
0
labs04/examples/06_execution_time.py
Executable file → Normal file
0
labs04/examples/25_ip2geolocation.py
Executable file → Normal file
0
labs04/examples/25_ip2geolocation.py
Executable file → Normal file
87
labs06/task02.py
Normal file
87
labs06/task02.py
Normal file
@ -0,0 +1,87 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import pandas as pd
|
||||
|
||||
def wczytaj_dane():
|
||||
|
||||
data = pd.read_csv('mieszkania.csv', sep = ',')
|
||||
return data
|
||||
|
||||
def most_common_room_number(dane):
|
||||
|
||||
x= dane['Rooms'].value_counts()
|
||||
return(x.index.values[0])
|
||||
|
||||
def cheapest_flats(dane, n):
|
||||
|
||||
cheap=dane.sort_values('Expected')
|
||||
return (cheap.head(n))
|
||||
|
||||
def find_borough(desc):
|
||||
|
||||
dzielnice = ['Stare Miasto',
|
||||
'Wilda',
|
||||
'Jeżyce',
|
||||
'Rataje',
|
||||
'Piątkowo',
|
||||
'Winogrady',
|
||||
'Miłostowo',
|
||||
'Dębiec']
|
||||
for dzielnica in dzielnice:
|
||||
if dzielnica in desc:
|
||||
return dzielnica
|
||||
return 'Inne'
|
||||
|
||||
def add_borough(dane):
|
||||
|
||||
values = []
|
||||
for i in dane['Location']:
|
||||
values.append(find_borough(i))
|
||||
|
||||
tempSeries = pd.Series(values)
|
||||
dane['Borough'] = tempSeries.values
|
||||
|
||||
def write_plot(dane, filename):
|
||||
|
||||
add_borough(dane)
|
||||
plot = dane['Borough'].value_counts()
|
||||
|
||||
wykres = plot.plot(kind='bar', alpha=0.5, title='Liczba mieszkań z podziałem na dzielnice', fontsize=7, figsize=(8,8))
|
||||
wykres.set_ylabel('Liczba ogloszeń')
|
||||
wykres.set_xlabel('Dzielnice')
|
||||
plik = wykres.get_figure()
|
||||
plik.savefig(filename)
|
||||
|
||||
def mean_price(dane, room_number):
|
||||
|
||||
price = dane.loc[dane['Rooms'] == room_number]
|
||||
return price['Expected'].mean()
|
||||
|
||||
def find_13(dane):
|
||||
|
||||
x = dane.loc[dane['Floor'] == 13]
|
||||
return list(set(x['Borough'].tolist()))
|
||||
|
||||
def find_best_flats(dane):
|
||||
|
||||
the_best = dane.loc[dane['Borough'] == 'Winogrady' & dane['Rooms'] == 3 & dane['Floor'] == 1]
|
||||
return the_best
|
||||
|
||||
def main():
|
||||
dane = wczytaj_dane()
|
||||
print(dane[:5])
|
||||
|
||||
print("Najpopularniejsza liczba pokoi w mieszkaniu to: {}"
|
||||
.format(most_common_room_number(dane)))
|
||||
|
||||
print("{} to najładniejsza dzielnica w Poznaniu."
|
||||
.format(find_borough("Grunwald i Jeżyce")))
|
||||
|
||||
print("Średnia cena mieszkania 3-pokojowego, to: {}"
|
||||
.format(mean_price(dane, 3)))
|
||||
|
||||
write_plot(dane, 'ogloszenia.png')
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
45
labs06/tasks.py
Executable file → Normal file
45
labs06/tasks.py
Executable file → Normal file
@ -4,77 +4,92 @@
|
||||
"""
|
||||
1. Zaimportuj bibliotkę pandas jako pd.
|
||||
"""
|
||||
|
||||
import pandas as pd
|
||||
|
||||
"""
|
||||
2. Wczytaj zbiór danych `311.csv` do zniennej data.
|
||||
"""
|
||||
|
||||
data=pd.read_csv("/home/students/s407545/PycharmProjects/Python2018/labs06/311.csv", low_memory=False)
|
||||
|
||||
"""
|
||||
3. Wyświetl 5 pierwszych wierszy z data.
|
||||
"""
|
||||
|
||||
data.head()
|
||||
|
||||
"""
|
||||
4. Wyświetl nazwy kolumn.
|
||||
"""
|
||||
|
||||
print(data.columns)
|
||||
|
||||
"""
|
||||
5. Wyświetl ile nasz zbiór danych ma kolumn i wierszy.
|
||||
"""
|
||||
|
||||
shape= data.shape
|
||||
print(shape)
|
||||
|
||||
"""
|
||||
6. Wyświetl kolumnę 'City' z powyższego zbioru danych.
|
||||
"""
|
||||
|
||||
print(data['City'])
|
||||
|
||||
"""
|
||||
7. Wyświetl jakie wartoścu przyjmuje kolumna 'City'.
|
||||
"""
|
||||
|
||||
data.City.unique()
|
||||
"""
|
||||
8. Wyświetl tabelę rozstawną kolumny City.
|
||||
"""
|
||||
|
||||
data.City.value_counts()
|
||||
|
||||
"""
|
||||
9. Wyświetl tylko pierwsze 4 wiersze z wcześniejszego polecenia.
|
||||
"""
|
||||
|
||||
data.City.value_counts().head(4)
|
||||
|
||||
"""
|
||||
10. Wyświetl, w ilu przypadkach kolumna City zawiera NaN.
|
||||
"""
|
||||
|
||||
x= data['City'].isnull().sum()
|
||||
|
||||
x= data[data['City']=='NYPD']
|
||||
shape=x.shape
|
||||
rows= shape[0]
|
||||
print(rows)
|
||||
|
||||
"""
|
||||
11. Wyświetl data.info()
|
||||
"""
|
||||
|
||||
data.info()
|
||||
"""
|
||||
12. Wyświetl tylko kolumny Borough i Agency i tylko 5 ostatnich linii.
|
||||
"""
|
||||
|
||||
print(data[['Borough', 'Agency']].tail())
|
||||
|
||||
"""
|
||||
13. Wyświetl tylko te dane, dla których wartość z kolumny Agency jest równa
|
||||
NYPD. Zlicz ile jest takich przykładów.
|
||||
"""
|
||||
|
||||
y= data[data['Agency']=='NYPD']
|
||||
shape=y.shape
|
||||
rows= shape[0]
|
||||
print(rows)
|
||||
"""
|
||||
14. Wyświetl wartość minimalną i maksymalną z kolumny Longitude.
|
||||
"""
|
||||
|
||||
x=data['Longitude']
|
||||
x.min()
|
||||
x.max()
|
||||
"""
|
||||
15. Dodaj kolumne diff, która powstanie przez sumowanie kolumn Longitude i Latitude.
|
||||
"""
|
||||
|
||||
|
||||
x=data['Longitude']
|
||||
y=data['Latitude']
|
||||
data['diff']= x+y
|
||||
print(data.columns)
|
||||
"""
|
||||
16. Wyświetl tablę rozstawną dla kolumny 'Descriptor', dla której Agency jest
|
||||
równe NYPD.
|
||||
"""
|
||||
y= data[data['Agency']=='NYPD']
|
||||
y.Descriptor.value_counts()
|
Loading…
Reference in New Issue
Block a user