Страницу Назад
Поискать другие аналоги этой работы
700 Лабораторные работы №1,2,3 по дисциплине: Обработка и анализ данных. Для всех вариантовID: 245556Дата закачки: 27 Июля 2024 Продавец: SibGUTI (Напишите, если есть вопросы) Посмотреть другие работы этого продавца Тип работы: Работа Лабораторная Форматы файлов: Microsoft Word Сдано в учебном заведении: ДО СИБГУТИ Описание: Задания к лабораторным работам Лабораторная работа №1. Введение в Python Задание 1 Напишите программу для решения примера (по вариантам). Предусмотрите проверку деления на ноль. Все необходимые переменные пользователь вводит через консоль. Запись |пример| означает «взять по модулю», т.е. если значение получится отрицательным, необходимо сменить знак с минуса на плюс. Для вычисления примеров вам понадобится библиотека math. Подключить ее можно, записав в ячейке кода: import math. Вариант 1. Задание 2 Разработать программу для вычисления выражения и вывода полученного результата. Соответствующие исходные данные ввести с клавиатуры. Вариант 1: Исходные данные: a,b,c. Лабораторная работа №2. Работа выполнена для алгоритма быстрой сортировки Работа с файлами. Списки Задание. Программа должна создавать файл *.xls, записать в него сгенерированный случайным образом массив чисел. Затем, с помощью реализованного алгоритма сортировки, одного из предложенных преподавателем, записать отсортированную последовательность чисел в ранее созданный файл *.xls. Алгоритмы сортировки:  Сортировка выбором  Сортировка вставками  Сортировка “Методом пузырька”  Сортировка Шелла  Быстрая сортировка Процесс создания, сохранения и работы с файлами на диске Для создания файла необходимо выполнить команду: f = open ("file1.txt", "w +") Мы объявили переменную f, чтобы открыть файл с именем "file1.txt". Функция open принимает 2 аргумента: путь к файлу, который мы хотим открыть, и строку, представляющую виды разрешений или операций, которые мы хотим выполнить над файлом. Возможные варианты второго аргумента: \\\'\\\' r \\\'\\\' Открыть текстовый файл для чтения. Поток расположен в начале файла. \\\'\\\' r + \\\'\\\' Открыт для чтения и письма. Поток расположен в начале файла. \\\'\\\' w \\\'\\\' Обрезать файл до нулевой длины или создать текстовый файл для записи. Поток располагается в начале файла. \\\'\\\' w + \\\'\\\' Открыт для чтения и письма. Файл создается, если он не существует, в противном случае он затирается. Поток расположен в начале файла. \\\'\\\'a \\\'\\\' Открыта для письма. Файл создается, если он не существует. Поток расположен в конце файла. Последующие записи к файлу всегда будет в конце текущего конца файла. \\\'\\\' a+ \\\' файл открыт для чтения и письма, если файл не существует, то он создается. Поток располагается в конце файла. В следующем примере в цикле в файл записываются строки «This is line1,2…, n»: for i in range(10): f.write("This is line %d\\\\r\\\\n" % (i+1)) f.close() В цикле for задается диапазон 10 чисел. Для записи данных в файл используется функция write. В каждой строке в файл записывается строка: «This is a line», затем %d (предупреждает, что будет введено целое число), символ перевода каретки на новую строку(\\\\r\\\\n) и само значения номера строки %(i+1). Таким образом, в основном мы вводим номер строки, которую пишем, затем помещаем ее в символ возврата каретки и символ новой строки. В конце файл необходимо закрыть (функция f.close()). Если вы попытаетесь записать в файл просто созданный список, то он запишется как строковые данные со скобками. Впоследствии это приведет к затруднению считывания данных. Поэтому лучше использовать указания типов при записи данных в файл. Уточним, как работает типизированный ввод данных. >>> pupil = "Ben" >>> old = 16 >>> grade = 9.2 >>> f.write ("It\\\'s %s, %d. Level: %f" % (pupil, old, grade)) It\\\'s Ben, 16. Level: 9.200000 В вышеприведенном коде создаются 3 переменные строкового, целого и вещественного типа. Для записи их в файл необходимо предварительно указать, в каком порядки и какого типа переменные будут сохраняться "It\\\'s %s, %d. Level: %f", а затем перечислить сами переменные. Таким образом буквы s, d, f обозначают типы данных – строку, целое число, вещественное число. Чтение файла Для открытия файла в режиме чтения наберите команду: f = open ("file1.txt", "r") Можно использовать функцию mode в коде, чтобы проверить, находится ли файл в открытом режиме. Если да, мы продолжаем if f.mode == \\\'r\\\': Используйте f.read, чтобы прочитать данные файла и сохранить их в переменной content. 1. Способ вывода – выводим все содержимое файла в переменную content #Open the file back and read the contents f=open("file1.txt", "r") if f.mode == \\\'r\\\': contents =f.read() print (contents) f.close() Для того, чтобы получить из строки список отдельных элементов , можно воспользоваться функцией split(“arg”), где arg – символ разбиения: with open(\\\'foo.txt\\\',\\\'r\\\')as f: c=f.read().split(" ") print(type(c[0])) Символом разбиения может быть пробел (как в примере), и любой символьный знак, например «,», «/» и др. 2. Способ вывода – поэлементное задание и вывод переменной x: f=open("file1.txt", "r") #or, readlines reads the individual line into a list fl =f.readlines() for x in fl: print(x) f.close() Загрузка файла на google-диск _________________________________________________________________ to google.colab import files // из библиотеки google.colab загружается раздел files with open(\\\'example.txt\\\', \\\'w\\\') as f: // открытие файла «example.txt» с правом чтения в переменную f f.write(\\\'some content\\\') // запись в файл f текста «some content» files.download(\\\'example.txt\\\') // сохранение файла на диске как «example.txt» _________________________________________________________________ 2. Способ. Для того чтобы подгрузить файл в colab вам потребуется обратиться к своему google диску. В приведенном ниже примере показано, как подключить диск Google Drive во время выполнения с помощью кода авторизации и как записывать и читать файлы там. После выполнения вы увидите новый файл (foo.txt) по адресу https://drive.google.com/. После монтирование google-диска необходимо перейти по предложенной ссылке URL (рис. 7). Рис. 7. Процесс подключение google-диска Самая нижняя строка на рис. 7. Оповещает о том, что ваш google-диск подключен. Файлы вашего google-диска находятся по адресу: «/content/drive/My Drive/» Для просмотра существующих документов на вашем google-диске воспользуемся командой !ls (рис. 8), Рис. 8. Просмотр существующих документов на google-диске Создадим файл foo.txt (рис. 9), записав в нем фразу «Hello Google Drive!». Рис. 9. Изменение содержимого файла foo.txt и его вывод Последняя строка кода на рис. 9. Позволяет вывести содержимое файла «foo.txt», где !cat – команда вывода содержимого файла, /content/drive/My\\\\ Drive/ – путь к файлу, foo.txt – название файла. Для дополнительной информации можно обратиться: https://colab.research.google.com/notebooks/io.ipynb#scrollTo=7taylj9wpsA2 Лабораторная работа №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. Для обращения таблицам и полям можно использовать интерактивные поля ввода Комментарии: Уважаемый студент дистанционного обучения, Оценена Ваша работа по предмету: Обработка и анализ данных Вид работы: Лабораторная работа 1 Оценка: Зачет Дата оценки: 15.05.2024 Рецензия: Уважаемый ..............................................., Данилова(Ермоленко) Любовь Филипповна Уважаемый студент дистанционного обучения, Оценена Ваша работа по предмету: Обработка и анализ данных Вид работы: Лабораторная работа 2 Оценка: Зачет Дата оценки: 17.05.2024 Рецензия: Уважаемый ..............................................., Данилова(Ермоленко) Любовь Филипповна Уважаемый студент дистанционного обучения, Оценена Ваша работа по предмету: Обработка и анализ данных Вид работы: Лабораторная работа 3 Оценка: Зачет Дата оценки: 17.05.2024 Рецензия: Уважаемый ..............................................., Данилова(Ермоленко) Любовь Филипповна В отчете файл: .doc и .ipynb Размер файла: 392 Кбайт Фаил: (.rar) ------------------- Обратите внимание, что преподаватели часто переставляют варианты и меняют исходные данные! Если вы хотите, чтобы работа точно соответствовала, смотрите исходные данные. Если их нет, обратитесь к продавцу или к нам в тех. поддержку. Имейте ввиду, что согласно гарантии возврата средств, мы не возвращаем деньги если вариант окажется не тот. -------------------
Коментариев: 0 |
||||
Есть вопросы? Посмотри часто задаваемые вопросы и ответы на них. Опять не то? Мы можем помочь сделать! Некоторые похожие работы:Обработка и анализ данных. Контрольная работа и Лабораторные работы 1, 2, 3. Вариант 03.Контрольная работа и Лабораторные работы №№1-3 по дисциплине: Проектирование информационных систем. Вариант №14 Обработка и анализ данных. Контрольная работа и Лабораторные работы 1, 2, 3. Вариант 09. Обработка и анализ данных. Контрольная работа и Лабораторные работы 1, 2, 3. Вариант 05. Контрольная работа и Лабораторные работы №1-3 по дисциплине: Проектирование информационных систем. Вариант №7 Готовый тест с ответами "Дизайн интерфейсов информационных систем". МФПУ "Синергия", МОИ, МосАП Итоговый тест по контроллингу Ещё искать по базе с такими же ключевыми словами. |
||||
Не можешь найти то что нужно? Мы можем помочь сделать! От 350 руб. за реферат, низкие цены. Спеши, предложение ограничено ! |
Вход в аккаунт:
Страницу Назад
Cодержание / Обработка и анализ данных / Лабораторные работы №1,2,3 по дисциплине: Обработка и анализ данных. Для всех вариантов
Вход в аккаунт: