21 KiB
Data Science for Beginners కు సహకరించడం
Data Science for Beginners పాఠ్యాంశానికి సహకరించడానికి మీ ఆసక్తికి ధన్యవాదాలు! మేము సమాజం నుండి సహకారాలను స్వాగతిస్తున్నాము.
విషయ సూచిక
- ఆచరణ నియమాలు
- నేను ఎలా సహకరించగలను?
- ప్రారంభించడం
- సహకార మార్గదర్శకాలు
- పుల్ రిక్వెస్ట్ ప్రక్రియ
- శైలి మార్గదర్శకాలు
- సహకారదారుల లైసెన్స్ ఒప్పందం
ఆచరణ నియమాలు
ఈ ప్రాజెక్ట్ Microsoft Open Source Code of Conduct ను అనుసరిస్తుంది. మరింత సమాచారం కోసం Code of Conduct FAQ చూడండి లేదా ఏవైనా అదనపు ప్రశ్నలు లేదా వ్యాఖ్యల కోసం opencode@microsoft.com ను సంప్రదించండి.
నేను ఎలా సహకరించగలను?
బగ్స్ నివేదించడం
బగ్ నివేదికలు సృష్టించే ముందు, డూప్లికేట్లను నివారించడానికి ఉన్న సమస్యలను తనిఖీ చేయండి. మీరు బగ్ నివేదికను సృష్టించినప్పుడు, సాధ్యమైనంత వివరాలను చేర్చండి:
- స్పష్టమైన మరియు వివరణాత్మక శీర్షికను ఉపయోగించండి
- సమస్యను పునరుత్పత్తి చేయడానికి ఖచ్చితమైన దశలను వివరించండి
- నిర్దిష్ట ఉదాహరణలు ఇవ్వండి (కోడ్ స్నిపెట్లు, స్క్రీన్షాట్లు)
- మీరు గమనించిన ప్రవర్తన మరియు మీరు ఆశించినది వివరించండి
- మీ వాతావరణ వివరాలను చేర్చండి (OS, Python వెర్షన్, బ్రౌజర్)
మెరుగుదలల సూచనలు
మెరుగుదలల సూచనలు స్వాగతం! మెరుగుదలలను సూచించినప్పుడు:
- స్పష్టమైన మరియు వివరణాత్మక శీర్షికను ఉపయోగించండి
- సూచించిన మెరుగుదల యొక్క వివరమైన వివరణ ఇవ్వండి
- ఈ మెరుగుదల ఎందుకు ఉపయోగకరమని భావిస్తున్నారో వివరించండి
- ఇతర ప్రాజెక్టులలో ఉన్న సమాన లక్షణాలను జాబితా చేయండి, అవసరమైతే
డాక్యుమెంటేషన్కు సహకరించడం
డాక్యుమెంటేషన్ మెరుగుదలలు ఎప్పుడూ అభినందించబడతాయి:
- టైపోస్ మరియు వ్యాకరణ తప్పులను సరిచేయండి
- వివరణల స్పష్టతను మెరుగుపరచండి
- లేకపోయిన డాక్యుమెంటేషన్ జోడించండి
- పాత సమాచారం నవీకరించండి
- ఉదాహరణలు లేదా ఉపయోగ కేసులు జోడించండి
కోడ్కు సహకరించడం
మేము క్రింది కోడ్ సహకారాలను స్వాగతిస్తున్నాము:
- కొత్త పాఠాలు లేదా వ్యాయామాలు
- బగ్ సరిచేయడం
- ఉన్న నోట్బుక్స్ మెరుగుదలలు
- కొత్త డేటాసెట్లు లేదా ఉదాహరణలు
- క్విజ్ అప్లికేషన్ మెరుగుదలలు
ప్రారంభించడం
ముందస్తు అవసరాలు
సహకరించే ముందు, మీరు కలిగి ఉండాలి:
- GitHub ఖాతా
- మీ సిస్టమ్లో Git ఇన్స్టాల్ చేయబడింది
- Python 3.7+ మరియు Jupyter ఇన్స్టాల్ చేయబడింది
- Node.js మరియు npm (క్విజ్ యాప్ సహకారాల కోసం)
- పాఠ్యాంశ నిర్మాణం గురించి పరిచయం
వివరమైన సెటప్ సూచనల కోసం INSTALLATION.md చూడండి.
Fork మరియు Clone
- GitHub లో రిపోజిటరీని Fork చేయండి
- మీ Fork ను లోకల్గా Clone చేయండి:
git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git cd Data-Science-For-Beginners - అప్స్ట్రీమ్ రిమోట్ జోడించండి:
git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
బ్రాంచ్ సృష్టించండి
మీ పని కోసం కొత్త బ్రాంచ్ సృష్టించండి:
git checkout -b feature/your-feature-name
# లేదా
git checkout -b fix/your-bug-fix
బ్రాంచ్ నామకరణ నియమాలు:
feature/- కొత్త ఫీచర్లు లేదా పాఠాలుfix/- బగ్ సరిచేయడంdocs/- డాక్యుమెంటేషన్ మార్పులుrefactor/- కోడ్ పునఃరూపకరణ
సహకార మార్గదర్శకాలు
పాఠం కంటెంట్ కోసం
పాఠాలు అందించేటప్పుడు లేదా ఉన్న వాటిని మార్చేటప్పుడు:
-
ఉన్న నిర్మాణాన్ని అనుసరించండి:
- README.md లో పాఠం కంటెంట్
- వ్యాయామాలతో Jupyter నోట్బుక్
- అసైన్మెంట్ (అవసరమైతే)
- ప్రీ మరియు పోస్ట్ క్విజ్ లింకులు
-
ఈ అంశాలను చేర్చండి:
- స్పష్టమైన అభ్యాస లక్ష్యాలు
- దశలవారీ వివరణలు
- వ్యాఖ్యలతో కూడిన కోడ్ ఉదాహరణలు
- అభ్యాసం కోసం వ్యాయామాలు
- అదనపు వనరుల లింకులు
-
అందుబాటును నిర్ధారించండి:
- స్పష్టమైన, సులభమైన భాష ఉపయోగించండి
- చిత్రాలకు alt టెక్స్ట్ ఇవ్వండి
- కోడ్ వ్యాఖ్యలు చేర్చండి
- వివిధ అభ్యాస శైలులను పరిగణనలోకి తీసుకోండి
Jupyter నోట్బుక్స్ కోసం
-
కమిట్ చేయడానికి ముందు అన్ని అవుట్పుట్లను క్లియర్ చేయండి:
jupyter nbconvert --clear-output --inplace notebook.ipynb -
వివరణలతో కూడిన మార్క్డౌన్ సెల్స్ చేర్చండి
-
సమానమైన ఫార్మాటింగ్ ఉపయోగించండి:
# టాప్లో లైబ్రరీలను దిగుమతి చేసుకోండి import pandas as pd import numpy as np import matplotlib.pyplot as plt # అర్థవంతమైన వేరియబుల్ పేర్లను ఉపయోగించండి # క్లిష్టమైన ఆపరేషన్ల కోసం వ్యాఖ్యలు జోడించండి # PEP 8 శైలి మార్గదర్శకాలను అనుసరించండి -
సమర్పించే ముందు మీ నోట్బుక్ను పూర్తిగా పరీక్షించండి
Python కోడ్ కోసం
PEP 8 శైలి మార్గదర్శకాలను అనుసరించండి:
# మంచి ఆచారాలు
import pandas as pd
def calculate_mean(data):
"""Calculate the mean of a dataset.
Args:
data (list): List of numerical values
Returns:
float: Mean of the dataset
"""
return sum(data) / len(data)
క్విజ్ యాప్ సహకారాల కోసం
క్విజ్ అప్లికేషన్ మార్చేటప్పుడు:
-
లోకల్గా పరీక్షించండి:
cd quiz-app npm install npm run serve -
లింటర్ నడపండి:
npm run lint -
విజయవంతంగా బిల్డ్ చేయండి:
npm run build -
Vue.js శైలి గైడ్ మరియు ఉన్న నమూనాలను అనుసరించండి
అనువాదాల కోసం
అనువాదాలు జోడించేటప్పుడు లేదా నవీకరించేటప్పుడు:
translations/ఫోల్డర్లో నిర్మాణాన్ని అనుసరించండి- భాషా కోడ్ను ఫోల్డర్ పేరుగా ఉపయోగించండి (ఉదా: ఫ్రెంచ్ కోసం
fr) - ఆంగ్ల వెర్షన్తో సమానమైన ఫైల్ నిర్మాణాన్ని ఉంచండి
- క్విజ్ లింకులను భాషా పారామీటర్తో నవీకరించండి:
?loc=fr - అన్ని లింకులు మరియు ఫార్మాటింగ్ను పరీక్షించండి
పుల్ రిక్వెస్ట్ ప్రక్రియ
సమర్పించే ముందు
-
మీ బ్రాంచ్ను తాజా మార్పులతో నవీకరించండి:
git fetch upstream git rebase upstream/main -
మీ మార్పులను పరీక్షించండి:
- అన్ని మార్చిన నోట్బుక్స్ నడపండి
- క్విజ్ యాప్ మార్చినట్లయితే పరీక్షించండి
- అన్ని లింకులు పనిచేస్తున్నాయో నిర్ధారించండి
- స్పెల్లింగ్ మరియు వ్యాకరణ తప్పుల కోసం తనిఖీ చేయండి
-
మీ మార్పులను కమిట్ చేయండి:
git add . git commit -m "Brief description of changes"స్పష్టమైన కమిట్ సందేశాలు రాయండి:
- ప్రస్తుత కాలాన్ని ఉపయోగించండి ("Add feature" "Added feature" కాదు)
- ఆజ్ఞాత్మక మూడ్ ఉపయోగించండి ("Move cursor to..." "Moves cursor to..." కాదు)
- మొదటి లైన్ను 72 అక్షరాలకు పరిమితం చేయండి
- సంబంధిత సమస్యలు మరియు పుల్ రిక్వెస్ట్లను సూచించండి
-
మీ Fork కు పుష్ చేయండి:
git push origin feature/your-feature-name
పుల్ రిక్వెస్ట్ సృష్టించడం
- రిపోజిటరీ కి వెళ్లండి
- "Pull requests" → "New pull request" క్లిక్ చేయండి
- "compare across forks" క్లిక్ చేయండి
- మీ Fork మరియు బ్రాంచ్ ఎంచుకోండి
- "Create pull request" క్లిక్ చేయండి
PR శీర్షిక ఫార్మాట్
స్పష్టమైన, వివరణాత్మక శీర్షికలను ఈ ఫార్మాట్ను అనుసరించి ఉపయోగించండి:
[Component] Brief description
ఉదాహరణలు:
[Lesson 7] Fix Python notebook import error[Quiz App] Add German translation[Docs] Update README with new prerequisites[Fix] Correct data path in visualization lesson
PR వివరణ
మీ PR వివరణలో చేర్చండి:
- ఏమి: మీరు ఏ మార్పులు చేసారు?
- ఎందుకు: ఈ మార్పులు ఎందుకు అవసరమయ్యాయి?
- ఎలా: మీరు మార్పులను ఎలా అమలు చేసారు?
- పరీక్ష: మీరు మార్పులను ఎలా పరీక్షించారో?
- స్క్రీన్షాట్లు: దృశ్య మార్పుల కోసం స్క్రీన్షాట్లు చేర్చండి
- సంబంధిత సమస్యలు: సంబంధిత సమస్యలకు లింకులు (ఉదా: "Fixes #123")
సమీక్ష ప్రక్రియ
- ఆటోమేటెడ్ చెక్లు మీ PR పై నడుస్తాయి
- నిర్వాహకులు మీ సహకారాన్ని సమీక్షిస్తారు
- అభిప్రాయాలను పరిష్కరించండి అదనపు కమిట్లతో
- ఆమోదం పొందిన తర్వాత, నిర్వాహకుడు మీ PR ను విలీనం చేస్తారు
మీ PR విలీనం అయిన తర్వాత
-
మీ బ్రాంచ్ను తొలగించండి:
git branch -d feature/your-feature-name git push origin --delete feature/your-feature-name -
మీ Fork ను నవీకరించండి:
git checkout main git pull upstream main git push origin main
శైలి మార్గదర్శకాలు
మార్క్డౌన్
- స్థిరమైన శీర్షిక స్థాయిలను ఉపయోగించండి
- విభాగాల మధ్య ఖాళీ లైన్లను ఉంచండి
- భాషా స్పెసిఫైయర్లతో కోడ్ బ్లాక్స్ ఉపయోగించండి:
```python import pandas as pd ``` - చిత్రాలకు alt టెక్స్ట్ జోడించండి:
 - లైన్ పొడవులు సుమారు 80-100 అక్షరాలుగా ఉంచండి
