Habrastatistics: analizimi i komenteve të lexuesve

Përshëndetje Habr. NË pjesa e mëparshme U analizua popullariteti i seksioneve të ndryshme të faqes, dhe në të njëjtën kohë u ngrit pyetja - cilat të dhëna mund të nxirren nga komentet për artikujt. Doja gjithashtu të testoja një hipotezë, të cilën do ta diskutoj më poshtë.
Habrastatistics: analizimi i komenteve të lexuesve

Të dhënat rezultuan mjaft interesante. Vazhdon nën prerje.

Mbledhja e të dhënave

Për analizë, do të përdorim të dhënat për këtë vit, 2019, veçanërisht pasi tashmë kam marrë një listë artikujsh në formë csv. Mbetet vetëm të nxjerrim komentet nga secili artikull, për fat të mirë për ne, ato ruhen atje dhe nuk ka nevojë të bëhen kërkesa shtesë.

Për të theksuar komentet nga një artikull, mjafton kodi i mëposhtëm:

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)

Kjo na lejon të marrim një listë të komenteve që duket diçka si kjo (pseudonimet janë hequr për arsye privatësie):

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

Siç mund ta shihni, për çdo koment mund të marrim emrin e përdoruesit, datën, vlerësimin dhe tekstin aktual. Le të shohim se çfarë mund të marrim nga kjo.

Nga rruga, fillimisht, ideja e mbledhjes së vlerësimeve ishte pak më ndryshe - për të parë se çfarë vlerësimesh japin përdoruesit. Për shembull, mund të shikoni në YouTube - edhe videoja më ideale, madje edhe një video që nuk mbart asnjë informacion subjektiv, thjesht për referencë ose një njoftim për lajme, përsëri fiton një numër të caktuar minusesh. Hipoteza ishte se ka përdorues që, thjesht klinikisht, nuk u pëlqen fare gjithçka, ndoshta serotonina nuk prodhohet në tru ose diçka tjetër. Ndoshta një person nuk ka më nevojë të ulet në Habré, por të trajtojë depresionin... Por siç doli, nuk mund ta kontrolloj këtë këtu, sepse... lista e atyre që dhanë vlerësime nuk ruhet në koment ose artikull. Epo, domethënë, ne do të punojmë me të dhënat e disponueshme. Rezultati është një vlerësim "i kundërt" - ju mund të shihni se çfarë vlerësimesh _merren_ nga përdoruesit. E cila, në parim, është gjithashtu interesante.

Përpunim

Për të filluar, një mohim tradicional. Ky vlerësim, si të gjithë të mëparshmet, është jozyrtar. Nuk garantoj se nuk kam gabuar askund. Për të interesuarit për detaje teknike, jepet kodi më i detajuar në pjesën e mëparshme.

Pra, le të fillojmë. Komentet për këtë vit, 2019 (i cili ende nuk ka përfunduar), janë marrë për analizë. Në kohën e shkrimit, përdoruesit shkruanin 448533 комментария, madhësia e skedarit csv është 288 MB. E fuqishme, mbresëlënëse.

Koha e shkrimit

Le të grupojmë komentet sipas orës, duke i ndarë ditët e javës dhe fundjavat veç e veç.

Habrastatistics: analizimi i komenteve të lexuesve

Këtu nuk na interesojnë vlerat absolute, por ato relative. Nëse thjesht e shikoni "siç është", atëherë rezulton seоShumica e komenteve janë shkruar gjatë orarit të punës nga ora 10 deri në 18 😉 Nga ana tjetër, këtu nuk merren parasysh zonat kohore, kështu që pyetja është ende e hapur.

Le të shohim shpërndarjen e komenteve gjatë gjithë vitit:

Habrastatistics: analizimi i komenteve të lexuesve

E megjithatë rrotullohet një rritje e dukshme gjatë ditëve të javës - periodiciteti javor është qartësisht i dukshëm, kështu që mund të themi me besim mjaft të lartë se njerëzit po lexojnë dhe komentojnë Habrin nga puna (por kjo nuk është e sigurt).

Nga rruga, ekzistonte një ide për të testuar hipotezën nëse numri i minuseve ose pluseve të marra ndryshon nga dita ose ora e ditës, por nuk ishte e mundur të gjendej një marrëdhënie - koha kur u dha vlerësimi nuk ruhet, dhe nuk ka lidhje direkte me kohen e komentit.

Anëtarët

Sigurisht, nuk e di numrin e saktë të përdoruesve në faqe. Por ata që lanë të paktën një koment këtë vit rezultuan të jenë përafërsisht Njerëzit 25000.

Grafiku i numrit të mesazheve të lëna nga përdoruesit duket mjaft interesant:

Habrastatistics: analizimi i komenteve të lexuesve

Në fillim nuk e besova vetë, por dukej se nuk kishte asnjë gabim. 5% e përdoruesve lënë 60% të mesazheve. 10% - 74% e të gjitha mesazheve (nga të cilat, më lejoni t'ju kujtoj, këtë vit, 450 mijë). Shumica thjesht lexojnë faqen, duke lënë komente shumë rrallë, ose duke mos i lënë fare ato (ata, natyrisht, nuk janë përfshirë në listën time).

Ratings

Le të kalojmë në pjesën e fundit dhe më argëtuese të statistikave - vlerësimet. Për arsye privatësie, nuk do të jap nofkat e plota të përdoruesve, mendoj se do të njohë veten.

Mbi numri i komenteve për këtë vit, top 5 zënë VoXXXX (3377 komente), 0xdXXXXX (3286 komente), strXXXX (3043 komente), AmXXXX (2897 komente) dhe khXXXX (2748 komente).

Mbi numri i përfitimeve të marra, 5 të parat janë të zëna nga amXXXX (1395 komente, vlerësime +3231/-309), tvXXXX (1544 komente, vlerësime +3231/-97), WhuXXXX (921 komente, vlerësime +2288/-13), MTXXXX (1328 komente, +1383 /-7) dhe amaXXXX (736 komente, vlerësim +1340/-16).

Mbi vlerësim absolut pozitiv (asnje koment i vlerësuar negativisht) maja e majës është e zënë nga Milfgard и Boomburum. Si përjashtim i prezantoj të plotë pseudonimet e tyre, mendoj se e meritojnë.

Anët negative janë gjithashtu interesante. Krye nga numri i minuseve të mbledhura për këtë vit janë zënë gjashtëXX (473 pluse, 699 minuse), khXX (1915 pluse, 573 minuse) dhe nicXXXXX (456 pluse, 487 minuse). Por siç mund ta shihni, këta përdorues kanë mjaft komente pozitive. Por sipas minus absolut Antitopi përfshin vladXXXXXX (55 komente, 84 minuse, 0 pluse), ekoXX (77 komente, 92 minuse, 1 plus) dhe iMXXX (225 komente, 205 minuse, 12 pluse).

Përfundim

Nuk isha në gjendje të llogarisja gjithçka të planifikuar, por shpresoj se ishte interesante.

Siç mund ta shihni, edhe një grup të dhënash me një numër kaq të vogël fushash mund të sigurojë të dhëna interesante për analizë. Ka ende shumë për të gërmuar, nga ndërtimi i një "reje fjalësh" te analiza e tekstit. Nëse shfaqen ndonjë rezultat interesant, ato do të publikohen.

Burimi: www.habr.com

Shto një koment