Добавлен файл week2_analysis.ipynb и README.md, описывающий процесс
This commit is contained in:
		
							parent
							
								
									635f1de23f
								
							
						
					
					
						commit
						27e9cf3a05
					
				
							
								
								
									
										106
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										106
									
								
								README.md
									
									
									
									
									
								
							@ -1 +1,105 @@
 | 
				
			|||||||
"‡ ¤ ¨¥ ¢â®à®© ¥¤¥«¨" 
 | 
					1. Подготовка окружения
 | 
				
			||||||
 | 
					Перед началом работы необходимо:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Создать и активировать виртуальное окружение (venv или conda).
 | 
				
			||||||
 | 
					Установить необходимые библиотеки: JupyterLab, numpy, pandas, matplotlib, seaborn, tqdm.
 | 
				
			||||||
 | 
					Инициализировать репозиторий Git, добавить .gitignore и README.md.
 | 
				
			||||||
 | 
					Зафиксировать первый коммит с базовой настройкой проекта.
 | 
				
			||||||
 | 
					Эти шаги были рассмотрены на первой неделе. Проверьте, что всё настроено правильно.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					2. Основы работы с JupyterLab
 | 
				
			||||||
 | 
					Запустите JupyterLab командой:
 | 
				
			||||||
 | 
					jupyter lab
 | 
				
			||||||
 | 
					Создайте новый Notebook (блокнот) и сохраните его под названием week2_analysis.ipynb.
 | 
				
			||||||
 | 
					Добавьте несколько ячеек с кодом, выполните их и убедитесь, что результаты отображаются правильно.
 | 
				
			||||||
 | 
					Используйте Markdown-ячейки для пояснений и заголовков в вашем блокноте.
 | 
				
			||||||
 | 
					Почему JupyterLab?
 | 
				
			||||||
 | 
					Позволяет быстро изменять код и видеть результаты без повторного запуска всего скрипта.
 | 
				
			||||||
 | 
					Удобен для работы с данными, пошагового анализа и визуализации.
 | 
				
			||||||
 | 
					Можно комбинировать код, текст, формулы и графики в одном документе.
 | 
				
			||||||
 | 
					Попробуйте изменить несколько значений в коде и запустить ячейки снова. Так вы увидите, как разные параметры влияют на результат.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					3. Работа с pandas и numpy
 | 
				
			||||||
 | 
					pandas: работа с таблицами
 | 
				
			||||||
 | 
					Прочитайте и выполните следующий код:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import pandas as pd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Создадим DataFrame
 | 
				
			||||||
 | 
					data = {
 | 
				
			||||||
 | 
					    "Имя": ["Анна", "Борис", "Виктор", "Галина"],
 | 
				
			||||||
 | 
					    "Возраст": [21, 22, 23, 24],
 | 
				
			||||||
 | 
					    "Баллы": [89, 76, 95, 82]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					df = pd.DataFrame(data)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					print("Первый взгляд на данные:")
 | 
				
			||||||
 | 
					print(df.head())
 | 
				
			||||||
 | 
					print(df.info())
 | 
				
			||||||
 | 
					print(df.describe())
 | 
				
			||||||
 | 
					print(df.isnull().sum())
 | 
				
			||||||
 | 
					Попробуйте самостоятельно (каждый пункт в новых блоках):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Поместить df в последнюю строчку блока.
 | 
				
			||||||
 | 
					Добавить новый столбец с вычисляемыми значениями (df["Новый столбец"] = df["Баллы"] * 1.1).
 | 
				
			||||||
 | 
					Применить .groupby() и .agg(), чтобы сгруппировать данные.
 | 
				
			||||||
 | 
					Фильтровать записи по условиям (df[df["Возраст"] > 21]).
 | 
				
			||||||
 | 
					numpy: массивы и вычисления
 | 
				
			||||||
 | 
					import numpy as np
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					arr = np.array([1, 2, 3, 4, 5])
 | 
				
			||||||
 | 
					print("Сумма элементов массива:", np.sum(arr))
 | 
				
			||||||
 | 
					print("Среднее значение:", np.mean(arr))
 | 
				
			||||||
 | 
					print("Медиана:", np.median(arr))
 | 
				
			||||||
 | 
					print("Стандартное отклонение:", np.std(arr))
 | 
				
			||||||
 | 
					Попробуйте:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Создать двумерный массив (np.array([[1, 2], [3, 4]])).
 | 
				
			||||||
 | 
					Использовать np.linspace(), np.random.randn(), np.dot().
 | 
				
			||||||
 | 
					4. Визуализация данных
 | 
				
			||||||
 | 
					matplotlib: построение графиков
 | 
				
			||||||
 | 
					import matplotlib.pyplot as plt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					x = np.linspace(0, 10, 100)
 | 
				
			||||||
 | 
					y = np.sin(x)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					plt.plot(x, y, label='sin(x)')
 | 
				
			||||||
 | 
					plt.xlabel("X")
 | 
				
			||||||
 | 
					plt.ylabel("Y")
 | 
				
			||||||
 | 
					plt.title("График синуса")
 | 
				
			||||||
 | 
					plt.legend()
 | 
				
			||||||
 | 
					plt.grid()
 | 
				
			||||||
 | 
					plt.show()
 | 
				
			||||||
 | 
					Попробуйте:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Изменить цвет (color='red').
 | 
				
			||||||
 | 
					Добавить несколько графиков (plt.plot(x, np.cos(x), label='cos(x)')).
 | 
				
			||||||
 | 
					Использовать bar, scatter, hist.
 | 
				
			||||||
 | 
					seaborn: работа с графиками данных
 | 
				
			||||||
 | 
					import seaborn as sns
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					df["Категория"] = ["A", "B", "A", "B"] # догадайтесь откуда df и её содержимое взялось
 | 
				
			||||||
 | 
					sns.boxplot(x="Категория", y="Баллы", data=df)
 | 
				
			||||||
 | 
					plt.show()
 | 
				
			||||||
 | 
					Попробуйте:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Построить histplot, scatterplot.
 | 
				
			||||||
 | 
					Добавить sns.pairplot(df), sns.heatmap(df.corr(), annot=True).
 | 
				
			||||||
 | 
					5. Прогресс-бар с tqdm
 | 
				
			||||||
 | 
					from tqdm import tqdm
 | 
				
			||||||
 | 
					import time
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					for i in tqdm(range(100)):
 | 
				
			||||||
 | 
					    time.sleep(0.01)  # Симуляция долгого процесса
 | 
				
			||||||
 | 
					Попробуйте:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Использовать tqdm для обработки данных (tqdm(df.iterrows())).
 | 
				
			||||||
 | 
					Добавить кастомные стилизации (tqdm(range(100), desc='Загрузка')).
 | 
				
			||||||
 | 
					6. Самостоятельное задание
 | 
				
			||||||
 | 
					Задание: Найдите свободные данные (например, на https://www.kaggle.com/ или https://datahub.io/) и выполните их анализ.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Загрузите данные в pandas (pd.read_csv() или pd.read_excel()).
 | 
				
			||||||
 | 
					Проведите базовый анализ (df.info(), df.describe()).
 | 
				
			||||||
 | 
					Постройте минимум 3 разных графика (histplot, scatterplot, boxplot).
 | 
				
			||||||
 | 
					Используйте tqdm, если работаете с большими данными.
 | 
				
			||||||
 | 
					Сохраните результаты в Jupyter Notebook и зафиксируйте изменения в Git.
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1767
									
								
								week2_analysis.ipynb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1767
									
								
								week2_analysis.ipynb
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user