# Ръководство за отстраняване на проблеми Това ръководство предоставя решения на често срещани проблеми, които може да срещнете, докато работите с учебната програма "Наука за данни за начинаещи". ## Съдържание - [Проблеми с Python и Jupyter](../..) - [Проблеми с пакети и зависимости](../..) - [Проблеми с Jupyter Notebook](../..) - [Проблеми с приложението за тестове](../..) - [Проблеми с Git и GitHub](../..) - [Проблеми с документацията на Docsify](../..) - [Проблеми с данни и файлове](../..) - [Проблеми с производителността](../..) - [Получаване на допълнителна помощ](../..) ## Проблеми с Python и Jupyter ### Python не е намерен или е грешна версия **Проблем:** `python: command not found` или грешна версия на Python **Решение:** ```bash # Check Python version python --version python3 --version # If Python 3 is installed as 'python3', create an alias # On macOS/Linux, add to ~/.bashrc or ~/.zshrc: alias python=python3 alias pip=pip3 # Or use python3 explicitly python3 -m pip install jupyter ``` **Решение за Windows:** 1. Преинсталирайте Python от [python.org](https://www.python.org/) 2. По време на инсталацията, маркирайте "Add Python to PATH" 3. Рестартирайте терминала/командния ред ### Проблеми с активиране на виртуална среда **Проблем:** Виртуалната среда не се активира **Решение:** **Windows:** ```bash # If you get execution policy error Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser # Then activate venv\Scripts\activate ``` **macOS/Linux:** ```bash # Ensure the activate script is executable chmod +x venv/bin/activate # Then activate source venv/bin/activate ``` **Проверка на активацията:** ```bash # Your prompt should show (venv) # Check Python location which python # Should point to venv ``` ### Проблеми с ядрото на Jupyter **Проблем:** "Kernel not found" или "Kernel keeps dying" **Решение:** ```bash # Reinstall kernel python -m ipykernel install --user --name=datascience --display-name="Python (Data Science)" # Or use the default kernel python -m ipykernel install --user # Restart Jupyter jupyter notebook ``` **Проблем:** Грешна версия на Python в Jupyter **Решение:** ```bash # Install Jupyter in your virtual environment source venv/bin/activate # Activate first pip install jupyter ipykernel # Register the kernel python -m ipykernel install --user --name=venv --display-name="Python (venv)" # In Jupyter, select Kernel -> Change kernel -> Python (venv) ``` ## Проблеми с пакети и зависимости ### Грешки при импортиране **Проблем:** `ModuleNotFoundError: No module named 'pandas'` (или други пакети) **Решение:** ```bash # Ensure virtual environment is activated source venv/bin/activate # macOS/Linux venv\Scripts\activate # Windows # Install missing package pip install pandas # Install all common packages pip install jupyter pandas numpy matplotlib seaborn scikit-learn # Verify installation python -c "import pandas; print(pandas.__version__)" ``` ### Неуспехи при инсталиране с pip **Проблем:** `pip install` не успява с грешки за разрешения **Решение:** ```bash # Use --user flag pip install --user package-name # Or use virtual environment (recommended) python -m venv venv source venv/bin/activate pip install package-name ``` **Проблем:** `pip install` не успява с грешки за SSL сертификати **Решение:** ```bash # Update pip first python -m pip install --upgrade pip # Try installing with trusted host (temporary workaround) pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org package-name ``` ### Конфликти на версии на пакети **Проблем:** Несъвместими версии на пакети **Решение:** ```bash # Create fresh virtual environment python -m venv venv-new source venv-new/bin/activate # or venv-new\Scripts\activate on Windows # Install packages with specific versions if needed pip install pandas==1.3.0 pip install numpy==1.21.0 # Or let pip resolve dependencies pip install jupyter pandas numpy matplotlib seaborn scikit-learn ``` ## Проблеми с Jupyter Notebook ### Jupyter не стартира **Проблем:** Командата `jupyter notebook` не е намерена **Решение:** ```bash # Install Jupyter pip install jupyter # Or use python -m python -m jupyter notebook # Add to PATH if needed (macOS/Linux) export PATH="$HOME/.local/bin:$PATH" ``` ### Notebook не се зарежда или не се записва **Проблем:** "Notebook failed to load" или грешки при запис **Решение:** 1. Проверете разрешенията на файла ```bash # Make sure you have write permissions ls -l notebook.ipynb chmod 644 notebook.ipynb # If needed ``` 2. Проверете за повреда на файла ```bash # Try opening in text editor to check JSON structure # Copy content to new notebook if corrupted ``` 3. Изчистете кеша на Jupyter ```bash jupyter notebook --clear-cache ``` ### Клетката не се изпълнява **Проблем:** Клетката остава на "In [*]" или отнема твърде много време **Решение:** 1. **Прекъснете ядрото:** Кликнете върху бутона "Interrupt" или натиснете `I, I` 2. **Рестартирайте ядрото:** Меню Kernel → Restart 3. **Проверете за безкрайни цикли** в кода си 4. **Изчистете изхода:** Меню Cell → All Output → Clear ### Графики не се показват **Проблем:** Графиките на `matplotlib` не се показват в notebook **Решение:** ```python # Add magic command at the top of notebook %matplotlib inline import matplotlib.pyplot as plt # Create plot plt.plot([1, 2, 3, 4]) plt.show() # Make sure to call show() ``` **Алтернатива за интерактивни графики:** ```python %matplotlib notebook # Or %matplotlib widget ``` ## Проблеми с приложението за тестове ### npm install не успява **Проблем:** Грешки по време на `npm install` **Решение:** ```bash # Clear npm cache npm cache clean --force # Remove node_modules and package-lock.json rm -rf node_modules package-lock.json # Reinstall npm install # If still failing, try with legacy peer deps npm install --legacy-peer-deps ``` ### Приложението за тестове не стартира **Проблем:** `npm run serve` не успява **Решение:** ```bash # Check Node.js version node --version # Should be 12.x or higher # Reinstall dependencies cd quiz-app rm -rf node_modules package-lock.json npm install # Try different port npm run serve -- --port 8081 ``` ### Портът вече се използва **Проблем:** "Port 8080 is already in use" **Решение:** ```bash # Find and kill process on port 8080 # macOS/Linux: lsof -ti:8080 | xargs kill -9 # Windows: netstat -ano | findstr :8080 taskkill /PID /F # Or use a different port npm run serve -- --port 8081 ``` ### Тестът не се зарежда или показва празна страница **Проблем:** Приложението за тестове се зарежда, но показва празна страница **Решение:** 1. Проверете конзолата на браузъра за грешки (F12) 2. Изчистете кеша и бисквитките на браузъра 3. Опитайте с друг браузър 4. Уверете се, че JavaScript е активиран 5. Проверете дали блокиращи реклами пречат ```bash # Rebuild the app npm run build npm run serve ``` ## Проблеми с Git и GitHub ### Git не е разпознат **Проблем:** `git: command not found` **Решение:** **Windows:** - Инсталирайте Git от [git-scm.com](https://git-scm.com/) - Рестартирайте терминала след инсталацията **macOS:** > **Забележка:** Ако нямате инсталиран Homebrew, следвайте инструкциите на [https://brew.sh/](https://brew.sh/), за да го инсталирате. ```bash # Install via Homebrew brew install git # Or install Xcode Command Line Tools xcode-select --install ``` **Linux:** ```bash sudo apt-get install git # Debian/Ubuntu sudo dnf install git # Fedora ``` ### Неуспех при клониране **Проблем:** `git clone` не успява с грешки за автентикация **Решение:** ```bash # Use HTTPS URL git clone https://github.com/microsoft/Data-Science-For-Beginners.git # If you have 2FA enabled on GitHub, use Personal Access Token # Create token at: https://github.com/settings/tokens # Use token as password when prompted ``` ### Отказан достъп (publickey) **Проблем:** Грешка при автентикация с SSH ключ **Решение:** ```bash # Generate SSH key ssh-keygen -t ed25519 -C "your_email@example.com" # Add key to ssh-agent eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_ed25519 # Add public key to GitHub # Copy key: cat ~/.ssh/id_ed25519.pub # Add at: https://github.com/settings/keys ``` ## Проблеми с документацията на Docsify ### Командата Docsify не е намерена **Проблем:** `docsify: command not found` **Решение:** ```bash # Install globally npm install -g docsify-cli # If permission error on macOS/Linux sudo npm install -g docsify-cli # Verify installation docsify --version # If still not found, add npm global path # Find npm global path npm config get prefix # Add to PATH (add to ~/.bashrc or ~/.zshrc) export PATH="$PATH:/usr/local/bin" ``` ### Документацията не се зарежда **Проблем:** Docsify се стартира, но съдържанието не се зарежда **Решение:** ```bash # Ensure you're in the repository root cd Data-Science-For-Beginners # Check for index.html ls index.html # Serve with specific port docsify serve --port 3000 # Check browser console for errors (F12) ``` ### Изображенията не се показват **Проблем:** Изображенията показват икона за счупена връзка **Решение:** 1. Проверете дали пътищата на изображенията са относителни 2. Уверете се, че файловете с изображения съществуват в хранилището 3. Изчистете кеша на браузъра 4. Проверете дали разширенията на файловете съвпадат (чувствителни към малки/големи букви на някои системи) ## Проблеми с данни и файлове ### Грешки "Файлът не е намерен" **Проблем:** `FileNotFoundError` при зареждане на данни **Решение:** ```python import os # Check current working directory print(os.getcwd()) # Use absolute path data_path = os.path.join(os.getcwd(), 'data', 'filename.csv') df = pd.read_csv(data_path) # Or use relative path from notebook location df = pd.read_csv('../data/filename.csv') # Verify file exists print(os.path.exists('data/filename.csv')) ``` ### Грешки при четене на CSV **Проблем:** Грешки при четене на CSV файлове **Решение:** ```python import pandas as pd # Try different encodings df = pd.read_csv('file.csv', encoding='utf-8') # or df = pd.read_csv('file.csv', encoding='latin-1') # or df = pd.read_csv('file.csv', encoding='ISO-8859-1') # Handle missing values df = pd.read_csv('file.csv', na_values=['NA', 'N/A', '']) # Specify delimiter if not comma df = pd.read_csv('file.csv', delimiter=';') ``` ### Грешки с паметта при големи набори от данни **Проблем:** `MemoryError` при зареждане на големи файлове **Решение:** ```python # Read in chunks chunk_size = 10000 chunks = [] for chunk in pd.read_csv('large_file.csv', chunksize=chunk_size): # Process chunk chunks.append(chunk) df = pd.concat(chunks) # Or read specific columns only df = pd.read_csv('file.csv', usecols=['col1', 'col2']) # Use more efficient data types df = pd.read_csv('file.csv', dtype={'column_name': 'int32'}) ``` ## Проблеми с производителността ### Бавна производителност на notebook **Проблем:** Notebook-ите работят много бавно **Решение:** 1. **Рестартирайте ядрото и изчистете изхода** - Kernel → Restart & Clear Output 2. **Затворете неизползвани notebook-и** 3. **Оптимизирайте кода:** ```python # Use vectorized operations instead of loops # Bad: result = [] for x in data: result.append(x * 2) # Good: result = data * 2 # NumPy/Pandas vectorization ``` 4. **Извадете проба от големи набори от данни:** ```python # Work with sample during development df_sample = df.sample(n=1000) # or df.head(1000) ``` ### Сривове на браузъра **Проблем:** Браузърът се срива или става неотзивчив **Решение:** 1. Затворете неизползвани раздели 2. Изчистете кеша на браузъра 3. Увеличете паметта на браузъра (Chrome: `chrome://settings/system`) 4. Използвайте JupyterLab вместо това: ```bash pip install jupyterlab jupyter lab ``` ## Получаване на допълнителна помощ ### Преди да поискате помощ 1. Проверете това ръководство за отстраняване на проблеми 2. Търсете в [GitHub Issues](https://github.com/microsoft/Data-Science-For-Beginners/issues) 3. Прегледайте [INSTALLATION.md](INSTALLATION.md) и [USAGE.md](USAGE.md) 4. Опитайте да потърсите съобщението за грешка онлайн ### Как да поискате помощ Когато създавате проблем или искате помощ, включете: 1. **Операционна система**: Windows, macOS или Linux (коя дистрибуция) 2. **Версия на Python**: Изпълнете `python --version` 3. **Съобщение за грешка**: Копирайте пълното съобщение за грешка 4. **Стъпки за възпроизвеждане**: Какво направихте преди да се появи грешката 5. **Какво сте опитали**: Решения, които вече сте пробвали **Пример:** ``` **Operating System:** macOS 12.0 **Python Version:** 3.9.7 **Error Message:** ModuleNotFoundError: No module named 'pandas' **Steps to Reproduce:** 1. Activated virtual environment 2. Started Jupyter notebook 3. Tried to import pandas **What I've Tried:** - Ran pip install pandas - Restarted Jupyter ``` ### Ресурси на общността - **GitHub Issues**: [Създайте проблем](https://github.com/microsoft/Data-Science-For-Beginners/issues/new) - **Discord**: [Присъединете се към нашата общност](https://aka.ms/ds4beginners/discord) - **Дискусии**: [GitHub Discussions](https://github.com/microsoft/Data-Science-For-Beginners/discussions) - **Microsoft Learn**: [Форуми за въпроси и отговори](https://docs.microsoft.com/answers/) ### Свързана документация - [INSTALLATION.md](INSTALLATION.md) - Инструкции за настройка - [USAGE.md](USAGE.md) - Как да използвате учебната програма - [CONTRIBUTING.md](CONTRIBUTING.md) - Как да допринесете - [README.md](README.md) - Преглед на проекта --- **Отказ от отговорност**: Този документ е преведен с помощта на AI услуга за превод [Co-op Translator](https://github.com/Azure/co-op-translator). Въпреки че се стремим към точност, моля, имайте предвид, че автоматизираните преводи може да съдържат грешки или неточности. Оригиналният документ на неговия роден език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален човешки превод. Ние не носим отговорност за каквито и да било недоразумения или погрешни интерпретации, произтичащи от използването на този превод.