Theory
એક વર્ગ, ત્રણ જુદી "સરેરાશ"
ResultDesk માં DBMS ના પાંચ scores આવે છે: 35, 40, 45, 50, 90.
વર્ગ પ્રતિનિધિ જાહેર કરે છે: "વર્ગની સરેરાશ 52!" પાંચમાંથી ચાર students એ સરેરાશથી નીચે score મેળવ્યો. મોટા ભાગનો વર્ગ સરેરાશથી નીચે કેવી રીતે હોઈ શકે?
એક તેજસ્વી outlier (એ 90) એ સરેરાશને ઉપર ખેંચી. Data નો સારાંશ એક જ સંખ્યાથી આપવો એ પસંદગી છે, અને ત્રણ જાણીતી પસંદગી (સરેરાશ, મધ્યસ્થ, બહુલક) એ જ marks વિશે ત્રણ જુદી કથા કહી શકે છે.
Theory
એક જ પરીક્ષાખંડે ત્રણ પત્રકાર
ત્રણ પત્રકારો એ જ પરિણામનો સારાંશ આપે છે:
- હિસાબનીશ (સરેરાશ): બધું સરવાળે છે, ગણતરીથી ભાગે છે: ચોકસાઈવાળું, પણ ગામમાં એક કરોડપતિ હોય તો "સરેરાશ ગ્રામીણ" ધનવાન થઈ જાય છે.
- હરોળ જોનાર (મધ્યસ્થ): બધાને હરોળમાં ઊભા રાખે છે, વચલી વ્યક્તિ જણાવે છે: outliers વચલાને ખસેડી શકતા નથી.
- ભીડ ગણનાર (બહુલક): સૌથી વારંવાર આવે એ જણાવે છે: એકમાત્ર જે સંખ્યા સિવાયનાનો પણ સારાંશ આપી શકે (સૌથી સામાન્ય grade: 'B').
Theory
ત્રણેય, ઔપચારિક રીતે (આપણા પાંચ scores પર ગણેલા)
Scores: 35, 40, 45, 50, 90.
સરેરાશ = સરવાળો ÷ ગણતરી = 260 ÷ 5 = 52.
મધ્યસ્થ = ક્રમમાં ગોઠવ્યા પછીનું વચલું મૂલ્ય: 35, 40, 45, 50, 90 → 45. (બેકી ગણતરી? બે વચલાં મૂલ્યોની સરેરાશ લો.)
બહુલક = સૌથી વારંવારનું મૂલ્ય. અહીં દરેક score એક વાર આવે છે: કોઈ ઉપયોગી બહુલક નહીં. 55, 60, 60, 70 માં: બહુલક = 60.
Outlier નો નિયમ: સરેરાશ outliers પાછળ દોડે છે, મધ્યસ્થ એમને અવગણે છે: જ્યારે સરેરાશ અને મધ્યસ્થ તીવ્ર રીતે અસંમત થાય, ત્યારે data માં outlier છુપાયેલો છે.
Theory
ફેલાવો: વિચરણ અને પ્રમાણિત વિચલન
બે વર્ગની સરેરાશ 60 હોઈ શકે: એક 58 થી 62 નો score કરતો, બીજો 20 થી 95. ખૂટતી સંખ્યા છે ફેલાવો.
વિચરણ = સરેરાશથીનાં વર્ગ કરેલાં વિચલનની સરેરાશ (વર્ગ કરવાથી + અને - વિચલન રદ થતાં અટકે છે).
પ્રમાણિત વિચલન (SD) = √વિચરણ, જે સંખ્યાને marks ના એકમ માં પાછી લાવે છે: 4 નું SD એટલે scores સામાન્ય રીતે સરેરાશથી લગભગ 4 marks દૂર બેસે છે.
નાનું SD = સાતત્યપૂર્ણ વર્ગ. મોટું SD = એક જ સરેરાશ પહેરેલો ટોપર અને સંઘર્ષ કરનારાઓનો વર્ગ.
Practical
પાંચેય, દરેક એક લીટીમાં
import pandas as pd
df = pd.read_csv('marks.csv')
dbms = df[df['subject'] == 'DBMS']['score'] # last lesson's slicing
print(dbms.mean()) # 52.0
print(dbms.median()) # 45.0
print(dbms.mode()) # a Series: there can be MULTIPLE modes
print(dbms.var()) # variance (sample formula: divides by n-1)
print(dbms.std()) # standard deviation, in marks
# the one-call summary: count, mean, std, min, quartiles, max
print(dbms.describe())
# numpy note: np.std(dbms) divides by n (population formula),
# so it gives a slightly SMALLER answer than dbms.std(). Name
# your formula in exams: sample (n-1) vs population (n).
This example runs in Gri-Learn on the web, where you can edit it and see the output.
Quiz
Scores 35, 40, 45, 50, 90: સરેરાશ 52, મધ્યસ્થ 45. શિષ્યવૃત્તિ માટે "સામાન્ય student નો score" જોઈએ. કયું માપ અને કેમ?
- મધ્યસ્થ 45: outlier 90 સરેરાશને 5 માંથી 4 students થી ઉપર ખેંચે છે, મધ્યસ્થ એની સામે ટકે છે
- સરેરાશ 52: એ દરેક મૂલ્ય વાપરે છે, એટલે એ હંમેશા વધુ સચોટ છે
- બહુલક: marks માટે એ હંમેશા શ્રેષ્ઠ માપ છે
- વિચરણ: એ સામાન્ય score સીધો દેખાડે છે
Show the answer
મધ્યસ્થ 45: outlier 90 સરેરાશને 5 માંથી 4 students થી ઉપર ખેંચે છે, મધ્યસ્થ એની સામે ટકે છે
"સામાન્ય" એ કેન્દ્ર માંગે છે જેની પાસે બહુમતી ખરેખર બેસે છે: ટોપર ગમે તેટલો ભવ્ય હોય, મધ્યસ્થ 45 પર જ રહે છે, જ્યારે સરેરાશ 52 સુધી ખેંચાઈ ગઈ, વર્ગના 80% થી ઉપર. વિકલ્પ B નું 'દરેક મૂલ્ય વાપરે છે' બરાબર એ જ કારણ છે કે અહીં સરેરાશ નાજુક છે. બધા જુદા scores પર બહુલક નકામો છે, અને વિચરણ ફેલાવો માપે છે, કેન્દ્ર નહીં: આ બે કુટુંબ ભેળવવાં એ જાણીતી પરીક્ષાની લપસણ છે.
Think first
એક હાથે ગણો (પરીક્ષાઓ આ માંગે છે)
Scores: 4, 8, 6, 2 (જાણીજોઈને નાની સંખ્યાઓ). કાગળ પર: સરેરાશ ગણો, પછી ચાર વિચલન, પછી વસ્તીનું વિચરણ (n થી ભાગો) અને SD. સમય લો, પછી tap કરો.
Show the answer
સરેરાશ = (4+8+6+2) ÷ 4 = 5.
વિચલન: -1, +3, +1, -3. વર્ગ: 1, 9, 1, 9. સરવાળો = 20.
વસ્તીનું વિચરણ = 20 ÷ 4 = 5. SD = √5 ≈ 2.24.
(નમૂનાનું સૂત્ર n-1 = 3 થી ભાગત: વિચરણ ≈ 6.67, SD ≈ 2.58: pandas નું default.) જો વર્ગ કરતાં પહેલાં તમારાં વિચલનનો સરવાળો શૂન્ય ન થયો હોય (-1+3+1-3 = 0), તો સરેરાશ ફરી તપાસો: એ શૂન્ય-સરવાળો જ જડેલી ભૂલની તપાસ છે.
Watch out
Marks ક્યાં ગળે છે
ક્રમમાં ગોઠવ્યા વગર મધ્યસ્થ: અગોઠવાયેલી યાદીનું વચલું અર્થહીન છે: પહેલાં ગોઠવો, હંમેશા.
mode() એ Series આપે છે: સૌથી વારંવારના સ્થાને અનેક મૂલ્યો બરાબરી કરી શકે; એક જ સંખ્યા ધારી ન લો.
pandas સામે numpy: .std() n-1 થી ભાગે છે (નમૂનો), np.std એ n થી (વસ્તી): બે "સાચા" જવાબ જે જુદા પડે છે. પરીક્ષામાં, તમે વાપરેલા સૂત્રનું નામ આપો.
Theory
આ BCA302 વહેલું ટકોરા મારે છે
આગલા semester ના ખાનાનો વિષય BCA302 (Statistical Methods) બધું આ પાંચ સંખ્યાઓ પર બાંધે છે: વિષમતા, સહસંબંધ, distributions. તમારા પોતાના marks ના data પર ચાલતાં એમને અહીં મળવું જાણીજોઈને છે: તમે બનાવેલા data પર શીખેલું આંકડાશાસ્ત્ર પાઠ્યપુસ્તકનાં કોષ્ટકો પર શીખેલા આંકડાશાસ્ત્રથી ચડિયાતું છે. આગલો પાઠ: DataFrame ની તપાસની ઓજારપેટી (head, tail, loc, iloc, describe): રોજિંદાં functions.
Summary
Key takeaways
- સરેરાશ = સરવાળો/ગણતરી: બધાં મૂલ્યો વાપરે છે, outliers થી ખેંચાય છે; મધ્યસ્થ = ક્રમમાં ગોઠવેલા data નું વચલું: outlier સામે અડગ.
- બહુલક = સૌથી વારંવારનું મૂલ્ય કે મૂલ્યો: શ્રેણીઓ પર ચાલે છે; અનેક હોઈ શકે.
- સરેરાશ મધ્યસ્થથી ઘણી દૂર = કોઈ outlier છુપાયેલો છે.
- વિચરણ = સરેરાશથી સરેરાશ વર્ગ કરેલું વિચલન; SD = એનું વર્ગમૂળ, marks ના એકમમાં પાછું.
- pandas: .mean() .median() .mode() .var() .std(), અને પૂરા સારાંશ માટે .describe().
- pandas n-1 થી ભાગે છે (નમૂનો); numpy n થી (વસ્તી): તમારા સૂત્રનું નામ આપો.
- Memory hook: હિસાબનીશ, હરોળ જોનાર, ભીડ ગણનાર.