Theory
Dashboard નો છેલ્લો પ્રશ્ન
ResultDesk એ સંબંધો (scatter), વલણો (line) અને આકારો (histogram) ના જવાબ આપ્યા. આચાર્યની છેલ્લી માંગણી સૌથી સાદી લાગતી છે: "એક નજરમાં, આપણે કયા વિષયોમાં સૌથી નબળા છીએ?"
પાંચ વિષય, પાંચ સરેરાશ: DBMS 51, Maths 68, Python 72, Stats 55, English 74.
એક નજર એટલે વાંચવાનું નહીં, આંકડા સરખાવવાના નહીં: ફક્ત એકબીજાની બાજુમાં ઊભેલી ઊંચાઈઓ. પુસ્તકનો સૌથી જૂનો chart બરાબર આ જ કરે છે, અને એ જ છે જેને વાંચતાં બધાને પહેલેથી આવડે છે.
Theory
સંખ્યાઓ માટેની ઓળખપરેડ
પાંચ વિષયોને ઓળખપરેડ ની જેમ બાજુ બાજુ ઊભા રાખો, દરેક પોતાની સરેરાશ જેટલો ઊંચો.
બાકીનું આંખ તરત કરે છે: સૌથી ઊંચો = સૌથી મજબૂત, સૌથી નીચો = સૌથી નબળો, ઊંચાઈ વચ્ચેની ખાલી જગ્યા = એ ખરેખર કેટલા દૂર છે. આંકડા ફેંદવાના નહીં, મનમાં ગણિત નહીં. Bar chart એ મૂલ્યો માટેની ઓળખપરેડ છે: દરેક શ્રેણી દીઠ એક સ્તંભ, ઊંચાઈ એ જુબાની.
Theory
Bar chart, ઔપચારિક રીતે
plt.bar(categories, values) દરેક શ્રેણી દીઠ એક છૂટો સ્તંભ દોરે છે, ઊંચાઈ = મૂલ્ય.
x અક્ષ અલગ લેબલ ધરાવે છે (વિષયો, શહેરો, જૂથ તરીકે semesters): એમનો ક્રમ તમારી પસંદગીનો છે, અને મૂલ્ય પ્રમાણે ગોઠવવાથી સામાન્ય રીતે સૌથી સારું વંચાય છે.
નામ આપવા લાયક બે પ્રકાર:
plt.barh(categories, values): આડા સ્તંભ: લાંબાં શ્રેણીનાં નામ માટેનો ઉકેલ.- બે પરિબળની સરખામણી માટે જૂથબદ્ધ/ખડકાયેલા સ્તંભ છે: એ છે એટલું જાણો, પછી સિદ્ધ કરો.
પ્રામાણિકતાનો એક નિયમ: bar charts એ પોતાનો મૂલ્યનો અક્ષ શૂન્ય થી શરૂ કરવો જોઈએ: સ્તંભનું ક્ષેત્રફળ મૂલ્ય દર્શાવે છે, અને કાપેલો અક્ષ ભેદ ફુલાવે છે.
Practical
સૌથી નબળા વિષયની ઓળખપરેડ
import matplotlib.pyplot as plt
import pandas as pd
df = pd.read_csv('marks.csv')
# the aggregate: average score per subject (Unit 1's GROUP BY, pandas-style)
avg = df.groupby('subject')['score'].mean().sort_values()
plt.bar(avg.index, avg.values) # categories, heights
plt.title('Average score by subject')
plt.xlabel('Subject')
plt.ylabel('Average score')
plt.show()
# long subject names? go horizontal:
# plt.barh(avg.index, avg.values)
# the pandas shortcut, one line, same chart:
# df.groupby('subject')['score'].mean().plot(kind='bar')
This example runs in Gri-Learn on the web, where you can edit it and see the output.
Quiz
દરેક **વિષય** દીઠ સરેરાશ score (પાંચ વિષય) એક નજરમાં સરખાવવો છે. Histogram કરતાં bar chart કેમ સાચી પસંદગી છે?
- વિષયો સરખાવવા માટેની અલગ શ્રેણીઓ છે; histogram એને બદલે એક સળંગ variable ને bins માં વહેંચે છે
- Histograms 50 થી ઉપરની સરેરાશ દેખાડી શકતાં નથી
- Bar charts હંમેશા histograms કરતાં સારા છે
- Histogram ને bins= જોઈએ જે પસંદ કરવું બહુ અઘરું છે
Show the answer
વિષયો સરખાવવા માટેની અલગ શ્રેણીઓ છે; histogram એને બદલે એક સળંગ variable ને bins માં વહેંચે છે
અહીં x અક્ષ પાંચ અલગ શ્રેણીઓ છે, દરેક એક સંકલિત મૂલ્ય વહન કરતી: bar chart ની બરાબર વ્યાખ્યા. Histogram જુદા પ્રશ્નનો જવાબ આપે છે (એક numeric ખાનાનાં મૂલ્યો કેવી રીતે વહેંચાયેલાં છે?): એની પાસે "DBMS સામે Maths" નો કોઈ ખ્યાલ જ નથી. વિકલ્પ B અને D મર્યાદાઓ ઉપજાવે છે; વિકલ્પ C એવો સંપૂર્ણ દાવો છે જે marks ગુમાવે છે: charts પ્રશ્નો માટે સાચા હોય છે, સામાન્ય રીતે ક્યારેય નહીં.
Think first
Chart પસંદ કરો, ચાર વાર
આ એકમની અંતિમ પરીક્ષા. દરેક માટે scatter, line, histogram કે bar પસંદ કરો: (1) 200 students માં અભ્યાસના કલાક સામે CGPA; (2) 2020 થી 2026 વર્ષવાર college ના પ્રવેશ; (3) એક વર્ગમાં Python ના scores નો ફેલાવો; (4) 8 વિષયોમાંના દરેકનો સરેરાશ score. Tap કરતાં પહેલાં ચારેયના જવાબ આપો.
Show the answer
(1) Scatter: નોંધો પાર બે માપ વચ્ચેનો સંબંધ.
(2) Line: ક્રમબદ્ધ (સમય) અક્ષ પરનું વલણ.
(3) Histogram: એક numeric variable નું distribution.
(4) Bar: અલગ શ્રેણીઓ પાર સરખામણી.
ચારેય સાચા = આખો એકમ એક પ્રતિભાવમાં સંકોચાયેલો: chart ને પ્રશ્ન સાથે મેળવો, data ની સુંદરતા સાથે નહીં. આ ચાર-માર્ગી પસંદગી ખાતરીબદ્ધ પરીક્ષા અને interview નો પ્રશ્ન છે.
Watch out
પ્રામાણિકતાના નિયમો
સ્તંભ શૂન્યથી શરૂ કરો: 45 થી 75 નો y અક્ષ DBMS (51) ને English (74) ની ઊંચાઈના ત્રીજા ભાગ જેવો દેખાડે છે: દૃશ્યનું જૂઠ: ખરેખરો ગુણોત્તર 0.69 છે, 0.33 નહીં.
સમયના વલણને bar chart ન બનાવો ફક્ત એટલા માટે કે સ્તંભ નક્કર દેખાય છે: line chart નો ઢાળ વલણની કથા વધુ સારી રીતે કહે છે.
અને વારંવારની ગૂંચવણ: સ્તંભ છૂટા = શ્રેણીઓ (bar chart); સ્તંભ અડે = bins માં વહેંચાયેલી સંખ્યારેખા (histogram).
Theory
ResultDesk, પૂરું
પાછળ ખસીને 26 વિષયોમાં તમે જે બાંધ્યું એ જુઓ: પ્રશ્નોના જવાબ આપતું SQL, આપત્તિમાં ટકતાં backups, એને આપોઆપ કરતું Python, એનું વિશ્લેષણ કરતું pandas, અને આખા ઓરડાને સમજાવતા ચાર charts. એ pipeline (સંઘરો, query કરો, પ્રક્રિયા કરો, ચિત્રિત કરો) ફક્ત આ વિષયનો અભ્યાસક્રમ નથી: એ ઉદ્યોગની દરેક data ની ભૂમિકાનો આકાર છે. આગલા semester ના ખાનાનું BCA302 આંકડાશાસ્ત્ર ઊંડું કરે છે; ઓજારપેટી પહેલેથી તમારી છે.
Summary
Key takeaways
- plt.bar(categories, values): દરેક શ્રેણી દીઠ એક છૂટો સ્તંભ, ઊંચાઈ = મૂલ્ય.
- અલગ શ્રેણીઓ પાર સંકલિત મૂલ્ય સરખાવવા વાપરો; વાંચવાની સરળતા માટે મૂલ્ય પ્રમાણે ગોઠવો.
- plt.barh() આડું જાય છે: લાંબાં લેબલ માટેનો ઉકેલ.
- સ્તંભના મૂલ્યના અક્ષ શૂન્યથી શરૂ થવા જોઈએ: કાપવાથી ભેદ દૃશ્યની રીતે ફૂલે છે.
- ચાર-chart નો પ્રતિભાવ: scatter = સંબંધ, line = વલણ, histogram = distribution, bar = શ્રેણીની સરખામણી.
- pandas નો ટૂંકો રસ્તો: df.groupby(...).mean().plot(kind='bar').
- Memory hook: સંખ્યાઓ માટેની ઓળખપરેડ.