Habrastatistics: greina athugasemdir lesenda

Sæll Habr. IN fyrri hluta Vinsældir ýmissa hluta síðunnar voru greindar og um leið vaknaði spurningin - hvaða gögn er hægt að vinna úr athugasemdum við greinar. Mig langaði líka að prófa eina tilgátu sem ég mun fjalla um hér á eftir.
Habrastatistics: greina athugasemdir lesenda

Gögnin reyndust nokkuð áhugaverð; okkur tókst líka að búa til lítið „mini-einkunn“ álitsgjafa. Áfram í niðurskurði.

Gagnasafn

Til greiningar munum við nota gögn fyrir þetta ár, 2019, sérstaklega þar sem ég hef þegar fengið lista yfir greinar á csv-formi. Það eina sem er eftir er að draga athugasemdirnar úr hverri grein; sem betur fer fyrir okkur eru þær geymdar þar og ekki þarf að gera frekari beiðnir.

Til að auðkenna athugasemdir úr grein nægir eftirfarandi kóða:

r = requests.get("https://habr.com/ru/post/467453/")
data_html = r.text
comments = data_html.split('<div class="comment" id=')

comments_list = []
for comment in comments:
    body = Str(comment).find_between('<div class="comment__message', '<div class="comment__footer"').find_between('>', '</div>')# .replace('n', '-')
    if len(body) < 4: continue

    body = body.translate(str.maketrans(dict.fromkeys("tnrvf")))
    body = body.replace('"', "'").replace(',', " ").replace('<br>', ' ').replace('<p>', '').replace('</p>', '').replace('  ', ' ')

    user = Str(comment).find_between('data-user-login', '>').find_between('"', '"')
    date_str = Str(comment).find_between('<time class="comment__date-time comment__date-time_published', 'time>').find_between('>', '<')
    vote = Str(comment).find_between('<div class="voting-wjt', '</div>').find_between('<span', 'span>').find_between('>', '<')
    date = dateparser.parse(date_str)

    csv_data = "{},{},{},{}".format(user, date, vote, body)
    comments_list.append(csv_data)

Þetta gerir okkur kleift að fá lista yfir athugasemdir sem líta eitthvað svona út (gælunöfn fjarlægð af persónuverndarástæðum):

xxxxxxx,2019-02-06 11:50:00,0,А можно пример как именно?
xxxxxxx-02-24 16:15:00,+1,Побольше читайте независимые официальные источники чтобы таких вопросов не было.
xxxxxxx,2019-02-23 20:15:00,–5,А не важно главное в итоге в плюсе оказаться

Eins og þú sérð getum við fengið notandanafn, dagsetningu, einkunn og raunverulegan texta fyrir hverja athugasemd. Við skulum sjá hvað við getum fengið út úr þessu.

Við the vegur, upphaflega var hugmyndin um að safna einkunnum aðeins öðruvísi - til að sjá hvaða einkunnir notendur gefa. Til dæmis geturðu horft á YouTube - jafnvel hugsjónasta myndbandið, jafnvel myndband sem inniheldur engar huglægar upplýsingar, eingöngu til viðmiðunar eða fréttatilkynningar, fær samt ákveðinn fjölda mínus. Tilgátan var sú að það eru notendur sem, eingöngu klínískt, líkar alls ekki við allt, kannski er serótónín ekki framleitt í heilanum eða eitthvað annað. Kannski þarf manneskja ekki lengur að sitja á Habré, heldur til að meðhöndla þunglyndi... En eins og það kom í ljós get ég ekki athugað þetta hér, vegna þess að... listinn yfir þá sem gáfu einkunnir er ekki vistaður í athugasemd eða grein. Jæja, það er, við munum vinna með fyrirliggjandi gögn. Niðurstaðan er „öfug“ einkunn - þú getur séð hvaða einkunnir _fá_ af notendum. Sem í grundvallaratriðum er líka áhugavert.

Vinnslu

Til að byrja með hefðbundinn fyrirvari. Þessi einkunn, eins og öll fyrri, er óopinber. Ég ábyrgist ekki að ég hafi ekki gert mistök neins staðar. Fyrir þá sem hafa áhuga á tæknilegum upplýsingum er ítarlegri kóða veittur í fyrri hlutanum.

Svo skulum við byrja. Athugasemdir fyrir þetta ár, 2019 (sem er ekki enn búið), voru teknar til greiningar. Þegar þetta var skrifað skrifuðu notendur 448533 комментария, stærð csv skráarinnar er 288MB. Öflugur, áhrifamikill.

