Habrastatistics: ka Habr si ebi ndụ na-enweghị geektimes
Hey Habr.
Edemede a bụ ihe ezi uche dị na ya ga n'ihu maka ọkwa ahụ Akụkọ Habr kacha mma maka 2018. Ma ọ bụ ezie na afọ ahụ agwụbeghị, dị ka ị maara, n'oge okpomọkụ, e nwere mgbanwe na iwu, ya mere, ọ ghọrọ ihe na-adọrọ mmasị ịhụ ma ọ bụrụ na nke a metụtara ihe ọ bụla.
Na mgbakwunye na ọnụ ọgụgụ n'ezie, a ga-enye ọkwa emelitere nke akụkọ yana ụfọdụ koodu isi mmalite maka ndị nwere mmasị ka ọ si arụ ọrụ.
Maka ndị nwere mmasị na ihe merenụ, ihe na-aga n'ihu dị n'okpuru ịkpụ. Ndị nwere mmasị na nyocha zuru ezu nke akụkụ nke saịtị ahụ nwekwara ike ile anya akụkụ ọzọ.
Nkọ data
Nke a bụ ọkwa na-akwadoghị, na enweghị m ozi ọ bụla n'ime. Dịka ị nwere ike ịhụ ngwa ngwa site na ilele akara adreesị nke ihe nchọgharị gị, akụkọ niile dị na Habré nwere ọnụọgụ na-aga n'ihu. Mgbe ahụ, ọ bụ ihe gbasara usoro, anyị na-agụ naanị isiokwu niile n'usoro n'usoro na okirikiri (na otu eri na nkwụsịtụ, ka ị ghara ibu ihe nkesa). E nwetara ụkpụrụ ndị ahụ n'onwe ha site na ntụgharị dị mfe na Python (isi mmalite dị ebe a) wee chekwaa ihe dị ka nke a na faịlụ csv:
2019-08-11T22:36Z,https://habr.com/ru/post/463197/,"Blazor + MVVM = Silverlight наносит ответный удар, потому что древнее зло непобедимо",votes:11,votesplus:17,votesmin:6,bookmarks:40,views:5300,comments:73
2019-08-11T05:26Z,https://habr.com/ru/news/t/463199/,"В NASA испытали систему автономного управления одного микроспутника другим",votes:15,votesplus:15,votesmin:0,bookmarks:2,views:1700,comments:7
Nhazi
Maka nyocha anyị ga-eji Python, Pandas na Matplotlib. Ndị na-enweghị mmasị na ọnụ ọgụgụ nwere ike ịgafe akụkụ a wee gaa ozugbo na akụkọ.
Mbụ ị ga-ebuba dataset n'ime ebe nchekwa wee họrọ data maka afọ achọrọ.
import pandas as pd
import datetime
import matplotlib.dates as mdates
from matplotlib.ticker import FormatStrFormatter
from pandas.plotting import register_matplotlib_converters
df = pd.read_csv("habr.csv", sep=',', encoding='utf-8', error_bad_lines=True, quotechar='"', comment='#')
dates = pd.to_datetime(df['datetime'], format='%Y-%m-%dT%H:%MZ')
df['datetime'] = dates
year = 2019
df = df[(df['datetime'] >= pd.Timestamp(datetime.date(year, 1, 1))) & (df['datetime'] < pd.Timestamp(datetime.date(year+1, 1, 1)))]
print(df.shape)
Ọ tụgharịrị na n'afọ a (n'agbanyeghị na ọ kabeghị) n'oge edere, ebipụtala akụkọ 12715. Maka ntụnyere, maka dum 2018 - 15904. N'ozuzu, a otutu - nke a bụ banyere 43 isiokwu kwa ụbọchị (na nke a bụ nanị na a mma rating; ole ngụkọta isiokwu na-ebudatara na-aga adịghị mma ma ọ bụ na-ehichapụ, otu onye nwere ike maa naanị. ma ọ bụ na-atụle nke ọma site na oghere dị n'etiti ihe nchọpụta).
Ka anyị họrọ mpaghara ndị dị mkpa na dataset. Dịka metrik, anyị ga-eji ọnụọgụ nlele, nkọwa, ụkpụrụ ọkwa na ọnụọgụ ibe edokọbara.
def to_float(s):
# "bookmarks:22" => 22.0
num = ''.join(i for i in s if i.isdigit())
return float(num)
def to_int(s):
# "bookmarks:22" => 22
num = ''.join(i for i in s if i.isdigit())
return int(num)
def to_date(dt):
return dt.date()
date = dates.map(to_date, na_action=None)
views = df["views"].map(to_int, na_action=None)
bookmarks = df["bookmarks"].map(to_int, na_action=None)
votes = df["votes"].map(to_float, na_action=None)
votes_up = df["up"].map(to_float, na_action=None)
votes_down = df["down"].map(to_float, na_action=None)
comments = df["comments"].map(to_int, na_action=None)
df['date'] = date
df['views'] = views
df['votes'] = votes
df['bookmarks'] = bookmarks
df['up'] = votes_up
df['down'] = votes_down
Ugbu a agbakwunyela data na dataset ma anyị nwere ike iji ya. Ka anyị na-achịkọta data n'ụbọchị wee were nkezi ụkpụrụ.
Ihe si na ya pụta na-adọrọ mmasị. Dị ka ị na-ahụ, Habr abụrụla ntakịrị "soseji" n'ime afọ. Amaghị m ihe kpatara ya.
Maka ntụnyere, 2018 na-ele anya ntakịrị nro:
N'ozuzu, ahụghị m mbelata ọ bụla dị egwu na ọnụ ọgụgụ akụkọ ebipụtara na 2019 na eserese ahụ. Ọzọkwa, n'ụzọ megidere nke ahụ, o yiri ka ọ na-abawanye ntakịrị kemgbe oge okpomọkụ.
Ma eserese abụọ na-esote na-akụda m ntakịrị.
Nkezi ọnụọgụ nlele kwa edemede:
Nkezi ọkwa kwa edemede:
Dịka ị pụrụ ịhụ, nkezi ọnụ ọgụgụ echiche na-ebelata ntakịrị n'ime afọ. Enwere ike ịkọwa nke a site n'eziokwu ahụ bụ na e depụtabeghị isiokwu ọhụrụ site na engines ọchụchọ, a naghị ahụkwa ha ọtụtụ mgbe. Mana mbelata nke ọkwa ọkwa n'otu akụkọ bụ nke a na-apụghị ịghọta aghọta. Mmetụta ahụ bụ na ndị na-agụ akwụkwọ enweghị oge iji lelee ọtụtụ isiokwu ma ọ bụ na-adịghị ege ntị na ọkwa. Site n'echiche nke mmemme ụgwọ ọrụ onye edemede, omume a adịghị mma.
Site n'ụzọ, nke a emeghị na 2018, na usoro ihe omume bụ karịa ma ọ bụ obere ọbụna.
N'ozuzu, ndị nwe akụrụngwa nwere ihe ha ga-eche.
Ma, ka anyị ghara ikwu banyere ihe mwute. N'ozuzu, anyị nwere ike ịsị na Habr "lanarị" n'oge okpomọkụ na-agbanwe nke ọma, na ọnụ ọgụgụ nke isiokwu ndị dị na saịtị ahụ ebelataghị.
Ntụle
Ugbu a, n'ezie, rating. Ekele dịrị ndị batara na ya. Ka m chetara gị ọzọ na ọkwa ahụ bụ ihe na-akwadoghị, ma eleghị anya, ihe ọ bụla tụfuru m, ma ọ bụrụ na ụfọdụ isiokwu kwesịrị ịdị ebe a, mana ọ bụghị, dee, m ga-eji aka tinye ya. Dị ka ọkwa, m na-eji metrik gbakọọ, nke m chere na ọ bụ ihe na-atọ ụtọ.
Ugh. Enwere m nhọrọ ole na ole na-adọrọ mmasị, mana agaghị m agwụ ndị na-agụ ya.
nkwubi
Mgbe m na-arụ ọkwa ahụ, etinyere m uche na isi ihe abụọ yiri ihe na-adọrọ mmasị.
Nke mbụ, 60% nke elu bụ akụkọ nke ụdị "geektimes". Ma ọ ga-adị ole na ole n'ime ha n'afọ ọzọ, na ihe Habr ga-adị ka na-enweghị akụkọ banyere biya, ohere, ọgwụ, wdg, amaghị m. N'ezie, ndị na-agụ ga-atụfu ihe. Ka ahụ.
Nke abuo, ibe edokọbara n'elu tụgharịrị bụrụ nke dị elu na-atụghị anya ya. Nke a bụ ihe nghọta nke uche; mkpa, mgbe ahụ, a ga-agbakwunye ya na ibe edokọbara gị. Na ebe a bụ kpomkwem kasị ukwuu ịta nke bara uru na oké njọ isiokwu. Echere m na ndị nwe saịtị ahụ kwesịrị iche echiche site na njikọ dị n'etiti ọnụọgụ ibe edokọbara na mmemme ụgwọ ọrụ ma ọ bụrụ na ha chọrọ ịbawanye ụdị akụkọ a na Habré.
Ihe dị ka nke a. Enwere m olileanya na ọ bụ ihe ọmụma.
Ndepụta nke isiokwu tụgharịrị dị ogologo, nke ọma, ọ ga-abụ na ọ ka mma. Obi ụtọ ịgụ onye ọ bụla.