• Nie Znaleziono Wyników

Wykład 2

N/A
N/A
Protected

Academic year: 2021

Share "Wykład 2"

Copied!
42
0
0

Pełen tekst

(1)

Pozyskiwanie danych Web mining API

Wprowadzenie do “data science”

Wykład 2 - pozyskiwanie danych, analiza tekstu

dr in˙z. Julian Sienkiewicz

(2)

Pozyskiwanie danych Web mining API ´ Zródła danych ´ Zródła danych ´

Zródłami danych dla eksperymentów data science mog ˛a by´c:

transakcyjne bazy danych (bazy OLTP — On-Line Transactional Processing),

hurtownie danych (DWH - Data Warehouses), dokumenty w ró˙znych formatach (CSV, XLSX, XML),

pliki graficzne i multimedialne (BMP, PNG, AVI, MP3),

strony WWW, usługi sieciowe.

Wła´sciwie ka˙zde ´zródło danych mo˙ze by´c wykorzy-stane, o ile tylko mo˙zliwe jest przekształcenie pocho-dz ˛acych z niego danych do postaci tabelarycznej.

[Grafika pobrana z: https: //publish.illinois.edu/ frontiers- big- data- symposium/]

(3)

Pozyskiwanie danych Web mining API ´ Zródła danych ´ Zródła danych ´

Zródłami danych dla eksperymentów data science mog ˛a by´c:

transakcyjne bazy danych (bazy OLTP — On-Line Transactional Processing),

hurtownie danych (DWH - Data Warehouses),

dokumenty w ró˙znych formatach (CSV, XLSX, XML),

pliki graficzne i multimedialne (BMP, PNG, AVI, MP3),

strony WWW, usługi sieciowe.

Wła´sciwie ka˙zde ´zródło danych mo˙ze by´c wykorzy-stane, o ile tylko mo˙zliwe jest przekształcenie pocho-dz ˛acych z niego danych do postaci tabelarycznej.

[Grafika pobrana z: https: //publish.illinois.edu/ frontiers- big- data- symposium/]

(4)

Pozyskiwanie danych Web mining API ´ Zródła danych ´ Zródła danych ´

Zródłami danych dla eksperymentów data science mog ˛a by´c:

transakcyjne bazy danych (bazy OLTP — On-Line Transactional Processing),

hurtownie danych (DWH - Data Warehouses), dokumenty w ró˙znych formatach (CSV, XLSX, XML),

pliki graficzne i multimedialne (BMP, PNG, AVI, MP3),

strony WWW, usługi sieciowe.

Wła´sciwie ka˙zde ´zródło danych mo˙ze by´c wykorzy-stane, o ile tylko mo˙zliwe jest przekształcenie pocho-dz ˛acych z niego danych do postaci tabelarycznej.

[Grafika pobrana z: https: //publish.illinois.edu/ frontiers- big- data- symposium/]

(5)

Pozyskiwanie danych Web mining API ´ Zródła danych ´ Zródła danych ´

Zródłami danych dla eksperymentów data science mog ˛a by´c:

transakcyjne bazy danych (bazy OLTP — On-Line Transactional Processing),

hurtownie danych (DWH - Data Warehouses), dokumenty w ró˙znych formatach (CSV, XLSX, XML),

pliki graficzne i multimedialne (BMP, PNG, AVI, MP3),

strony WWW, usługi sieciowe.

Wła´sciwie ka˙zde ´zródło danych mo˙ze by´c wykorzy-stane, o ile tylko mo˙zliwe jest przekształcenie pocho-dz ˛acych z niego danych do postaci tabelarycznej.

[Grafika pobrana z: https: //publish.illinois.edu/ frontiers- big- data- symposium/]

(6)

Pozyskiwanie danych Web mining API ´ Zródła danych ´ Zródła danych ´

Zródłami danych dla eksperymentów data science mog ˛a by´c:

transakcyjne bazy danych (bazy OLTP — On-Line Transactional Processing),

hurtownie danych (DWH - Data Warehouses), dokumenty w ró˙znych formatach (CSV, XLSX, XML),

pliki graficzne i multimedialne (BMP, PNG, AVI, MP3),

strony WWW,

usługi sieciowe.

Wła´sciwie ka˙zde ´zródło danych mo˙ze by´c wykorzy-stane, o ile tylko mo˙zliwe jest przekształcenie pocho-dz ˛acych z niego danych do postaci tabelarycznej.

[Grafika pobrana z: https: //publish.illinois.edu/ frontiers- big- data- symposium/]

(7)

Pozyskiwanie danych Web mining API ´ Zródła danych ´ Zródła danych ´

Zródłami danych dla eksperymentów data science mog ˛a by´c:

transakcyjne bazy danych (bazy OLTP — On-Line Transactional Processing),

hurtownie danych (DWH - Data Warehouses), dokumenty w ró˙znych formatach (CSV, XLSX, XML),

pliki graficzne i multimedialne (BMP, PNG, AVI, MP3),

strony WWW, usługi sieciowe.

Wła´sciwie ka˙zde ´zródło danych mo˙ze by´c wykorzy-stane, o ile tylko mo˙zliwe jest przekształcenie pocho-dz ˛acych z niego danych do postaci tabelarycznej.

[Grafika pobrana z: https: //publish.illinois.edu/ frontiers- big- data- symposium/]

(8)

Pozyskiwanie danych Web mining API ´ Zródła danych ´ Zródła danych ´

Zródłami danych dla eksperymentów data science mog ˛a by´c:

transakcyjne bazy danych (bazy OLTP — On-Line Transactional Processing),

hurtownie danych (DWH - Data Warehouses), dokumenty w ró˙znych formatach (CSV, XLSX, XML),

pliki graficzne i multimedialne (BMP, PNG, AVI, MP3),

strony WWW, usługi sieciowe.

Wła´sciwie ka˙zde ´zródło danych mo˙ze by´c wykorzy-stane, o ile tylko mo˙zliwe jest przekształcenie pocho-dz ˛acych z niego danych do postaci tabelarycznej.

[Grafika pobrana z: https: //publish.illinois.edu/ frontiers- big- data- symposium/]

(9)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(10)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(11)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(12)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(13)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(14)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(15)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(16)

Pozyskiwanie danych Web mining API Zamiana danych

DANE

SUROWE

(bez struktury)

DANE

STABELARYZOWANE

(struktura)

Zamiana surowych danych na dane stabelaryzowane mo˙ze nast ˛epowa´c np. poprzez:

wyszukanie okre´slonych wzorców (pattern) w tek´scie za pomoc ˛a wyra˙ze ´n regularnych (regular expressions),

u˙zycie metod analizy tekstu (text mining) w tym przetwarzania j ˛ezka naturalnego (natural language processing),

przekształcanie danych mo˙ze równie˙z dotyczy´c np. grafiki — w tym wypadku interesuje nas zapisanie ka˙zdego piksela w formie trójki (x , y , color ),

(17)

Pozyskiwanie danych Web mining API

Zawarto´s´c, struktura i aktywno´s´c

Obecnie szczególnie istotne jest przetwarzanie danych z Internetu (web mi-ning). Mo˙zna je podzieli´c na nast ˛epuj ˛ace cz ˛esci: zawarto ´s ´c (web mining, struktur ˛e (web structure) oraz aktywno ´s ´c (web usage).

Zawarto ´s ´c Struktura Aktywno ´s ´c Forma danych • bez struktury

• ze struktur ˛a

struktura linków oddziaływania

Główne dane • tekst• hipertekst struktura linków • logi serwera• logi przegl ˛adarki

Reprezentacja

• bag of words, n-gram • wyra˙zenia, ontologie • relacje

graf • tabele relacyjne • graf Metody • uczenie maszynowe • statystyczne (np. NLP) dedykowane algorytmy • uczenie maszy-nowe • statystyczne • reguły asocja-cyjne

(18)

Pozyskiwanie danych Web mining API

Zawarto´s´c, struktura i aktywno´s´c

Obecnie szczególnie istotne jest przetwarzanie danych z Internetu (web mi-ning). Mo˙zna je podzieli´c na nast ˛epuj ˛ace cz ˛esci: zawarto ´s ´c (web mining, struktur ˛e (web structure) oraz aktywno ´s ´c (web usage).

Zawarto ´s ´c Struktura Aktywno ´s ´c Forma danych • bez struktury

• ze struktur ˛a

struktura linków oddziaływania

Główne dane • tekst• hipertekst struktura linków • logi serwera• logi przegl ˛adarki

Reprezentacja

• bag of words, n-gram • wyra˙zenia, ontologie • relacje

graf • tabele relacyjne • graf Metody • uczenie maszynowe • statystyczne (np. NLP) dedykowane algorytmy • uczenie maszy-nowe • statystyczne • reguły asocja-cyjne

(19)

Pozyskiwanie danych Web mining API

Zawarto´s´c, struktura i aktywno´s´c

Obecnie szczególnie istotne jest przetwarzanie danych z Internetu (web mi-ning). Mo˙zna je podzieli´c na nast ˛epuj ˛ace cz ˛esci: zawarto ´s ´c (web mining, struktur ˛e (web structure) oraz aktywno ´s ´c (web usage).

Zawarto ´s ´c Struktura Aktywno ´s ´c Forma danych • bez struktury

• ze struktur ˛a

struktura linków oddziaływania

Główne dane • tekst• hipertekst struktura linków • logi serwera• logi przegl ˛adarki

Reprezentacja

• bag of words, n-gram • wyra˙zenia, ontologie • relacje

graf • tabele relacyjne • graf Metody • uczenie maszynowe • statystyczne (np. NLP) dedykowane algorytmy • uczenie maszy-nowe • statystyczne • reguły asocja-cyjne

(20)

Pozyskiwanie danych Web mining API

Zawarto´s´c, struktura i aktywno´s´c

Obecnie szczególnie istotne jest przetwarzanie danych z Internetu (web mi-ning). Mo˙zna je podzieli´c na nast ˛epuj ˛ace cz ˛esci: zawarto ´s ´c (web mining, struktur ˛e (web structure) oraz aktywno ´s ´c (web usage).

Zawarto ´s ´c Struktura Aktywno ´s ´c Forma danych • bez struktury

• ze struktur ˛a

struktura linków oddziaływania

Główne dane • tekst• hipertekst struktura linków • logi serwera• logi przegl ˛adarki

Reprezentacja

• bag of words, n-gram • wyra˙zenia, ontologie • relacje

graf • tabele relacyjne • graf Metody • uczenie maszynowe • statystyczne (np. NLP) dedykowane algorytmy • uczenie maszy-nowe • statystyczne • reguły asocja-cyjne

(21)

Pozyskiwanie danych Web mining API

Zawarto´s´c, struktura i aktywno´s´c

Obecnie szczególnie istotne jest przetwarzanie danych z Internetu (web mi-ning). Mo˙zna je podzieli´c na nast ˛epuj ˛ace cz ˛esci: zawarto ´s ´c (web mining, struktur ˛e (web structure) oraz aktywno ´s ´c (web usage).

Zawarto ´s ´c Struktura Aktywno ´s ´c Forma danych • bez struktury

• ze struktur ˛a

struktura linków oddziaływania

Główne dane • tekst• hipertekst struktura linków • logi serwera• logi przegl ˛adarki

Reprezentacja

• bag of words, n-gram • wyra˙zenia, ontologie • relacje

graf • tabele relacyjne • graf Metody • uczenie maszynowe • statystyczne (np. NLP) dedykowane algorytmy • uczenie maszy-nowe • statystyczne • reguły asocja-cyjne

(22)

Pozyskiwanie danych Web mining API

Web scraping

Web scraping

Web scraping jest powi ˛azany zindeksowaniem stron WWW, które polega

na indeksowaniu informacji zawartej na stronach WWW za pomoc ˛a bota lub web crawlera. Technika ta została zaadoptowana w wi ˛ekszo´sci silników wy-szukuj ˛acych. W przeciwie ´nstwie do nich, web scraping skupia si ˛e bardziej na

przekształceniu niestrukturalnych danych ze stron WWW, zwykle w

forma-cie HTML, do postaci danych strukturalnych, które mo˙zna łatwo gromadzi´c i analizowa´c w centralnej lokalnej bazie danych lub arkuszu kalkulacyjnym.

Technikalia

r ˛ecznie, copy-paste (czasem nie da si ˛e inaczej), wyra˙zenia regularne (np. za pomoc ˛a grep),

u˙zycieparsera (np. Lambda Soup, ale generalnie ka˙zdy przyzwoity

j ˛ezyk ma biblioteki),

(23)

Pozyskiwanie danych Web mining API

Web scraping

Web scraping

Web scraping jest powi ˛azany zindeksowaniem stron WWW, które polega

na indeksowaniu informacji zawartej na stronach WWW za pomoc ˛a bota lub web crawlera. Technika ta została zaadoptowana w wi ˛ekszo´sci silników wy-szukuj ˛acych. W przeciwie ´nstwie do nich, web scraping skupia si ˛e bardziej na

przekształceniu niestrukturalnych danych ze stron WWW, zwykle w

forma-cie HTML, do postaci danych strukturalnych, które mo˙zna łatwo gromadzi´c i analizowa´c w centralnej lokalnej bazie danych lub arkuszu kalkulacyjnym.

Technikalia

r ˛ecznie, copy-paste (czasem nie da si ˛e inaczej),

wyra˙zenia regularne (np. za pomoc ˛a grep),

u˙zycieparsera (np. Lambda Soup, ale generalnie ka˙zdy przyzwoity

j ˛ezyk ma biblioteki),

(24)

Pozyskiwanie danych Web mining API

Web scraping

Web scraping

Web scraping jest powi ˛azany zindeksowaniem stron WWW, które polega

na indeksowaniu informacji zawartej na stronach WWW za pomoc ˛a bota lub web crawlera. Technika ta została zaadoptowana w wi ˛ekszo´sci silników wy-szukuj ˛acych. W przeciwie ´nstwie do nich, web scraping skupia si ˛e bardziej na

przekształceniu niestrukturalnych danych ze stron WWW, zwykle w

forma-cie HTML, do postaci danych strukturalnych, które mo˙zna łatwo gromadzi´c i analizowa´c w centralnej lokalnej bazie danych lub arkuszu kalkulacyjnym.

Technikalia

r ˛ecznie, copy-paste (czasem nie da si ˛e inaczej), wyra˙zenia regularne (np. za pomoc ˛a grep),

u˙zycieparsera (np. Lambda Soup, ale generalnie ka˙zdy przyzwoity

j ˛ezyk ma biblioteki),

(25)

Pozyskiwanie danych Web mining API

Web scraping

Web scraping

Web scraping jest powi ˛azany zindeksowaniem stron WWW, które polega

na indeksowaniu informacji zawartej na stronach WWW za pomoc ˛a bota lub web crawlera. Technika ta została zaadoptowana w wi ˛ekszo´sci silników wy-szukuj ˛acych. W przeciwie ´nstwie do nich, web scraping skupia si ˛e bardziej na

przekształceniu niestrukturalnych danych ze stron WWW, zwykle w

forma-cie HTML, do postaci danych strukturalnych, które mo˙zna łatwo gromadzi´c i analizowa´c w centralnej lokalnej bazie danych lub arkuszu kalkulacyjnym.

Technikalia

r ˛ecznie, copy-paste (czasem nie da si ˛e inaczej), wyra˙zenia regularne (np. za pomoc ˛a grep),

u˙zycieparsera (np. Lambda Soup, ale generalnie ka˙zdy przyzwoity

j ˛ezyk ma biblioteki),

(26)

Pozyskiwanie danych Web mining API

Web scraping

Web scraping

Web scraping jest powi ˛azany zindeksowaniem stron WWW, które polega

na indeksowaniu informacji zawartej na stronach WWW za pomoc ˛a bota lub web crawlera. Technika ta została zaadoptowana w wi ˛ekszo´sci silników wy-szukuj ˛acych. W przeciwie ´nstwie do nich, web scraping skupia si ˛e bardziej na

przekształceniu niestrukturalnych danych ze stron WWW, zwykle w

forma-cie HTML, do postaci danych strukturalnych, które mo˙zna łatwo gromadzi´c i analizowa´c w centralnej lokalnej bazie danych lub arkuszu kalkulacyjnym.

Technikalia

r ˛ecznie, copy-paste (czasem nie da si ˛e inaczej), wyra˙zenia regularne (np. za pomoc ˛a grep),

u˙zycieparsera (np. Lambda Soup, ale generalnie ka˙zdy przyzwoity

j ˛ezyk ma biblioteki),

(27)

Pozyskiwanie danych Web mining API

Przykład - strona ZTM

Zagadnienie: uzyskac sie´c transportu miejskiego w Warszawie.

Jak wida´c, w cz ˛e´sci dotycz ˛acej rozkładów jazdy mamy odno´sniki do ka˙zdej linii.

(28)

Pozyskiwanie danych Web mining API

Przykład - strona ZTM

Zagadnienie: uzyskac sie´c transportu miejskiego w Warszawie.

Jak wida´c, w cz ˛e´sci dotycz ˛acej rozkładów jazdy mamy odno´sniki do ka˙zdej linii.

(29)

Pozyskiwanie danych Web mining API

Przykład - strona ZTM

(30)

Pozyskiwanie danych Web mining API

Przykład - strona ZTM

U˙zywaj ˛ac opcji “Inspect” mo˙zemy podejrze´c jaki kod odpowiada konkretnym znacznikom.

(31)

Pozyskiwanie danych Web mining API

Przykład - strona ZTM

W efekcie dla ka˙zdej linii mo˙zna zbudowa´c nast ˛epuj ˛ac ˛a struktur ˛e:

numer linii: przystanek1 -> przystanek2 -> przystanek3 -> ....

124: 3089 -> 1287 -> 3456 -> 1245 -> ....

To z kolei daje nam pełn ˛a informacj ˛e dotycz ˛ac ˛a tego który przystanek ł ˛aczy si ˛e z którym, a co za tym idzie tworzy pełn ˛a sie´c.

W takiej sieci mo˙zna pokusi´c si ˛e o wyznaczenie statystyk: stopni wierzchołków (ilu s ˛asiadów ma ka˙zdy w ˛ezeł),

´sredniej drogi (ile trzeba korków, aby przej´s´c z jednego w ˛ezła do drugiego),

współczynnika gronowania (jakie jest prawdopodobie ´nstwo, ˙ze moich dwóch s ˛asiadów te˙z jest poł ˛aczonych),

(32)

Pozyskiwanie danych Web mining API

Przykład - strona ZTM

W efekcie dla ka˙zdej linii mo˙zna zbudowa´c nast ˛epuj ˛ac ˛a struktur ˛e:

numer linii: przystanek1 -> przystanek2 -> przystanek3 -> .... 124: 3089 -> 1287 -> 3456 -> 1245 -> ....

To z kolei daje nam pełn ˛a informacj ˛e dotycz ˛ac ˛a tego który przystanek ł ˛aczy si ˛e z którym, a co za tym idzie tworzy pełn ˛a sie´c.

W takiej sieci mo˙zna pokusi´c si ˛e o wyznaczenie statystyk: stopni wierzchołków (ilu s ˛asiadów ma ka˙zdy w ˛ezeł),

´sredniej drogi (ile trzeba korków, aby przej´s´c z jednego w ˛ezła do drugiego),

współczynnika gronowania (jakie jest prawdopodobie ´nstwo, ˙ze moich dwóch s ˛asiadów te˙z jest poł ˛aczonych),

(33)

Pozyskiwanie danych Web mining API

Przykład - strona ZTM

W efekcie dla ka˙zdej linii mo˙zna zbudowa´c nast ˛epuj ˛ac ˛a struktur ˛e:

numer linii: przystanek1 -> przystanek2 -> przystanek3 -> .... 124: 3089 -> 1287 -> 3456 -> 1245 -> ....

To z kolei daje nam pełn ˛a informacj ˛e dotycz ˛ac ˛a tego który przystanek ł ˛aczy si ˛e z którym, a co za tym idzie tworzy pełn ˛a sie´c.

W takiej sieci mo˙zna pokusi´c si ˛e o wyznaczenie statystyk: stopni wierzchołków (ilu s ˛asiadów ma ka˙zdy w ˛ezeł),

´sredniej drogi (ile trzeba korków, aby przej´s´c z jednego w ˛ezła do drugiego),

współczynnika gronowania (jakie jest prawdopodobie ´nstwo, ˙ze moich dwóch s ˛asiadów te˙z jest poł ˛aczonych),

(34)

Pozyskiwanie danych Web mining API

(35)

Pozyskiwanie danych Web mining API

(36)

Pozyskiwanie danych Web mining API

Wady i zalety API

Zwykle du˙zo łatwiejszym sposobem jest wykorzystanie tzw. API (interfejs programowania aplikacji, application programming interface), które umo˙zliwa bezposredni dost ˛ep do interesuj ˛acych nas danych.

Zalety API

dobrze okre´slone pola,

najcz ˛esciej mo˙zliwo´s´c wyboru konkretnego zakresu informacji, mniejsza liczba bł ˛edów, brak konieczno´sci przystosowywania kodu do nieprzewidzianych sytuacji,

zwykle dost ˛epne dla wielu j ˛ezyków w postaci bibliotek (np. Pyton, R, Julia, etc)

Wady API

mo˙zliwe złe zakodowanie informacji,

cz ˛esto ograniczona ilo´s´c danych do pobrania w okre´slonej jednostce czasu,

dystrybutorzy oprogramowania ograniczaj ˛a dost ˛ep do konkretnych danych (etyka)

(37)

Pozyskiwanie danych Web mining API

Wady i zalety API

Zwykle du˙zo łatwiejszym sposobem jest wykorzystanie tzw. API (interfejs programowania aplikacji, application programming interface), które umo˙zliwa bezposredni dost ˛ep do interesuj ˛acych nas danych.

Zalety API

dobrze okre´slone pola,

najcz ˛esciej mo˙zliwo´s´c wyboru konkretnego zakresu informacji, mniejsza liczba bł ˛edów, brak konieczno´sci przystosowywania kodu do nieprzewidzianych sytuacji,

zwykle dost ˛epne dla wielu j ˛ezyków w postaci bibliotek (np. Pyton, R, Julia, etc)

Wady API

mo˙zliwe złe zakodowanie informacji,

cz ˛esto ograniczona ilo´s´c danych do pobrania w okre´slonej jednostce czasu,

dystrybutorzy oprogramowania ograniczaj ˛a dost ˛ep do konkretnych danych (etyka)

(38)

Pozyskiwanie danych Web mining API

Przykład - API Facebooka

Poni˙zej przykład krótkiej analizy danych z Facebooka za pomoc ˛a biblio-teki Rfacebook do pakietu R. (niezb ˛edne jest utworzenie aplikacji pod FB https://developers.facebook.com).

load(’fboauth’) require(’Rfacebook’)

df <- searchPages(string=’fizyka’, token=fboauth, n = 100)

(39)

Pozyskiwanie danych Web mining API

Przykład - API Facebooka

Nast ˛epnie dla pierwszej strony pobieramy 100 opublikowanych postów (jest ich mniej — 86).

out2 <- getPage(page = df$id[1], token=fboauth, n= 100)

Dzi ˛eki temu mamy dost ˛ep do wielu pól:

from_id from_name message created_time type link id story likes_count comments_count shares_count

(40)

Pozyskiwanie danych Web mining API

Przykład - API Facebooka

Nast ˛epnie u˙zywamy bibiotek tm (text mining) oraz wordcloud (do wizuali-zacji chmury słów). library(tm) library(wordcloud) docs <-Corpus(VectorSource(out2$message)) dtm <- TermDocumentMatrix(docs) v <- sort(rowSums(as.matrix(dtm)), decreasing=T)

d <- data.frame(word = names(v), freq = v) wordcloud(words = d$word, freq = d$freq, min.freq = 1, max.words=200,

random.order=FALSE, rot.per=0.35, colors=brewer.pal(8, "Dark2"))

(41)

Pozyskiwanie danych Web mining API

Przykład - API Facebooka

Nast ˛epnie u˙zywamy bibiotek tm (text mining) oraz wordcloud (do wizuali-zacji chmury słów). library(tm) library(wordcloud) docs <-Corpus(VectorSource(out2$message)) dtm <- TermDocumentMatrix(docs) v <- sort(rowSums(as.matrix(dtm)), decreasing=T)

d <- data.frame(word = names(v), freq = v) wordcloud(words = d$word, freq = d$freq, min.freq = 1, max.words=200,

random.order=FALSE, rot.per=0.35, colors=brewer.pal(8, "Dark2"))

(42)

Pozyskiwanie danych Web mining API

Przykład - API Facebooka

Podobnie mo˙zemy wykre´sli´c liczbe likeów od czasu, zaznaczaj ˛ac konretne typy postów (event, photo, link).

Cytaty

Powiązane dokumenty

czyli takie drzewo binarne (prawie) peªne, w którym warto±¢ rodzica jest zawsze nie mniejsza (nie wi¦ksza) od obu potomków (w przypadku ele- mentu bn/2c i nieparzystej liczby

Stwórzmy za pomocą struktury nowy typ samochod (rys 1.), który może przechowywać takie dane jak: marka (typu string), model (typu string), kolor (typu string), rok_produkcji

Dalsze podwyżki stóp w Stefie euro nie tylko zmniejszają dysparytet stóp procentowych i presję na wzmocnienie złotego (choć uważamy, że czynnik ten nie był

● strumienie wejścia/wyjścia: iostream, fstream, sstream, iomanip. ●

(3) przestawiamy wskaźnik next w węźle wskazywanym przez pred (lub wskaźnik head gdy pred jest pusty) oraz wskaźnik prev w węźle wskazywanym przez succ (lub wskaźnik tail gdy

obni˙zk˛e mo˙ze wywoła´c silniejsz ˛ a reakcj ˛e na złotym, cho´c istotny pozostanie tak˙ze ton komunikatu deter- minuj ˛ acy skal ˛e obni˙zek w kolejnych miesi ˛

Po upływie terminu przedawnienia roszczeń z tytułu zawartej umowy możesz jednać sprzeciwić się przetwarzaniu przez nas danych w celach statystycznych, jak również domagać się

• Odczyt kodów Digimarc™ przyspieszający obsługę przy kasie Cechy wyróżniające ofertę.. • Bezprecedensowa wydajność: błyskawiczna rejestracja najbardziej