Tími ritunar

Við skulum flokka athugasemdir eftir klukkustundum, skipta virkum dögum og helgum sérstaklega.

Habrastatistics: greina athugasemdir lesenda

Hér höfum við ekki áhuga á algildum, heldur afstæðum. Ef þú lítur bara á það "eins og það er", þá kemur það í ljósоFlestar athugasemdir voru skrifaðar á vinnutíma frá 10 til 18 😉 Aftur á móti er ekki tekið tillit til tímabelta hér þannig að spurningin er enn opin.

Skoðum dreifingu athugasemda yfir árið:

Habrastatistics: greina athugasemdir lesenda

Og samt snýst það; bylgja er greinilega sýnileg á virkum dögum - vikulega tíðnin er greinilega sýnileg, svo við getum sagt með nokkuð miklu öryggi að fólk sé að lesa og tjá sig um Habr úr vinnunni (en þetta er ekki víst).

Við the vegur, það var hugmynd að prófa tilgátuna hvort fjöldi mínus eða plúsa sem berast er frá degi eða tíma dags, en það var ekki hægt að finna samband - tíminn sem einkunnin var gefin er ekki vistuð, og engin bein tengsl eru við tímasetningu athugasemdarinnar.

Notendur

Auðvitað veit ég ekki nákvæmlega fjölda notenda á síðunni. En þeir sem skildu eftir að minnsta kosti eina athugasemd á þessu ári reyndust vera um það bil 25000 fólk.

Grafið yfir fjölda skilaboða sem notendur skilja eftir lítur nokkuð áhugavert út:

Habrastatistics: greina athugasemdir lesenda

Í fyrstu trúði ég því ekki sjálfur, en það virtist ekki vera um mistök að ræða. 5% notenda skilja eftir 60% skilaboða. 10% - 74% af öllum skilaboðum (þar af, að mig minnir, á þessu ári, 450 þúsund). Meirihlutinn les einfaldlega síðuna, skilur mjög sjaldan eftir athugasemdir eða skilur alls ekki eftir (þær voru náttúrulega ekki með á listanum mínum).

Ratings

Förum yfir í síðasta og skemmtilegasta hluta tölfræðinnar - einkunnir. Af persónuverndarástæðum mun ég ekki gefa upp öll gælunöfn notenda, hver sem vill, held ég, þekki sjálfan sig.

Á fjölda athugasemda fyrir þetta ár eru efstu 5 uppteknir af VoXXXX (3377 athugasemdir), 0xdXXXXX (3286 athugasemdir), strXXXX (3043 athugasemdir), AmXXXX (2897 athugasemdir) og khXXXX (2748 athugasemdir).

Á fjölda móttekinna bóta, efstu 5 eru uppteknir af amXXXX (1395 ummæli, einkunnir +3231/-309), tvXXXX (1544 ummæli, einkunnir +3231/-97), WhuXXXX (921 athugasemdir, einkunnir +2288/-13), MTXXXX (1328 athugasemdir, +1383 /-7) og amaXXXX (736 athugasemdir, einkunn +1340/-16).

Á alger jákvæð einkunn (enginn neikvæða einkunn) efst á toppnum er upptekið af Mílfgarður и Búmburum. Til undantekninga set ég fram gælunöfnin þeirra á fullu, mér finnst þau eiga það skilið.

Gallarnir eru líka áhugaverðir. Efst hjá fjöldi mínus sem safnað hefur verið fyrir þetta ár eru þeir uppteknir af siXX (473 plúsar, 699 mínusar), khXX (1915 plúsar, 573 mínusar) og nicXXXXX (456 plúsar, 487 mínusar). En eins og þú sérð hafa þessir notendur nóg af jákvæðum athugasemdum. En skv alger mínus Antitopic inniheldur vladXXXX (55 athugasemdir, 84 mínusar, 0 plúsar), ekoXXXX (77 athugasemdir, 92 mínusar, 1 plús) og iMXXXX (225 athugasemdir, 205 mínusar, 12 plúsar).

Ályktun

Ég gat ekki reiknað út allt sem var skipulagt, en ég vona að það hafi verið áhugavert.

Eins og þú sérð getur jafnvel gagnasafn með svo litlum fjölda sviða veitt áhugaverð gögn til greiningar. Það er enn margt sem þarf að grafast fyrir um, allt frá því að byggja upp „orðaský“ til textagreiningar. Ef einhverjar áhugaverðar niðurstöður koma í ljós verða þær birtar.

Heimild: www.habr.com

Bæta við athugasemd