1
0
forked from tdwojak/Python2018

added scripts for labs04

This commit is contained in:
s441401 2018-06-02 21:48:54 +02:00
parent 946c7509d4
commit 7ee310eb8f
2 changed files with 40 additions and 0 deletions

20
labs04/task02.py Normal file
View File

@ -0,0 +1,20 @@
"""
**ć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)``).
"""
import itertools as it
n = int(input('Number of occursion: '))
def fibo():
a, b = 0, 1
while 1:
yield a
b = a + b
yield b
a = a+b
gen = fibo()
for i in it.islice(fibo(), n):
print(i)

20
labs04/task05.py Normal file
View File

@ -0,0 +1,20 @@
"""
**ćwiczenie 5**
Katalog scores zawiera 64 pliki tekstowe, które posiadają informacje o wysokości miary ``BLEU`` na różnych etapach trenowania modelu. Nazwa każdego pliku na postać ``model.iterXXXXXXX.npz.bleu``, gdzie ``XXXXXXX``, to liczba iteracji.Zawartość każdego pliku jest podobna i ma następującą formę: *BLEU = YY.YY, 44.4/18.5/9.3/5.0 (BP=1.000, ratio=1.072, hyp_len=45976, ref_len=42903)*, gdzie ``YY.YY`` to wartość miary ``BLEU``. Znajdź plik, który zawiera najwyższą wartość miary ``BLEU``.
* Wykorzystaj bibliotekę ``glob`` (https://docs.python.org/2/library/glob.html)
* Wyświetl tylko pełną nazwe pliku (wraz z ścieżką).
"""
import pandas as pd
import glob
path = r'/home/ghermann/code/python_td/labs04/scores' #change for your system
files = glob.glob(path + '/*.npz.bleu')
dfs = [pd.read_csv(fp, sep = " ", header = None).assign(filepath = fp) for fp in files]
df = pd.concat(dfs, ignore_index = True)
df[2] = df[2].map(lambda c: c.rstrip(','))
df[2] = pd.to_numeric(df[2], errors = 'coerce')
print(df.at[df[2].idxmax(), 'filepath'])