Страницу Назад
Поискать другие аналоги этой работы

350

Лабораторная работа №3 по дисциплине: Обработка и анализ данных. Вариант для всех

ID: 245555
Дата закачки: 27 Июля 2024
Продавец: SibGUTI (Напишите, если есть вопросы)
    Посмотреть другие работы этого продавца

Тип работы: Работа Лабораторная
Форматы файлов: Microsoft Word
Сдано в учебном заведении: ДО СИБГУТИ

Описание:
Лабораторная работа №3. Работа с БД

Создать программу для работы с базой данных, при этом добавив обработку исключительных ситуаций. База данных должна содержать не менее 5 связанных таблиц. У программы должен быть графический интерфейс (возможность отображать таблицы с помощью библиотеки
Pandas, редактировать таблицы с помощью интерактивных форм)
[https://colab.research.google.com/notebooks/forms.ipynb].
По сохраненным данным в таблицах построить минимум 3 различных аналитических графика
[https://colab.research.google.com/notebooks/charts.ipynb,
https://colab.research.google.com/notebooks/widgets.ipynb] с помощью библиотеки matplotlib.

Создание базы данных с помощью SQLite
SQLite - это библиотека, написанная на языке C, которая предоставляет легкую дисковую базу данных, не требующую отдельного серверного процесса и позволяющую получить доступ к базе данных с использованием нестандартного варианта языка запросов SQL. Некоторые приложения могут использовать SQLite для внутреннего хранения данных. Также возможно
создать прототип приложения с использованием SQLite, а затем перенести код в большую базу данных, такую как PostgreSQL или Oracle. Модуль sqlite3 был написан Герхардом Херингом. Он предоставляет интерфейс SQL,
соответствующий спецификации DB-API 2.0, описанной в PEP 249 [https://docs.python.org/2/library/sqlite3.html].
Для создания новой базы данных необходимо импортировать библиотеку sqlite3(она уже предварительно установлена в google-лаборатории) и вызвать функцию соединения с базой. При первом вызове буде создан файл «mydatabase.db»
После этого в текущей папке появится новый файл «mydatabase.db», который можно увидеть, используя команду !ls:
После этого в текущей папке появится новый файл «mydatabase.db», который можно увидеть, используя команду !ls:
Можно создавать временные базы данных, хранящиеся в оперативной памяти, при этом файл сохраняться не будет, и доступность будет ограничена текущей сессией:
После получения соединения, вы можете обращаться к базе данных с помощью объекта типа cursor. Выполнение запросов к базе выполняется с помощью его метода execute():
В данном примере в базе данных «mydatabase» создается таблица «students»со следующими полями: «id» – первичный ключ, обозначающий номер студента, «FIO» – ФИО студента типа «текст» и «yearbirth» – год рождения
типа «текст». Добавлять поля с первичным ключом в таблицу не обязательно, он автоматически сгенирируется во время создания таблицы. Но, если вы его задали при создании таблицы, то именно это поле будет первичным ключом.
Добавление данных в таблицу осуществляется с помощью SQL-команды «INSERT».
После добавления записи необходимо сохранить изменения с помощью функции comit(). SQLite не пишет в базу данных, пока вы не совершите транзакцию. Транзакция состоит из 1 или более запросов, которые вносят изменения в базу данных одновременно. Это сделано для того, чтобы упростить восстановление после случайных изменений или ошибок.
Транзакции позволяют выполнить несколько запросов, а затем, наконец, изменить базу данных с результатами всех из них. Это гарантирует, что в случае сбоя одного из запросов база данных не будет частично обновлена
Вывод записей таблицы на экран:
Первый запрос, который мы выполнили, называется SELECT *, что означает, что мы хотим выбрать все записи из таблицы “students”, отсортированные по полю “id”.
Удаление записи из базы данных:
В запросе из таблицы students удаляются данные, у которых в поле FIO записано «Savelieva Anastasia»
Вывод записей таблицы на экран после удаления строки:
Здесь мы в запросе SELECT указали еще rowid – это первичный ключ таблицы по-умолчанию. Можно пользоваться им, можно создать свой собственный, как в нашем случае поле “id”. Видно, что строка с FIO
«Savelieva Anastasia» была удалена из таблицы.
Запрос на выбор всех студентов, у которых год рождения 2002:
Мы выполняем SQL и используем функцию fetchall() для получения результатов. Можно также использовать функцию fetchone() для получения только первого результата. Функция execute() выполняет sql-запрос на выбор данных из таблицы.
Как видите, результаты отформатированы в виде списка кортежей. Каждый кортеж соответствует строке в базе данных, к которой мы обращались.
Работа с данными таким способом довольно болезненна. Нам нужно вручную добавить заголовки столбцов и вручную проанализировать данные.
К счастью, у библиотеки панд есть более простой способ, который мы рассмотрим в следующем разделе.
Пример ниже показывает, как команда LIKE используется при поиске частичных фраз. В нашем случае, мы искали по всей таблице FIO, которые начинаются с “S”. Знак процента (%) является подстановочным оператором.
В результате данного запроса были выбраны все студенты, чья фамилия начиналась на “S”.
Прежде чем двигаться дальше, рекомендуется закрыть открытые объекты Connection и Cursor. Это предотвращает блокировку базы данных SQLite.
Когда база данных SQLite заблокирована, возможно, вы не сможете обновить базу данных и получите ошибки. Мы можем закрыть курсор и соединение следующим образом:
Работа с SQLite и Pandas DataFrame
Для чтения результатов SQL-запроса можно использовать функцию read_sql_query библиотеки pandas DataFrame. Приведенный ниже код выполнит тот же запрос, который мы только что сделали, но вернет DataFrame. Он имеет несколько преимуществ по сравнению с запросом,
выполненным нами ранее, т.к.
 Не требуется создание объекта Cursor или вызова fetchall в конце.
 Имена заголовков из таблицы считываются автоматически.
 Создается DataFrame, позволяющий быстро отобразить и изучить данные.
В результате получаем красиво отформатированный объект DataFrame, с помощью него можно легко обратиться к определенному столбцу таблицы и
вывести все имена и фамилии студентов:
Создание таблиц с помощью Pandas
Пакет pandas дает нам гораздо более быстрый способ создания таблиц. Нам просто нужно сначала создать DataFrame, а затем экспортировать его в таблицу SQL. Сначала мы создадим DataFrame:
Затем мы сможем вызвать метод to_sql для преобразования df в таблицу в базе данных. Мы устанавливаем параметр if_exists для замены, чтобы
удалить и заменить любые существующие таблицы с именем “raspisanie”:
Затем мы можем проверить, что все работает, запросив базу данных:
Редактирование таблиц с помощью Pandas
Пи работе с данными иногда приходится изменять конфигурацию таблиц.
Допустим в ранее созданную таблицу “raspisanie” нам необходимо добавить поле аудитория («room»). Сначала сделаем это с помощью курсора cur:
Обратите внимание, что в SQLite все столбцы имеют значение null (что в Python переводится как None), поскольку для этого столбца еще нет никаких
значений.
В библиотеке Pandas также предусмотрена подобная функция редактирования таблиц:
Дополнительные ссылки:
1.https://pandas.pydata.org/pandasdocs/stable/getting_started/comparison/comparison_with_sql.html
2. https://docs.python.org/3/library/sqlite3.html
3.http://sebastianraschka.com/Articles/2014_sqlite_in_python_tutorial.html
Создание и редактирование интерактивных форм
Формы позволяют удобно редактировать код. Выделив текущую ячейку кода необходимо выбрать раздел Insert → Add form field. При изменении
значения в форме изменяется соответствующая строка кода [https://colab.research.google.com/notebooks/forms.ipynb].
Для сокрытия кода необходимо выбрать раздел Edit → Show/hide code. Для обращения таблицам и полям можно использовать интерактивные поля ввода


Комментарии: Уважаемый студент дистанционного обучения,
Оценена Ваша работа по предмету: Обработка и анализ данных
Вид работы: Лабораторная работа 3
Оценка: Зачет
Дата оценки: 17.05.2024
Рецензия: Уважаемый ...............................................,

Данилова(Ермоленко) Любовь Филипповна


В отчете файл: .doc и .ipynb

Размер файла: 322,1 Кбайт
Фаил: Упакованные файлы (.rar)
-------------------
Обратите внимание, что преподаватели часто переставляют варианты и меняют исходные данные!
Если вы хотите, чтобы работа точно соответствовала, смотрите исходные данные. Если их нет, обратитесь к продавцу или к нам в тех. поддержку.
Имейте ввиду, что согласно гарантии возврата средств, мы не возвращаем деньги если вариант окажется не тот.
-------------------

   Скачать

   Добавить в корзину


        Коментариев: 0


Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них.
Опять не то? Мы можем помочь сделать!

Некоторые похожие работы:

Обработка и анализ данных. Контрольная работа и Лабораторные работы 1, 2, 3. Вариант 03.
Контрольная и Лабораторная работа №1,2,3 по дисциплине: Алгоритмы и структуры данных. Вариант №05
Курсовая работа по дисциплине: Информатика и программирование (часть 2). Вариант №13
СИНЕРГИЯ Методологические проблемы психологии Тест 100 баллов 2023 год
Контрольная работа и Лабораторные работы №№(1-2) по дисциплине: Планирование и управление информационной безопасностью. Вариант №1
Контрольная работа и Лабораторные работы №№1-3 по дисциплине: Проектирование информационных систем. Вариант №14
Контрольная работа и Лабораторные работы №№(1-2) по дисциплине: Планирование и управление информационной безопасностью. Вариант №4
Ещё искать по базе с такими же ключевыми словами.

Не можешь найти то что нужно? Мы можем помочь сделать! 

От 350 руб. за реферат, низкие цены. Просто заполни форму и всё.

Спеши, предложение ограничено !



Что бы написать комментарий, вам надо войти в аккаунт, либо зарегистрироваться.

Страницу Назад

  Cодержание / Обработка и анализ данных / Лабораторная работа №3 по дисциплине: Обработка и анализ данных. Вариант для всех
Вход в аккаунт:
Войти

Забыли ваш пароль?

Вы еще не зарегистрированы?

Создать новый Аккаунт


Способы оплаты:
UnionPay СБР Ю-Money qiwi Payeer Крипто-валюты Крипто-валюты


И еще более 50 способов оплаты...
Гарантии возврата денег

Как скачать и покупать?

Как скачивать и покупать в картинках


Сайт помощи студентам, без посредников!