Python
- PEP 8 శైలి గైడ్ అనుసరించండి
- అర్థవంతమైన వేరియబుల్ పేర్లను ఉపయోగించండి
- ఫంక్షన్లకు డాక్స్ట్రింగ్స్ జోడించండి
- అవసరమైన చోట టైప్ హింట్స్ చేర్చండి:
def process_data(df: pd.DataFrame) -> pd.DataFrame: """Process the input dataframe.""" return df
JavaScript/Vue.js
- Vue.js 2 శైలి గైడ్ అనుసరించండి
- అందించిన ESLint కాన్ఫిగరేషన్ ఉపయోగించండి
- మాడ్యులర్, పునర్వినియోగపరచదగిన కాంపోనెంట్లను రాయండి
- క్లిష్టమైన లాజిక్ కోసం వ్యాఖ్యలు జోడించండి
ఫైల్ నిర్వహణ
- సంబంధిత ఫైళ్లను కలిసి ఉంచండి
- వివరణాత్మక ఫైల్ పేర్లను ఉపయోగించండి
- ఉన్న డైరెక్టరీ నిర్మాణాన్ని అనుసరించండి
- అవసరం లేని ఫైళ్లను కమిట్ చేయవద్దు (.DS_Store, .pyc, node_modules, మొదలైనవి)
సహకారదారుల లైసెన్స్ ఒప్పందం
ఈ ప్రాజెక్ట్ సహకారాలు మరియు సూచనలను స్వాగతిస్తుంది. చాలా సహకారాలకు మీరు సహకారదారుల లైసెన్స్ ఒప్పందం (CLA) కు అంగీకరించాలి, ఇది మీరు మీ సహకారాన్ని ఉపయోగించడానికి హక్కులు కలిగి ఉన్నారని మరియు వాటిని మాకు ఇచ్చారని ప్రకటిస్తుంది. వివరాలకు, https://cla.microsoft.com చూడండి.
మీరు పుల్ రిక్వెస్ట్ సమర్పించినప్పుడు, CLA-బాట్ ఆటోమేటిగ్గా మీరు CLA అందించాల్సిన అవసరం ఉందో లేదో నిర్ణయించి PR ను తగిన విధంగా (లేబుల్, వ్యాఖ్య) అలంకరిస్తుంది. బాట్ ఇచ్చిన సూచనలను అనుసరించండి. మా CLA ఉపయోగించే అన్ని రిపోజిటరీలలో మీరు ఈ ప్రక్రియను ఒక్కసారి మాత్రమే చేయాలి.
ప్రశ్నలు?
- మా Discord ఛానల్ #data-science-for-beginners ను తనిఖీ చేయండి
- మా Discord సమాజంలో చేరండి
- ఉన్న issues మరియు pull requests ను సమీక్షించండి
ధన్యవాదాలు!
మీ సహకారాలు ఈ పాఠ్యాంశాన్ని అందరికీ మెరుగ్గా చేస్తాయి. సహకరించడానికి సమయం కేటాయించినందుకు ధన్యవాదాలు!
అస్పష్టత:
ఈ పత్రాన్ని AI అనువాద సేవ Co-op Translator ఉపయోగించి అనువదించబడింది. మేము ఖచ్చితత్వానికి ప్రయత్నించినప్పటికీ, ఆటోమేటెడ్ అనువాదాల్లో పొరపాట్లు లేదా తప్పిదాలు ఉండవచ్చు. మూల పత్రం దాని స్వదేశీ భాషలోనే అధికారిక మూలంగా పరిగణించాలి. ముఖ్యమైన సమాచారానికి, ప్రొఫెషనల్ మానవ అనువాదం చేయించుకోవడం మంచిది. ఈ అనువాదం వాడకంలో ఏర్పడిన ఏవైనా అపార్థాలు లేదా తప్పుదారుల కోసం మేము బాధ్యత వహించము.