def main(data_dir: str, file_regexp: str, year: int): values = [] for judgment in regexputil.get_judgments(data_dir, file_regexp, year): values_found = [ regexputil.evaluate(match) for match in re.finditer( regexputil.money_regexp, judgment['textContent']) ] print('Found values: {}'.format(values_found)) values.extend(values_found) data = np.asarray(values, dtype=float) fig, ax = plt.subplots() fig.set_size_inches(8, 8) fig.suptitle( 'Histogram kwot pieniężnych w orzeczeniach sądowych z roku {} (poniżej 1 mln)' .format(year)) ax.set_xlabel('kwota') ax.set_ylabel('liczba wystąpień') xmin = 0 xmax = 1000000 ax.set_xticks(np.arange(xmin, xmax + 1, xmax / 10)) ax.set_yscale('log') ax.hist(data, range=(xmin, xmax), bins=200) fig, ax = plt.subplots() fig.set_size_inches(8, 8) fig.suptitle( 'Histogram kwot pieniężnych w orzeczeniach sądowych z roku {} (powyżej 1 mln)' .format(year)) ax.set_xlabel('kwota') ax.set_ylabel('liczba wystąpień') xmin = 1000000 xmax = 10000000000 ax.set_xticks(np.arange(xmin, xmax + 1, xmax / 10)) ax.set_yscale('log') ax.hist(data, range=(xmin, xmax), bins=200) plt.show()
def test2(self): match = re.fullmatch(regexputil.money_regexp, "500 000 PLN") self.assertEqual(regexputil.evaluate(match), 500000)
def test1(self): match = re.fullmatch(regexputil.money_regexp, "2 tysiące nowych polskich zł") self.assertEqual(regexputil.evaluate(match), 2000)
def test7(self): match = re.fullmatch(regexputil.money_regexp, "5 tys. polskich złotych") self.assertEqual(regexputil.evaluate(match), 5000)
def test6(self): match = re.fullmatch(regexputil.money_regexp, "10.500,23 złotych") self.assertEqual(regexputil.evaluate(match), Decimal('10500.23'))
def test5(self): match = re.fullmatch(regexputil.money_regexp, "45,67 zł") self.assertEqual(regexputil.evaluate(match), Decimal('45.67'))
def test3(self): match = re.fullmatch(regexputil.money_regexp, "2 mld starych polskich złotych") self.assertEqual(regexputil.evaluate(match), 2000000000)