28 KiB
AGENTS.md
ప్రాజెక్ట్ అవలోకనం
డేటా సైన్స్ ఫర్ బిగినర్స్ అనేది Microsoft Azure క్లౌడ్ అడ్వకేట్స్ రూపొందించిన సమగ్ర 10 వారాల, 20 పాఠాల పాఠ్యక్రమం. ఈ రిపోజిటరీ ప్రాజెక్ట్-ఆధారిత పాఠాల ద్వారా ప్రాథమిక డేటా సైన్స్ కాన్సెప్ట్లను నేర్పే ఒక అభ్యాస వనరు, ఇందులో Jupyter నోట్బుక్స్, ఇంటరాక్టివ్ క్విజ్లు మరియు హ్యాండ్స్-ఆన్ అసైన్మెంట్లు ఉన్నాయి.
ప్రధాన సాంకేతికతలు:
- Jupyter నోట్బుక్స్: Python 3 ఉపయోగించి ప్రాథమిక అభ్యాస మాధ్యమం
- Python లైబ్రరీలు: pandas, numpy, matplotlib డేటా విశ్లేషణ మరియు విజువలైజేషన్ కోసం
- Vue.js 2: క్విజ్ అప్లికేషన్ (quiz-app ఫోల్డర్)
- Docsify: ఆఫ్లైన్ యాక్సెస్ కోసం డాక్యుమెంటేషన్ సైట్ జనరేటర్
- Node.js/npm: జావాస్క్రిప్ట్ భాగాల కోసం ప్యాకేజ్ నిర్వహణ
- Markdown: అన్ని పాఠాల కంటెంట్ మరియు డాక్యుమెంటేషన్
ఆర్కిటెక్చర్:
- విస్తృత అనువాదాలతో బహుభాషా విద్యా రిపోజిటరీ
- పాఠ మాడ్యూల్స్గా నిర్మించబడింది (1-Introduction నుండి 6-Data-Science-In-Wild వరకు)
- ప్రతి పాఠం README, నోట్బుక్స్, అసైన్మెంట్లు మరియు క్విజ్లను కలిగి ఉంటుంది
- పాఠం ముందు/తర్వాత అంచనాలకు స్వతంత్ర Vue.js క్విజ్ అప్లికేషన్
- GitHub Codespaces మరియు VS Code డెవ్ కంటైనర్లు మద్దతు
సెటప్ కమాండ్లు
రిపోజిటరీ సెటప్
# రిపోజిటరీని క్లోన్ చేయండి (ఇప్పటికే క్లోన్ చేయబడకపోతే)
git clone https://github.com/microsoft/Data-Science-For-Beginners.git
cd Data-Science-For-Beginners
Python ఎన్విరాన్మెంట్ సెటప్
# వర్చువల్ ఎన్విరాన్మెంట్ సృష్టించండి (సిఫార్సు చేయబడింది)
python -m venv venv
source venv/bin/activate # విండోస్లో: venv\Scripts\activate
# సాధారణ డేటా సైన్స్ లైబ్రరీలను ఇన్స్టాల్ చేయండి (requirements.txt లేదు)
pip install jupyter pandas numpy matplotlib seaborn scikit-learn
క్విజ్ అప్లికేషన్ సెటప్
# క్విజ్ యాప్కు నావిగేట్ చేయండి
cd quiz-app
# డిపెండెన్సీలను ఇన్స్టాల్ చేయండి
npm install
# డెవలప్మెంట్ సర్వర్ను ప్రారంభించండి
npm run serve
# ఉత్పత్తి కోసం బిల్డ్ చేయండి
npm run build
# ఫైళ్లను లింట్ చేసి సరిచేయండి
npm run lint
Docsify డాక్యుమెంటేషన్ సర్వర్
# Docsifyని గ్లోబల్గా ఇన్స్టాల్ చేయండి
npm install -g docsify-cli
# డాక్యుమెంటేషన్ను లోకల్గా సర్వ్ చేయండి
docsify serve
# డాక్యుమెంటేషన్ localhost:3000 వద్ద అందుబాటులో ఉంటుంది
విజువలైజేషన్ ప్రాజెక్ట్లు సెటప్
meaningful-visualizations (పాఠం 13) వంటి విజువలైజేషన్ ప్రాజెక్ట్ల కోసం:
# స్టార్టర్ లేదా సొల్యూషన్ ఫోల్డర్కు నావిగేట్ చేయండి
cd 3-Data-Visualization/13-meaningful-visualizations/starter
# డిపెండెన్సీలను ఇన్స్టాల్ చేయండి
npm install
# డెవలప్మెంట్ సర్వర్ను ప్రారంభించండి
npm run serve
# ప్రొడక్షన్ కోసం బిల్డ్ చేయండి
npm run build
# ఫైళ్లను లింట్ చేయండి
npm run lint
అభివృద్ధి వర్క్ఫ్లో
Jupyter నోట్బుక్స్తో పని చేయడం
- రిపోజిటరీ రూట్లో Jupyter ప్రారంభించండి:
jupyter notebook - కావలసిన పాఠం ఫోల్డర్కు వెళ్లండి
- వ్యాయామాలు చేయడానికి
.ipynbఫైళ్లను తెరవండి - నోట్బుక్స్ స్వీయ-సంపూర్ణంగా ఉంటాయి, వివరణలు మరియు కోడ్ సెల్స్తో
- ఎక్కువ నోట్బుక్స్ pandas, numpy, matplotlib ఉపయోగిస్తాయి - వీటిని ఇన్స్టాల్ చేసుకున్నారా అని నిర్ధారించుకోండి
పాఠ నిర్మాణం
ప్రతి పాఠం సాధారణంగా కలిగి ఉంటుంది:
README.md- సిద్ధాంతం మరియు ఉదాహరణలతో ప్రధాన పాఠ కంటెంట్notebook.ipynb- హ్యాండ్స్-ఆన్ Jupyter నోట్బుక్ వ్యాయామాలుassignment.ipynbలేదాassignment.md- ప్రాక్టీస్ అసైన్మెంట్లుsolution/ఫోల్డర్ - పరిష్కార నోట్బుక్స్ మరియు కోడ్images/ఫోల్డర్ - మద్దతు విజువల్ మెటీరియల్స్
క్విజ్ అప్లికేషన్ అభివృద్ధి
- అభివృద్ధి సమయంలో హాట్-రిలోడ్తో Vue.js 2 అప్లికేషన్
- క్విజ్లు
quiz-app/src/assets/translations/లో నిల్వ ఉంటాయి - ప్రతి భాషకు తన స్వంత అనువాద ఫోల్డర్ ఉంటుంది (en, fr, es, మొదలైనవి)
- క్విజ్ సంఖ్య 0 నుండి 39 వరకు ఉంటుంది (మొత్తం 40 క్విజ్లు)
అనువాదాలు జోడించడం
- అనువాదాలు రిపోజిటరీ రూట్లోని
translations/ఫోల్డర్లో ఉంటాయి - ప్రతి భాషకు ఇంగ్లీష్ నుండి పూర్తి పాఠ నిర్మాణం ప్రతిబింబిస్తుంది
- GitHub Actions ద్వారా ఆటోమేటెడ్ అనువాదం (co-op-translator.yml)
పరీక్షా సూచనలు
క్విజ్ అప్లికేషన్ పరీక్ష
cd quiz-app
# లింట్ తనిఖీలు నిర్వహించండి
npm run lint
# బిల్డ్ ప్రక్రియను పరీక్షించండి
npm run build
# మాన్యువల్ పరీక్ష: డెవ్ సర్వర్ ప్రారంభించి క్విజ్ ఫంక్షనాలిటీని ధృవీకరించండి
npm run serve
నోట్బుక్ పరీక్ష
- నోట్బుక్స్ కోసం ఆటోమేటెడ్ టెస్ట్ ఫ్రేమ్వర్క్ లేదు
- మాన్యువల్ ధృవీకరణ: అన్ని సెల్స్ను వరుసగా నడపండి, ఎలాంటి లోపాలు లేవని నిర్ధారించండి
- డేటా ఫైళ్లు అందుబాటులో ఉన్నాయా మరియు అవుట్పుట్లు సరిగ్గా ఉత్పత్తి అవుతున్నాయా అని తనిఖీ చేయండి
- విజువలైజేషన్లు సరిగ్గా ప్రదర్శించబడుతున్నాయా అని చూడండి
డాక్యుమెంటేషన్ పరీక్ష
# Docsify సరిగా ప్రదర్శించబడుతున్నదని నిర్ధారించండి
docsify serve
# కంటెంట్ ద్వారా నావిగేట్ చేసి చేతితో బ్రోకెన్ లింకులను తనిఖీ చేయండి
# ప్రదర్శించబడిన డాక్యుమెంటేషన్లో అన్ని పాఠం లింకులు పనిచేస్తున్నాయో లేదో నిర్ధారించండి
కోడ్ నాణ్యత తనిఖీలు
# Vue.js ప్రాజెక్టులు (quiz-app మరియు విజువలైజేషన్ ప్రాజెక్టులు)
cd quiz-app # లేదా విజువలైజేషన్ ప్రాజెక్ట్ ఫోల్డర్
npm run lint
# Python నోట్బుక్స్ - మాన్యువల్ ధృవీకరణ సిఫార్సు చేయబడింది
# దిగుమతులు పనిచేస్తున్నాయో మరియు సెల్స్ లోపాలు లేకుండా అమలు అవుతున్నాయో నిర్ధారించుకోండి
కోడ్ శైలి మార్గదర్శకాలు
Python (Jupyter నోట్బుక్స్)
- Python కోడ్ కోసం PEP 8 శైలి మార్గదర్శకాలను అనుసరించండి
- విశ్లేషిస్తున్న డేటాను వివరించే స్పష్టమైన వేరియబుల్ పేర్లను ఉపయోగించండి
- కోడ్ సెల్స్ ముందు వివరణలతో markdown సెల్స్ చేర్చండి
- కోడ్ సెల్స్ను ఒక్కో కాన్సెప్ట్ లేదా ఆపరేషన్పై కేంద్రీకరించండి
- డేటా మానిప్యులేషన్ కోసం pandas, విజువలైజేషన్ కోసం matplotlib ఉపయోగించండి
- సాధారణ ఇంపోర్ట్ నమూనా:
import pandas as pd import numpy as np import matplotlib.pyplot as plt
JavaScript/Vue.js
- Vue.js 2 శైలి గైడ్ మరియు ఉత్తమ పద్ధతులను అనుసరించండి
quiz-app/package.jsonలో ESLint కాన్ఫిగరేషన్- Vue సింగిల్-ఫైల్ కంపోనెంట్స్ (.vue ఫైళ్లు) ఉపయోగించండి
- కంపోనెంట్-ఆధారిత ఆర్కిటెక్చర్ను నిర్వహించండి
- మార్పులు కమిట్ చేయడానికి ముందు
npm run lintనడపండి
Markdown డాక్యుమెంటేషన్
- స్పష్టమైన హెడ్డింగ్స్ హైరార్కీ ఉపయోగించండి (# ## ### మొదలైనవి)
- భాష స్పెసిఫైయర్లతో కోడ్ బ్లాక్స్ చేర్చండి
- చిత్రాలకు alt టెక్స్ట్ జోడించండి
- సంబంధిత పాఠాలు మరియు వనరులకు లింక్ చేయండి
- చదవడానికి సౌకర్యంగా ఉండేలా లైన్ పొడవులు పరిమితం చేయండి
ఫైల్ ఆర్గనైజేషన్
- పాఠ కంటెంట్ సంఖ్యల ఫోల్డర్లలో (01-defining-data-science, మొదలైనవి)
- పరిష్కారాలు ప్రత్యేక
solution/సబ్ఫోల్డర్లలో - అనువాదాలు ఇంగ్లీష్ నిర్మాణాన్ని
translations/ఫోల్డర్లో ప్రతిబింబిస్తాయి - డేటా ఫైళ్లు
data/లేదా పాఠ-స్పెసిఫిక్ ఫోల్డర్లలో ఉంచండి
బిల్డ్ మరియు డిప్లాయ్మెంట్
క్విజ్ అప్లికేషన్ డిప్లాయ్మెంట్
cd quiz-app
# ఉత్పత్తి సంస్కరణను నిర్మించండి
npm run build
# అవుట్పుట్ dist/ ఫోల్డర్లో ఉంటుంది
# dist/ ఫోల్డర్ను స్థిర హోస్టింగ్కు (Azure Static Web Apps, Netlify, మొదలైనవి) పంపండి
Azure Static Web Apps డిప్లాయ్మెంట్
quiz-app ను Azure Static Web Apps కు డిప్లాయ్ చేయవచ్చు:
- Azure Static Web App వనరు సృష్టించండి
- GitHub రిపోజిటరీకి కనెక్ట్ అవ్వండి
- బిల్డ్ సెట్టింగ్స్ కాన్ఫిగర్ చేయండి:
- యాప్ లొకేషన్:
quiz-app - అవుట్పుట్ లొకేషన్:
dist
- యాప్ లొకేషన్:
- GitHub Actions వర్క్ఫ్లో పుష్ చేసినప్పుడు ఆటోమేటిక్ డిప్లాయ్ చేస్తుంది
డాక్యుమెంటేషన్ సైట్
# Docsify నుండి PDF నిర్మించండి (ఐచ్ఛికం)
npm run convert
# Docsify డాక్యుమెంటేషన్ నేరుగా మార్క్డౌన్ ఫైళ్ల నుండి అందించబడుతుంది
# డిప్లాయ్మెంట్ కోసం ఎలాంటి బిల్డ్ దశ అవసరం లేదు
# Docsify తో రిపాజిటరీని స్థిర హోస్టింగ్కు డిప్లాయ్ చేయండి
GitHub Codespaces
- రిపోజిటరీ డెవ్ కంటైనర్ కాన్ఫిగరేషన్ను కలిగి ఉంటుంది
- Codespaces ఆటోమేటిక్గా Python మరియు Node.js ఎన్విరాన్మెంట్ సెట్ చేస్తుంది
- GitHub UI ద్వారా Codespace లో రిపోజిటరీని ఓపెన్ చేయండి
- అన్ని డిపెండెన్సీలు ఆటోమేటిక్గా ఇన్స్టాల్ అవుతాయి
పుల్ రిక్వెస్ట్ మార్గదర్శకాలు
సమర్పించే ముందు
# quiz-app లో Vue.js మార్పుల కోసం
cd quiz-app
npm run lint
npm run build
# మార్పులను స్థానికంగా పరీక్షించండి
npm run serve
PR టైటిల్ ఫార్మాట్
- స్పష్టమైన, వివరణాత్మక శీర్షికలు ఉపయోగించండి
- ఫార్మాట్:
[Component] సంక్షిప్త వివరణ - ఉదాహరణలు:
[Lesson 7] Python నోట్బుక్ ఇంపోర్ట్ లోపం సరిచేయండి[Quiz App] జర్మన్ అనువాదం జోడించండి[Docs] READMEని కొత్త ప్రీరిక్విజిట్స్తో నవీకరించండి
అవసరమైన తనిఖీలు
- అన్ని కోడ్ లోపాలు లేకుండా నడవాలి
- నోట్బుక్స్ పూర్తిగా ఎగ్జిక్యూట్ అవ్వాలి
- Vue.js అప్లికేషన్లు విజయవంతంగా బిల్డ్ అవ్వాలి
- డాక్యుమెంటేషన్ లింకులు పనిచేయాలి
- క్విజ్ అప్లికేషన్ మార్చినట్లయితే పరీక్షించాలి
- అనువాదాలు సరిగా నిర్మాణాన్ని కాపాడుతున్నాయా అని ధృవీకరించండి
సహకార మార్గదర్శకాలు
- ఉన్న కోడ్ శైలి మరియు నమూనాలను అనుసరించండి
- క్లిష్టమైన లాజిక్ కోసం వివరణాత్మక వ్యాఖ్యలు జోడించండి
- సంబంధిత డాక్యుమెంటేషన్ను నవీకరించండి
- అవసరమైతే వివిధ పాఠ మాడ్యూల్స్లో మార్పులను పరీక్షించండి
- CONTRIBUTING.md ఫైల్ను సమీక్షించండి
అదనపు గమనికలు
సాధారణంగా ఉపయోగించే లైబ్రరీలు
- pandas: డేటా మానిప్యులేషన్ మరియు విశ్లేషణ
- numpy: సంఖ్యాత్మక కంప్యూటింగ్
- matplotlib: డేటా విజువలైజేషన్ మరియు ప్లాటింగ్
- seaborn: గణాంక డేటా విజువలైజేషన్ (కొన్ని పాఠాలు)
- scikit-learn: మెషీన్ లెర్నింగ్ (అధిక స్థాయి పాఠాలు)
డేటా ఫైళ్లతో పని చేయడం
- డేటా ఫైళ్లు
data/ఫోల్డర్ లేదా పాఠ-స్పెసిఫిక్ డైరెక్టరీలలో ఉంటాయి - ఎక్కువ నోట్బుక్స్ డేటా ఫైళ్లను రిలేటివ్ పాత్లలో ఆశిస్తాయి
- CSV ఫైళ్లు ప్రాథమిక డేటా ఫార్మాట్
- కొన్ని పాఠాలు JSON ను నాన్-రిలేషనల్ డేటా ఉదాహరణల కోసం ఉపయోగిస్తాయి
బహుభాషా మద్దతు
- 40+ భాషల అనువాదాలు ఆటోమేటెడ్ GitHub Actions ద్వారా
- అనువాద వర్క్ఫ్లో
.github/workflows/co-op-translator.ymlలో ఉంది - అనువాదాలు
translations/ఫోల్డర్లో భాషా కోడ్స్తో - క్విజ్ అనువాదాలు
quiz-app/src/assets/translations/లో
అభివృద్ధి వాతావరణ ఎంపికలు
- లోకల్ అభివృద్ధి: Python, Jupyter, Node.js స్థానికంగా ఇన్స్టాల్ చేయండి
- GitHub Codespaces: క్లౌడ్ ఆధారిత తక్షణ అభివృద్ధి వాతావరణం
- VS Code డెవ్ కంటైనర్లు: స్థానిక కంటైనర్ ఆధారిత అభివృద్ధి
- Binder: నోట్బుక్స్ను క్లౌడ్లో ప్రారంభించండి (కాన్ఫిగర్ చేసినట్లయితే)
పాఠ కంటెంట్ మార్గదర్శకాలు
- ప్రతి పాఠం స్వతంత్రంగా ఉంటుంది కానీ గత కాన్సెప్ట్లపై ఆధారపడి ఉంటుంది
- పాఠం ముందు క్విజ్లు ముందస్తు జ్ఞానాన్ని పరీక్షిస్తాయి
- పాఠం తర్వాత క్విజ్లు అభ్యాసాన్ని బలోపేతం చేస్తాయి
- అసైన్మెంట్లు హ్యాండ్స్-ఆన్ ప్రాక్టీస్ అందిస్తాయి
- స్కెచ్నోట్లు విజువల్ సారాంశాలను అందిస్తాయి
సాధారణ సమస్యల పరిష్కారం
Jupyter కర్నెల్ సమస్యలు:
# సరైన కర్నెల్ ఇన్స్టాల్ చేయబడిందని నిర్ధారించుకోండి
python -m ipykernel install --user --name=datascience
npm ఇన్స్టాల్ విఫలమవడం:
# npm క్యాష్ను క్లియర్ చేసి మళ్లీ ప్రయత్నించండి
npm cache clean --force
rm -rf node_modules package-lock.json
npm install
నోట్బుక్స్లో ఇంపోర్ట్ లోపాలు:
- అవసరమైన అన్ని లైబ్రరీలు ఇన్స్టాల్ అయ్యాయా అని తనిఖీ చేయండి
- Python వెర్షన్ అనుకూలత (Python 3.7+ సిఫార్సు)
- వర్చువల్ ఎన్విరాన్మెంట్ యాక్టివేట్ అయిందా అని నిర్ధారించుకోండి
Docsify లోడ్ అవ్వడం లేదు:
- మీరు రిపోజిటరీ రూట్ నుండి సర్వ్ చేస్తున్నారా అని తనిఖీ చేయండి
index.htmlఉందా అని చూడండి- సరైన నెట్వర్క్ యాక్సెస్ (పోర్ట్ 3000) ఉందా అని నిర్ధారించండి
పనితీరు పరిగణనలు
- పెద్ద డేటాసెట్లు నోట్బుక్స్లో లోడ్ అవ్వడానికి సమయం తీసుకోవచ్చు
- క్లిష్టమైన ప్లాట్ల కోసం విజువలైజేషన్ రేండరింగ్ మెల్లగా ఉండవచ్చు
- Vue.js డెవ్ సర్వర్ వేగవంతమైన పునఃప్రారంభానికి హాట్-రిలోడ్ను అందిస్తుంది
- ప్రొడక్షన్ బిల్డ్లు ఆప్టిమైజ్ చేయబడి మినిఫై చేయబడ్డాయి
భద్రత గమనికలు
- ఎలాంటి సున్నితమైన డేటా లేదా క్రెడెన్షియల్స్ కమిట్ చేయకూడదు
- క్లౌడ్ పాఠాలలో ఏ API కీలు ఉంటే ఎన్విరాన్మెంట్ వేరియబుల్స్ ఉపయోగించండి
- Azure సంబంధిత పాఠాలకు Azure ఖాతా క్రెడెన్షియల్స్ అవసరం కావచ్చు
- భద్రత ప్యాచుల కోసం డిపెండెన్సీలను నవీకరించండి
అనువాదాలకు సహకారం
- ఆటోమేటెడ్ అనువాదాలు GitHub Actions ద్వారా నిర్వహించబడతాయి
- అనువాద ఖచ్చితత్వం కోసం మాన్యువల్ సవరణలు స్వాగతం
- ఉన్న అనువాద ఫోల్డర్ నిర్మాణాన్ని అనుసరించండి
- క్విజ్ లింక్లను భాషా పారామీటర్తో నవీకరించండి:
?loc=fr - అనువదించిన పాఠాలు సరిగా ప్రదర్శించబడుతున్నాయా అని పరీక్షించండి
సంబంధిత వనరులు
- ప్రధాన పాఠ్యక్రమం: https://aka.ms/datascience-beginners
- Microsoft Learn: https://docs.microsoft.com/learn/
- స్టూడెంట్ హబ్: https://docs.microsoft.com/learn/student-hub
- చర్చా ఫోరం: https://github.com/microsoft/Data-Science-For-Beginners/discussions
- ఇతర Microsoft పాఠ్యక్రమాలు: ML for Beginners, AI for Beginners, Web Dev for Beginners
ప్రాజెక్ట్ నిర్వహణ
- కంటెంట్ను తాజా ఉంచడానికి నియమిత నవీకరణలు
- కమ్యూనిటీ సహకారాలు స్వాగతం
- GitHub లో ఇష్యూలు ట్రాక్ చేయబడతాయి
- పీఆర్లు పాఠ్యక్రమ నిర్వహకులు సమీక్షిస్తారు
- నెలవారీ కంటెంట్ సమీక్షలు మరియు నవీకరణలు
అస్పష్టత:
ఈ పత్రాన్ని AI అనువాద సేవ Co-op Translator ఉపయోగించి అనువదించబడింది. మేము ఖచ్చితత్వానికి ప్రయత్నించినప్పటికీ, ఆటోమేటెడ్ అనువాదాల్లో పొరపాట్లు లేదా తప్పిదాలు ఉండవచ్చు. అసలు పత్రం దాని స్వదేశీ భాషలోనే అధికారిక మూలంగా పరిగణించాలి. ముఖ్యమైన సమాచారానికి, ప్రొఫెషనల్ మానవ అనువాదం సిఫార్సు చేయబడుతుంది. ఈ అనువాదం వాడకంలో ఏర్పడిన ఏవైనా అపార్థాలు లేదా తప్పుదారులు కోసం మేము బాధ్యత వహించము.