"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df = pd.DataFrame([[random.choice(['ang','polski','hiszp']), np.random.geometric(0.2)] for i in range(5000) ], columns=['jezyk', 'dlugosc'])\n",
"fig = px.histogram(df, x=\"dlugosc\",facet_row='jezyk',nbins=50, hover_data=df.columns)\n",
"fig.show()"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"?px.histogram"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## ZADANIE 1 \n",
"\n",
"(20 punktów)\n",
"\n",
"ZNAJDŹ PRZYKŁAD TEKSTÓW Z TEJ SAMEJ DOMENY 1_000_000 słów albo nawet tłumaczenie :\n",
"- język angielski \n",
"- język polski\n",
"- język z rodziny romańskich\n",
"\n",
"Proponowane narzędzia:\n",
"- nltk\n",
"- plotly express\n",
"- biblioteka collections\n",
"- spacy (niekoniecznie)\n",
"\n",
"\n",
"Dla każdego z języków:\n",
"- policz ilosć unikalnych lowercase słów (ze stemmingiem i bez)\n",
"- policz ilosć znaków\n",
"- policz ilosć unikalnych znaków\n",
"- policz ilosć zdań zdań\n",
"- policz ilosć unikalnych zdań\n",
"- podaj min, max, średnią oraz medianę ilości znaków w słowie \n",
"- podaj min, max, średnią oraz medianę ilości słów w zdaniu, znajdz najkrotsze i najdluzsze zdania\n",
"- wygeneruj word cloud (normalnie i po usunięciu stopwordów)\n",
"- wypisz 20 najbardziej popularnych słów (normalnie i po usunięciu stopwordów) (lowercase)\n",
"- wypisz 20 najbardziej popularnych bigramów (normalnie i po usunięciu stopwordów)\n",
"- narysuj wykres częstotliwości słów (histogram lub linie) w taki sposób żeby był czytelny, wypróbuj skali logarytmicznej dla osi x (ale na razie nie dla y), usuwanie słów poniżej limitu wystąpień itp.\n",
"- punkt jak wyżej, tylko dla bigramów\n",
"- punkt jak wyżej, tylko dla znaków\n",
"- narysuj wykres barplot dla części mowy (PART OF SPEECH TAGS, tylko pierwszy stopień zagłębienia)\n",
"- dla próbki 10000 zdań sprawdź jak często langdetect https://pypi.org/project/langdetect/ się myli i w jaki sposób.\n",
"- zilustruj prawo zipfa ( px.line z zaznaczonymi punktami), bez skali logarytmicznej dla najbardziej popularnych 20 słów\n",
"- napisz wnioski (10-50 zdań)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### START ZADANIA"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### KONIEC ZADANIA"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## ZADANIE 2\n",
"\n",
"(20 punktów)\n",
"\n",
"Znajdź teksty w języku polskim (mają składać sie po 5 osobnych dokumentów każdy, długości powinny być różne):\n",
"- tekst prawny\n",
"- tekst naukowy\n",
"- tekst z polskiego z powieści (np. wolne lektury)\n",
"- tekst z polskiego internetu (reddit, wykop, komentarze)\n",
"- transkrypcja tekstu mówionego\n",
"\n",
"\n",
"\n",
"ZADANIA:\n",
"- zilustruj gunning fog index (oś y) i średnią długość zdania (oś x) na jednym wykresie dla wszystkich tekstów, domeny oznacz kolorami (px.scatter), dla języka polskiego traktuj wyrazy długie jako te powyżej 3 sylab, możesz użyć https://pyphen.org/ do liczenia sylab\n",
"- zilustruj prawo Heaps'a dla wszystkich tekstów na jednym wykresie, domeny oznacz kolorami (px.scatter)\n",
"- napisz wnioski (10-50 zdań)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### START ZADANIA"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### KONIEC ZADANIA"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## WYKONANIE ZADAŃ\n",
"Zgodnie z instrukcją 01_Kodowanie_tekstu.ipynb"
]
}
],
"metadata": {
"author": "Jakub Pokrywka",
"email": "kubapok@wmi.amu.edu.pl",
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"lang": "pl",
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.3"
},
"subtitle": "0.Informacje na temat przedmiotu[ćwiczenia]",
"title": "Ekstrakcja informacji",
"year": "2021"
},
"nbformat": 4,
"nbformat_minor": 4
}