A система обработки данных i s комбинация машин, людей и процессов, которая для набора входов создает определенный набор выходов. Входы и выходы интерпретируются как данные, факты, информация и т. Д. в зависимости от отношения переводчика к системе.
Термин, обычно используемый как синоним системы обработки данных или хранилищ (кодов), — информационная система. Что касается, в частности, электронной обработки данных, соответствующая концепция упоминается как система электронной обработки данных .
Система обработки данных может включать в себя некоторую комбинацию:
- преобразование преобразование данных в другую форму или на другой язык.
- Проверка — Обеспечение того, что предоставленные данные «чистые, правильные и полезные».
- Сортировка — «расположение элементов в некоторой последовательности и / или в разных наборах»
- Обобщение — сокращение подробных данных до основных моментов.
- Агрегация — объединение нескольких частей данных.
- Анализ — «сбор, организация, анализ, интерпретация и представление данных.. «.
- Отчетность — список подробных или сводных данных или вычисленной информации.
Типы систем обработки данных
По области применения
Обработка научных данных
Обработка научных данных «обычно включает в себя большой объем вычислений (арифметические операции и операции сравнения) с относительно небольшим объемом входных данных, что приводит к малый объем выпуска ».
Визуализация Данных на Python | Pandas и Matplotlib
Обработка коммерческих данных
Обработка коммерческих данных «включает большой объем входных данных, относительно небольшое количество вычислительных операций и большой объем выходных данных». Бухгалтерские программы представляют собой прототипы приложений для обработки данных. Информационные системы (ИС) — это область, изучающая такие организационные компьютерные системы.
Анализ данных
«Анализ данных — это совокупность методов, которые помогают описывать факты, выявлять закономерности, разрабатывать объяснения и проверять гипотезы ». Например, анализ данных может использоваться для анализа продаж и данные о клиентах для «определения связей между продуктами для проведения кампаний перекрестных продаж».
По типу услуг
- Системы обработки транзакций
- Системы хранения и поиска информации
- Системы управления и контроля
- Системы вычислительного обслуживания
- Системы управления процессом
- Системы переключения сообщений
Примеры
Простой пример
Очень простым примером системы обработки данных является процесс обслуживания регистр чеков. Транзакции — чеки и депозиты — регистрируются по мере их совершения, и транзакции суммируются для определения текущего баланса. Ежемесячно записанные в регистре данные сверяются с, надеюсь, идентичным списком транзакций, обработанных банком.
Более сложная система ведения документации может идентифицировать транзакции — например, депозиты по источникам или чеки по типу, например, благотворительные взносы. Эта информация может использоваться для получения такой информации, как общая сумма всех взносов за год.
Используем ChatGPT при работе в Excel
Важным в этом примере является то, что это система, в которой все транзакции записываются последовательно, и каждый раз используется один и тот же метод выверки банковских счетов.
Реальный пример
Это блок-схема системы обработки данных, сочетающая ручную и компьютеризированную обработку для обработки дебиторской задолженности, выставления счетов и главная книга
Ссылки
См. Также
- Научные вычисления
- Система обработки информации (широкий термин)
Дополнительная литература
- Bourque, Linda B.; Кларк, Вирджиния А. (1992) Обработка данных: пример обзора. (Количественные приложения в социальных науках, № 07-085). Публикации Sage. ISBN 0-8039-4741-0
Источник: alphapedia.ru
6 Примеры программ обработки данных
Пример 1. Заполнить массив 1100Н-110FH внешнего ОЗУ данных константой со входов порта Р1. Транслировать программу, начиная с адреса 100Н.
1 0100 ORG 100H
2 0100 901100 MOV DPTR,#1100H
3 0103 7910 MOV R1,#16
4 0105 E590 MOV A,P1
6 0108 A3 INC DPTR
7 0109 D9FC DJNZ R1,M1
Для обращения к ВПД используется регистр указатель данных DPTR. Счетчик числа элементов массива выполнен на регистре R1. В четвертой строке программы второй байт берется равным прямому адресу порта Р1. В седьмой строке второй байт равен относительному смещению от адреса следующей команды до адреса, соответствующего метке М1 (дополнительный код числа минус 4).
Пример 2. Произведение П цифр двухразрядного десятичного числа, находящегося в аккумуляторе в двоично-десятичном коде, возвратить в аккумулятор также в двоично-десятичном коде. Транслировать программу, начиная с нулевой ячейки.
1 0000 75F010 MOV B,#10H ; Распаковка цифр числа
2 0003 84 DIV AB ; в регистры А и В
3 0004 A4 MUL AB ; Двоичный код П в А
4 0005 75F00A MOV B,#10 ; П делится на 10. А содержит
5 0008 84 DIV AB ; цифру десятков, В — остаток
6 0009 C4 SWAP A ; Цифры произведения в
7 000A 45F0 ORL A,B ; упакованном формате
Сначала исходное число делится на 16 (процессор при выполнении команды деления считает, что содержимое аккумулятора соответствует двоичному числу). Старшая цифра числа попадает в А, младшая — в В. Затем в аккумуляторе формируется двоичный код их произведения. Далее делением на 10 реализуется преобразование произведения в двоично-десятичный формат. Второй байт команды в седьмой строке соответствует прямому адресу регистра В.
Пример 3. Скопировать массив РПД 20Н-2FH на новое место, начиная с ячейки 40Н.
MOVR0,#20H; Начальный адрес первого массива
MOVR1,#40H; Начальный адрес второго массива
MOVR2,#16 ; Число элементов массива
INCR0 ; Организация цикла
DJNZR2,M1 ; элементов массива
Для обработки элементов массива в цикле всегда удобно использовать косвенную адресацию, которая в данном примере реализуется с помощью регистров R0 и R1. Другие регистры общего назначения для этой цели использовать нельзя. Директива END в данном и последующих примерах опущена.
Пример 4. Наибольшее число массива 8-разрядных чисел без знака в РПД (20Н-2FH) поместить в ячейку 30Н.
MAXEQU30H; Директива ассемблера
MOVR0,#20H; Указатель памяти
MOVR1,#16 ; Счетчик числа элементов
MOVMAX,#0 ; Обнуление ячейки результата
CJNEA,MAX,$+3 ; массива с ячейкой результата
JCM2 ; Переход, если меньше или равно
MOVMAX,A; Замена, если больше
M2:INCR0 ; Организация цикла
DJNZR1,M1 ; просмотра элементов массива
С помощью директивы EQU ячейке резидентной памяти данных с адресом 30Н присвоено символическое имя МАХ, которое неоднократно используется в тексте программы, улучшая ее «читаемость». Присвоение уникальных имен всем переменным, используемым при выполнении задачи — прием, широко используемый в практике программирования на языке ассемблера.
В данном примере результатом выполнения команды сравнения является установка или сброс флага переноса С. Команда тестирования этого флага выполняется не зависимо от того, равно содержимое аккумулятора содержимому ячейки МАХ или нет.
Пример 5. Сравнить содержимое аккумулятора с константой 100 и выполнить следующие действия:
если А=100, то перейти на метку М1;
если А>100, то перейти на метку М3.
LJMPM1 ; Переход, если А=100
JCM2 ; Переход, если А
M3: ……………….. ; Выполнение условия А>100
Если содержимое аккумулятора не равно 100, то дополнительно тестируется флаг переноса С. Он устанавливается в единицу при выполнении условия А100.
Пример 6. Преобразовать двоичное число без знака, находящееся в аккумуляторе, в двоично-десятичное и поместить его в DPTR.
MOVB,#100 ; Делим на 100 для определения
DIVAB; числа сотен
MOVA,#10 ; Делим на 10 для определения
XCHA,B; числа десятков
SWAPA; Обмен полубайтов аккумулятора
ADDA,B; Добавляем единицы
Пример 7. Показать структуру построения программы, использующей аппаратное прерывание по фронту INT0.
ORG 0 ; Начало программы
SJMP MAIN ; Переход к основной программе
ORG 0003Н ; Вектор прерывания
AJMP SUBR ; Переход к п/п обслуживания
MAIN: MOV SP,#100 ; Настройка указателя стека
SETB EA ; Сброс блокировки прерываний
SETB EX0 ; Разрешение прерывания INT0
SETB IT0 ; Бит прерывания по фронту
. ; Текст основной программы
ORG 800H ; Начало п/п прерывания
SUBR: PUSH PSW ; Сохранение в стеке
PUSH ACC ; содержимого
PUSH B ; регистров
SETB RS0 ; Выбор первого банка РОН
POP DPH ; Восстановление из стека
POP DPL ; содержимого
POP B ; регистров
RETI ; Возврат из п/п прерывания
Предполагается регистры первого банка РОН использовать только в подпрограмме обслуживания аппаратного прерывания. Для этого необходимо модифицировать содержимое указателя стека, так как после сброса он настроен на область РПД, занимаемую банком РОН1.
Прерывание происходит всегда неожиданно для основной программы, поэтому при его обслуживании необходимо сохранить содержимое PSW и всех регистров, используемых подпрограммой. В данном примере предполагается использовать в подпрограмме регистры A, B и DPTR.
Текст подпрограммы обслуживания прерываний можно располагать в любом удобном месте программы. Так как при наличии запроса на прерывание управление передается ячейке с адресом 0003Н, в этой ячейке записывается команда безусловного перехода к выбранному адресу подпрограммы обслуживания. Если после выполнения команды RETI на входе INT0 сохраняется 0, подпрограмма обслуживания не будет выполняться повторно, так как установлен бит прерывания по фронту IT0.
Пример 8. На линии Р1.0 — Р1.3 поступают сигналы X, Y, Z и V от датчиков. Выдать на линию Р1.4 этого порта сигнал в соответствии с логическим выражением F=X(Y+Z)+.
1 0090 X EQU P1.0
2 0091 Y EQU P1.1
3 0092 Z EQU P1.2
4 0093 V EQU P1.3
5 0094 F EQU P1.4
6 0000 A291 MOV C,Y
7 0002 7292 ORL C,Z
8 0004 8290 ANL C,X
9 0006 A093 ORL C,/V
10 0008 9294MOVF,C
Контроллер МК51 имеет битовый процессор и позволяет проводить логические операции и операции тестирования с отдельными битами. Прямую адресацию имеют 128 флагов пользователя в РПД и биты 11 регистров специальных функций. В РПД можно организовать карту опроса 128 датчиков и эффективно обрабатывать эту информацию с использованием команд битового процессора.
В контроллерах, не имеющих битового процессора (К580, МК48), каждая команда логической обработки бита требует загрузки байта в аккумулятор, выполнения команд логической обработки байтов, маскирования и команд условных переходов. Поэтому реализация булевых функций микроконтроллером МК51 осуществляется значительно проще и быстрее.
На языке ассемблера битовый операнд можно записывать, используя символические имена бита или регистра, либо прямые адреса бита или регистра. Вот примеры записи команды выбора первого банка РОН:
SETB RS0 ; Используется символическое имя бита
SETB PSW.3 ; Используется символическое имя регистра
SETB 0D0H.3 ; Используется прямой адрес регистра
SETB 0D3H ; Используется прямой адрес бита
Независимо от формы записи команды второй байт при трансляции соответствует прямому адресу бита (D3).
Логические операции обработки битов реализуются с участием триггера переноса С, который для битовых операндов выполняет такую же роль, как аккумулятор в командах арифметических и логических операций с байтами.
Пример 9. Организовать задержку длительностью 50 мс на микроконтроллере К1830ВЕ51 с использованием таймера, прерываний и режима холостого хода.
1 000B ORG 000BH ; Вектор прерывания
2 000B C28C CLR TR0 ; Останов Т/С0
3 000D 32 RETI ; Возврат из п/п
4 0100 ORG 100H ; Начало программы
5 0100 D2AF MAIN: SETB EA ; Снятие блокировки
6 0102 758901 MOV TMOD,#01H ; Режим 1 Т/С0
7 0105 758AB0 MOV TL0,#LOW(NOT(50000)+1)
8 0108 758C3C MOV TH0,#HIGH(NOT(50000)+1)
9 010B D28C SETB TR0 ; Старт Т/С0
10 010D D2A9 SETB IE.1 ; Разрешение прерываний
11 010F 758701 MOV PCON,#01H ; Режим ХХ
12 0112 NEXT: . ; Продолжение программы
При использовании таймера в режиме 1 (кварц на 12 МГц) можно получать задержки до 65536 мкс. Включение и выключение таймера осуществляется установкой и сбросом бита TR0 (TCON.4). Чтобы переполнение таймера произошло через 50 мс, в его регистры необходимо загрузить дополнительный код числа 50000. Формирование дополнительного кода, загрузку младшего байта в TL0, а старшего в ТН0, выполняет ассемблер.
Микроконтроллеры серии К1830, выполненные по КМОП-технологии, можно перевести в режим холостого хода установкой нулевого бита регистра РCON (IDL). В этом режиме блокируются функциональные узлы центрального процессора, что уменьшает энергопотребление до 4 мА. Сохраняется содержимое SP, PC, PSW, A и других регистров и РПД. Активизация любого разрешенного прерывания (а также аппаратный сброс микроконтроллера) заканчивает режим ХХ. После выполнения команды RETI будет исполнена команда, которая следует за командой, переведшей МК в режим холостого хода.
Установкой первого бита регистра PCON (PD) можно перевести МК в режим микропотребления (напряжение питания может быть уменьшено до 2 В, потребляемый ток — 50 мкА). В этом режиме прекращается работа всех узлов микроконтроллера, но сохраняется содержимое ОЗУ. Вывести МК из режима микропотребления можно только аппаратным сбросом (RST=1).
У микроконтроллеров серии К1816 используется только старший бит регистра PCON (SMOD). Установка этого бита удваивает скорость передачи при работе последовательного порта.
Пример 10. Подсчитать число импульсов, поступающих на вход Т1 (Р3.5) за заданный промежуток времени (10 мс). Текст программы разместить с адреса 1000Н. Результат сформировать в DPTR.
1 D8F0 TIME EQU NOT(10000)+1
2 1000 ORG 1000H
3 1000 758951 MOV TMOD,#01010001B
4 1003 E4 CLR A
5 1004 F58D MOV TH1,A
6 1006 F58B MOV TL1,A
7 1008 758CD8 MOV TH0,#HIGH(TIME)
8 100B 758AF0 MOV TL0,#LOW(TIME)
9 100E 438850 ORL TCON,#50H
10 1011 108D02 M1: JBC TF0,M2
11 1014 80FB SJMP M1
12 1016 858D83 M2: MOV DPH,TH1
13 1019 858B82 MOV DPL,TL1
Управляющее слово в третьей строке программы настраивает Т/С0 на работу в режиме 16-битового таймера, Т/С1 — в режиме 16-битового счетчика событий. В регистры таймера перед пуском загружается дополнительный код числа 10000, регистры счетчика событий обнуляются. Команда в девятой строке одновременно осуществляет старт Т/С0 и Т/С1. Счет импульсов происходит до переполнения Т/С0, после чего содержимое Т/С1 переписывается в DPTR. Команда JBC сбрасывает флаг TF0.
Пример 11. Спроектировать устройство для измерения длительности одиночного импульса, поступающего на вход INT0 (P3.2) микроконтроллера К1830ВЕ31 (рис. 6.1).
Информация о длительности импульса (число до 9999 мкс) выводится на линии портов Р2 (старший байт) и Р1 (младший байт) в двоично-десятичном коде. Сигнал управления работой внешнего индикатора сформирован на линии Р3.0. По сигналу ALE адрес очередного байта команд фиксируется с порта Р0 в регистре RG (микросхема К580ИР82), а по сигналу РМЕ этот байт поступает в микроконтроллер из внешнего ПЗУ (микросхема К556РТ5) через тот же порт Р0. Запуск устройства на измерение импульса производится нажатием кнопки «Измерение», вызывающим сброс микроконтроллера и повторный старт программы, начиная с нулевого адреса. При этом автоматически происходит обнуление регистров таймера Т/С0.
К микроконтроллеру, используемому для решения поставленной задачи, должен подключаться кварцевый резонатор на 12 МГц, при котором на вход таймера при положительном уровне на входе INT0 поступают импульсы с частотой 1 МГц. По окончании измеряемого импульса его длительность (она не должна превышать 10 мс) в микросекундах фиксируется в двоичном коде в регистрах ТН0 и ТL0.
; Прикладная программа измерителя
; длительности одиночного импульса
Преобразование двухбайтового двоичного в двухбайтовое двоично-десятичное число осуществляется методом двух счетчиков. Суммирующий двоично-десятичный счетчик реализован в портах Р1, Р2, вычитающий двоичный — на регистрах таймера TL0, TH0. Процесс преобразования заканчивается при обнулении двоичного счетчика.
Пример 12. Построить на микроконтроллере К1830ВЕ51 электронные часы с индикацией часов, минут и секунд реального времени (рис. 6.2). Прикладная программа приведена в программе выполнения лабораторной работы №2. Информация с двоично-десятичных счетчиков часов, минут и секунд, реализованных в портах Р0, Р1 и Р2, поступает на цифровые семисегментные индикаторы через преобразователи кода.
Пример 13. Сформировать на выходе WR импульс логического нуля длительностью 50 мкс.
Ниже приводится фрагмент программы, реализующий эту функцию, с указанием времени выполнения отдельных команд (при частоте кварца 12 МГц один машинный цикл составляет 1 мкс):
CLRWR; 1 машинный цикл
MOVR7,#24 ; 1 машинный цикл
DJNZR7,$ ; 2 машинных цикла
SEТВWR; 1 машинный цикл
Время между сбросом и установкой бита WR (P3.6) составит примерно 50 мкс, так как команда DJNZ выполнится 24 раза.
Пример 14. Разработать программу преобразования кода 10 элементов массива, находящегося в резидентной памяти микроконтроллера К1816ВЕ51, из двоично-десятичного в двоичный (байтовая информация).
Считаем, что массив занимает ячейки памяти данных на кристалле с 50 по 59. Используем команду умножения байтов. Подробный комментарий помещен в текст программы.
MOV R0,#50 ; Начальный адрес массива
MOV R7,#10 ; Число элементов массива
SWAP A ; десятков
MOV B,#10 ; 10 в расширитель аккумулятора
ADD A,B ; Формирование двоичного числа
INC R0 ; Наращивание адреса
DJNZ R7,M1 ; Цикл обработки массива
Время между сбросом и установкой бита WR (P3.6) составит примерно 50 мкс, так как команда DJNZ выполнится 24 раза.
Пример 15. Разрешить внешние прерывания по фронту сигналов на входах INT0 и INT1 и прерывание по переполнению таймера/счетчика Т/С1.
Прерыванию по Т/С1 присвоить высший приоритет. Стек организовать начиная с сотой ячейки РПД.
Инициализацию системы прерываний выполним установкой в 1 соответствующих битов регистров IE, IP, TCON. После системного сброса эти регистры обнулены.
MOVIE,#10001101B; Установка битовEA,ET1,EX1,EX0
; регистра масок прерываний
SETBPT1 ; Высший приоритет Т/С1 установкой
; бита IP.3 регистра приоритетов
SETBIT0 ; Прерывания по фронтуINT0
SETBIT1 ; Прерывания по фронтуINT1
MOVSP,#99 ; Модификация указателя стека
Установка бита ЕА снимает общую блокировку прерываний, которая действует после системного сброса. После выполнения первой команды разрешены три прерывания (в порядке убывания приоритетов): внешнее аппаратное по входу INT0 с вектором 03Н, внешнее аппаратное по входу INT1 с вектором 13Н и прерывание по таймеру/счетчику Т/С1 с вектором 1ВН.
После выполнения второй команды прерыванию от Т/С1 присваивается высокий уровень приоритета. Подпрограмма обслуживания этого прерывания не может быть прервана другим источником прерываний. В то же время установка флага TF1 вызовет переход к вектору 1ВН даже при выполнении подпрограмм обслуживания внешних прерываний.
Все подпрограммы прерываний должны заканчиваться командой RETI (при обслуживании прерываний действует блокировка прерываний такого же уровня, которую команда RET не снимает). После системного сброса в указатель стека заносится число 7Н. Последняя команда модифицирует его так, что при вызове подпрограммы адрес возврата запишется в сотую (младший байт) и сто первую ячейки РПД (старший байт).
Пример 16. Получить на линейке светодиодов, подключенных к линиям порта Р1, световой эффект бегущего огонька.
Нагрузочной способности порта Р1 недостаточно для непосредственного включения светодиодов (выходной ток высокого уровня сигналов — 80 мкА, выходной ток низкого уровня сигналов — 1,6 мА, в то время как нормальное свечение светодиода обеспечивается при токе порядка 5–10 мА). В качестве усилителя тока можно использовать преобразователи уровня или логические элементы НЕ (см. рис. 8.2).
Алгоритм получения эффекта «бегущая единица» состоит в организации цикла последовательных операций: вывод 1 в одну из линий порта, организация задержки, смена адреса активной линии порта. Смену адреса проще всего получить путем сдвига кодовой единицы в аккумуляторе. Задержка должна составлять десятые доли секунды. При частоте переключений больше 24 Гц глазу человека будет казаться, что все светодиоды горят непрерывно. С учетом этих замечаний построена приводимая ниже программа.
DELAY: DJNZ R0,$ ; 2
DJNZ R1,DELAY ; 2
В поле примечания приведено время выполнения команд программы в машинных циклах (при частоте кварцевого резонатора 12 МГц один машинный цикл равен 1 мкс). После окончания временной задержки регистры R0 и R1 обнулены. Таким образом, каждый раз при реализации временной задержки команда DJNZ R1,DELAY выполняется 256 раз, а команда DJNZ R0,$ — 256 2 раз.
Суммарное время задержки составляет 5+2(256+256 2 ) = = 131589 мкс.
Пример 17. Подсчитать количество символов в первом предложении текста, размещенного в РПД начиная с ячейки 20Н (включая пробелы). Результат сформировать в регистре R7 в двоично–десятичном коде.
Решение. Ниже приведен текст программы на языке ассемблера с подробным комментарием:
MOVR0,#20H; начало массива
CLRA; очистка счетчика
SJMPEXIT; закончить обработку массива
M2:INCR0 ; наращивание указателя памяти
DAA; счетчик в аккумуляторе
SJMPM1 ; организация цикла
EXIT:MOVR7,A; результат вR7
Используется косвенная адресация элементов массива. Двоично-десятичный счетчик числа символов организован в аккумуляторе с использованием команды десятичной коррекции.
После ассемблирования программы сформирован файл листинга прикладной программы massiv.lst, приведенный ниже.
# Micro Series 8051 Assembler V1.80/MD2 11/Oct/07 11:21:50 #
# (c) Copyright IAR Systems 1985 #
1 0000 7820 mov r0,#20H
2 0002 E4 clr a
4 0006 8006 sjmp exit
5 0008 08 m2: inc r0
6 0009 2401 add a,#1
8 000C 80F5 sjmp m1
9 000E FF exit: mov r7,a
Источник: studfile.net
5 ключевых библиотек и пакетов для анализа данных на Python
Не все знают, что Python не задумывался создателями как язык для анализа данных. Однако сегодня это один из самых лучших языков для статистики, машинного обучения, прогнозной аналитики, а также стандартных задач по обработке данных. Python — язык с открытым кодом, и специалисты по data science стали создавать инструменты, чтобы более эффективно выполнять свои задачи. Сайт DEV.BY со ссылкой на ресурс Data36 опубликовал пять сторонних библиотек и пакетов, не встроенных в Python 3, которые должен знать каждый аналитик.
NumPy
NumPy позволяет очень эффективно обрабатывать многомерные массивы. Многие другие библиотеки построены на NumPy, и без неё было бы невозможно использовать pandas, Matplotlib, SciPy или scikit-learn — именно поэтому она занимает первое место в списке.
Также в ней есть несколько хорошо реализованных методов, например, функция random, которая гораздо качественнее модуля случайных чисел из стандартной библиотеки. Функция polyfit отлично подходит для простых задач по прогнозной аналитике, например, по линейной или полиномиальной регрессии.
pandas
Аналитики данных обычно используют плоские таблицы, такие, как в SQL и Excel. Изначально в Python такой возможности не было. Библиотека pandas позволяет работать с двухмерными таблицами на Python.
Эта высокоуровневая библиотека позволяет строить сводные таблицы, выделять колонки, использовать фильтры по параметрам, выполнять группировку по параметрам, запускать функции (сложение, нахождение медианы, среднего, минимального, максимального значений), объединять таблицы и многое другое. В pandas можно создавать и многомерные таблицы.
Matplotlib
Визуализация данных позволяет представить их в наглядном виде, изучить более подробно, чем это можно сделать в обычном формате, и доступно изложить другим людям. Matplotlib — лучшая и самая популярная Python-библиотека для этой цели. Она не так проста в использовании, но с помощью 4-5 наиболее распространённых блоков кода для простых линейных диаграмм и точечных графиков можно научиться создавать их очень быстро.
scikit-learn
Самыми интересными возможностями Python некоторые считают машинное обучение и прогнозную аналитику, а наиболее подходящая для этого библиотека — scikit-learn. Она содержит ряд методов, охватывающих всё, что может понадобиться в течение первых нескольких лет в карьере аналитика данных: алгоритмы классификации и регрессии, кластеризацию, валидацию и выбор моделей. Также её можно применять для уменьшения размерности данных и выделения признаков.
Машинное обучение в scikit-learn заключается в том, чтобы импортировать правильные модули и запустить метод подбора модели. Сложнее вычистить, отформатировать и подготовить данные, а также подобрать оптимальные входные значения и модели. Поэтому прежде чем взяться за scikit-learn, нужно, во-первых, отработать навыки работы с Python и pandas, чтобы научиться качественно подготавливать данные, а во-вторых, освоить теорию и математическую основу различных моделей прогнозирования и классификации, чтобы понимать, что происходит с данными при их применении.
SciPy
Существует библиотека SciPy и стек SciPy. Большинство описанных в этой статье библиотек и пакетов входят в стек SciPy, предназначенный для научных расчётов на Python. Библиотека SciPy — один из его компонентов, который включает средства для обработки числовых последовательностей, лежащих в основе моделей машинного обучения: интеграции, экстраполяции, оптимизации и других.
Как и в случае с NumPy, чаще всего используется не сама SciPy, а упомянутая выше библиотека scikit-learn, которая во многом опирается на неё. SciPy полезно знать потому, что она содержит ключевые математические методы для выполнения сложных процессов машинного обучения в scikit-learn.
Другие библиотеки и пакеты для обработки и анализа данных
Есть также множество библиотек и пакетов на Python для обработки изображений и естественного языка, глубокого обучения, нейронных сетей и так далее. Однако поначалу лучше освоить пять основных библиотек, и лишь после этого браться за более узконаправленные.
Как начать пользоваться библиотеками pandas, NumPy, Matplotlib, scikit-learn и SciPy
В первую очередь нужно настроить сервер базы данных. Далее нужно дополнительно установить все инструменты:
- Подключиться к серверу
- Установить NumPy, используя команду
sudo -H pip3 install numpy - Установить pandas, используя команду
sudo apt-get install python3-pandas - Обновить дополнительные инструменты pandas с помощью двух команд:
sudo -H pip3 install —upgrade beautifulsoup4 и
sudo -H pip3 install —upgrade html5lib - Установить scikit-learn, используя команду
sudo -H pip3 install scikit-learn
После завершения установки, необходимо импортировать библиотеки (или их отдельные модули) в Jupyter, используя корректные операторы импорта, например:
import numpy as np
import pandas as pd
import matplotlib
matplotlib.use(‘Agg’)
import matplotlib.pyplot as plt
%matplotlib inline
from sklearn.linear_model import LinearRegression
После этого можно протестировать pandas и Matplotlib вместе, запустив вот эти строки:
Пошаговое руководство по настройке можно найти в этом видеокурсе.
Источник: techrocks.ru