Python анализ данных

Вопросы написания собственного программного кода (на любых языках)

Модератор: Olej

Аватара пользователя
Olej
Писатель
Сообщения: 21336
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Python анализ данных

Непрочитанное сообщение Olej » 28 дек 2017, 23:27

Olej писал(а): Одна из самых старых книг, очень обстоятельных ... по которой я сам изучал эти техники - это вот:
Изображение
Д. ХИММЕЛЬБЛАУ. ПРИКЛАДНОЕ НЕЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ
М.: "Мир", 1975
Эта книга во множестве выкладывалась в Интернет, например здесь можете её свободно скачать: Прикладное нелинейное программирование
Год выпуска: 1975
Автор: Д. Химмельблау
Издательство: Мир
Формат: DjVu
Качество: Отсканированные страницы
Количество страниц: 536
Язык: русский
Описание: Книга посвящена методам оптимального управления системами с нелинейными целевыми функциями. Описаны методы нелинейного программирования как при отсутствии ограничений на управляющие переменные, так и при наличии ограничений. Рассматриваются такие вопросы, как возможность получения решения, время оптимизации, точность решения и т, д. Для наиболее важных методов приводятся программы решения на языке ФОРТРАН. Каждая глава содержит много примеров, не только поясняющих теорию, но и иллюстрирующих необходимые вычислительные процедуры и используемые программы. Книга представляет интерес для специалистов по автоматическому управлению, вычислительной технике и прикладной математике.
Скачан: 1,434 раза

Аватара пользователя
Olej
Писатель
Сообщения: 21336
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Python анализ данных

Непрочитанное сообщение Olej » 10 янв 2018, 13:38

Olej писал(а):Python - чуть ли не идеальный язык (по скорости разработки кода) для анализа больших объёмов числовых данных ... соизмеримый с такими специализированными для этого инструментами как MathCad и MathLab.

В Python это достигается за счёт великого множества пакетов наработанных для этих целей ... а множество пакеты - за счёт высокоуровневых структур данных Python. Один из таких пакетов - описанный здесь Python: NumPy ... но не только он.
Главнейшее достоинство Python для быстрой обработки научных денных - это простота их визуализации, тот инструментарий, который предоставляет пакет Matplotlib.
Относительно Matplotlib отмечу следующее:

1. Всё что касается этого средства - разбирается достаточно подробно (с ссылками, документацией) в соседней теме Python: NumPy.

2. С пакетом Matplotlib выявилась такая ... фича (у меня выявилась, но по Интернет тысячами задаются такие вопросы), что работоспособность Matplotlib может разрушаться ... с сообщениями типа вот таких (с аварийным завершением):

Код: Выделить всё

...
/usr/lib64/python2.7/site-packages/matplotlib/font_manager.py:827: MatplotlibDeprecationWarning: The is_string_like function was deprecated in version 2.1.
  elif (not is_string_like(family) and isinstance(family, Iterable)):
/usr/lib64/python2.7/site-packages/matplotlib/text.py:187: MatplotlibDeprecationWarning: The is_string_like function was deprecated in version 2.1.
  elif is_string_like(fontproperties):
-1
'module' object has no attribute 'popall'

Это досадная ошибка, потому что ловить её достаточно неприятно ... и непонятно за какое место там хвататься :-o
Это решается приведением в соответствие версий (в согласованное состояние) пакетов Python. Как это делается детально описано в теме здесь.

Аватара пользователя
Olej
Писатель
Сообщения: 21336
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Python анализ данных

Непрочитанное сообщение Olej » 28 фев 2018, 14:16

Olej писал(а): Главнейшее достоинство Python для быстрой обработки научных денных - это простота их визуализации, тот инструментарий, который предоставляет пакет Matplotlib.
Ещё один пакет Python, органично дополняющий джентльменский набор для анализа и обработки данных:

Код: Выделить всё

[olej@dell ~]$ pip list --format=legacy | grep scipy

[olej@dell ~]$ sudo pip3 install scipy
Collecting scipy
  Downloading scipy-1.0.0-cp35-cp35m-manylinux1_x86_64.whl (49.6MB)
    100% |████████████████████████████████| 49.6MB 21kB/s 
Requirement already satisfied: numpy>=1.8.2 in /usr/lib64/python3.5/site-packages (from scipy)
Installing collected packages: scipy
Successfully installed scipy-1.0.0

Код: Выделить всё

[olej@dell ~]$ pip3 list --format=legacy | grep scipy
scipy (1.0.0)

[olej@dell ~]$ pip3 show scipy
Name: scipy
Version: 1.0.0
Summary: SciPy: Scientific Library for Python
Home-page: https://www.scipy.org
Author: SciPy Developers
Author-email: scipy-dev@python.org
License: BSD
Location: /usr/lib64/python3.5/site-packages
Requires: numpy

Аватара пользователя
Olej
Писатель
Сообщения: 21336
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Python анализ данных

Непрочитанное сообщение Olej » 28 фев 2018, 14:26

Olej писал(а): Ещё один пакет Python, органично дополняющий джентльменский набор для анализа и обработки данных:
...

Код: Выделить всё

[olej@dell ~]$ pip3 show scipy
Name: scipy
Version: 1.0.0
Summary: SciPy: Scientific Library for Python
Home-page: https://www.scipy.org
Author: SciPy Developers
Author-email: scipy-dev@python.org
License: BSD
Location: /usr/lib64/python3.5/site-packages
Requires: numpy
Вот такой вот набор:

Код: Выделить всё

[olej@dell ~]$ pip3 show numpy
Name: numpy
Version: 1.14.1
Summary: NumPy: array processing for numbers, strings, records, and objects.
Home-page: http://www.numpy.org
Author: NumPy Developers
Author-email: numpy-discussion@python.org
License: BSD
Location: /usr/lib64/python3.5/site-packages
Requires: 

Код: Выделить всё

[olej@dell ~]$ pip3 show matplotlib
Name: matplotlib
Version: 1.5.2rc2
Summary: Python plotting package
Home-page: http://matplotlib.org
Author: John D. Hunter, Michael Droettboom
Author-email: matplotlib-users@python.org
License: BSD
Location: /usr/lib64/python3.5/site-packages
Requires: numpy, python-dateutil, pytz, cycler, pyparsing

Код: Выделить всё

[olej@dell ~]$ sudo pip3 install sklearn
[sudo] пароль для olej: 
Collecting sklearn
  Downloading sklearn-0.0.tar.gz
Collecting scikit-learn (from sklearn)
  Downloading scikit_learn-0.19.1-cp35-cp35m-manylinux1_x86_64.whl (12.2MB)
    100% |████████████████████████████████| 12.2MB 83kB/s 
Building wheels for collected packages: sklearn
  Running setup.py bdist_wheel for sklearn ... done
  Stored in directory: /root/.cache/pip/wheels/d7/db/a3/1b8041ab0be63b5c96c503df8e757cf205c2848cf9ef55f85e
Successfully built sklearn
Installing collected packages: scikit-learn, sklearn
Successfully installed scikit-learn-0.19.1 sklearn-0.0

[olej@dell ~]$ pip3 show sklearn
Name: sklearn
Version: 0.0
Summary: A set of python modules for machine learning and data mining
Home-page: https://pypi.python.org/pypi/scikit-learn/
Author: UNKNOWN
Author-email: UNKNOWN
License: None
Location: /usr/lib/python3.5/site-packages
Requires: scikit-learn

Аватара пользователя
Olej
Писатель
Сообщения: 21336
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Python анализ данных

Непрочитанное сообщение Olej » 28 фев 2018, 20:29

Вот ещё книжка (PDF) в тему - Введение в научный Python:
Доля П.Г.
Харьковский Национальный Университет
Факультет математики и информатики
2016 г
Основное внимание будет уделено рассмотрению пакетов, используемых в научных вычислениях – numpy, scipy, matplotlib и sympy.
По моему мнению (IMHO!) уровень довольно посредственный ... на 1-й курс университета. ;-)
Но (опять же IMHO) есть 2 основания для того, чтобы прямо сейчас, не задумываясь её скачать:
1. Это очень неплохое изложение для начинающих, для начального знакомства с предметом;
2. Хорошо иметь под рукой как справочник, да ещё и русскоязычный для быстрой справки: по параметрам API, способу представления графиков и т.д.
Оглавление
1. Введение............................................................................................................... 2
1.1 Первые шаги. Числа, переменные, операции, выражения........................ 3
1.2 Среды разработки и выполнения Python программ................................. 13
2. Основные языковые конструкции Python....................................................... 31
2.1 Типы данных и операторы управления..................................................... 31
2.2 Списки, кортежи, словари и строки .......................................................... 37
2.3 Функции, модули и пакеты ........................................................................ 55
3. Массивы и линейная алгебра ........................................................................... 65
3.1 Массивы ....................................................................................................... 66
3.2 Элементы линейной алгебры.................................................................... 96
4. Графические возможности ............................................................................. 107
4.1 Двумерные графики matplotlib................................................................. 107
4.2 Трехмерные графики matplotlib ............................................................... 142
4.3 Анимация ................................................................................................... 160
4.4 Графические функции модуля mpmath................................................... 174
5. Символьные вычисления................................................................................ 177
5.1 Основы символьных вычислений............................................................ 177
5.2 Алгебраические вычисления.................................................................... 184
5.3 Реализация основных понятий математического анализа .................... 193
5.4 Графические возможности пакета SymPy .............................................. 200
5.5 Символьное решение дифференциальных уравнений .......................... 208
5.6 Совместное использование символьной и численной математики ..... 214
6. Научные вычисления с пакетом SciPy .......................................................... 222
6.1 Численное интегрирование. ..................................................................... 222
6.1.1 Вычисление интегралов..................................................................... 222
6.1.2 Вычисление длин, площадей и объемов.......................................... 234
6.2 Обыкновенные дифференциальные уравнения и системы................... 239
Кроме того, там есть разделы, которые редко отображаются в описаниях: символьные (аналитические) вычисления, дифференциальные уравнения и др.

Аватара пользователя
Olej
Писатель
Сообщения: 21336
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: Python анализ данных

Непрочитанное сообщение Olej » 08 апр 2018, 00:27

Olej писал(а): Запускаю online справочную систему Python:

Код: Выделить всё

[olej@dell ~]$ pydoc -p 40000 &
[1] 27763
[olej@dell ~]$ pydoc server ready at http://localhost:40000/
Теперь относительно того же свеже установленного пакета scikit-learn, по адресу http://localhost:40000/scipy.optimize.html (оптимизация) находим такие интересные подробности:
Понадобились мне методы интерполяции...

Код: Выделить всё

[olej@dell ~]$ pydoc -p 40000 &
[1] 31724
[olej@dell ~]$ pydoc server ready at http://localhost:40000/
И получаем справочную систему по адресу: http://localhost:40000/scipy.interpolate.html
========================================
Interpolation (:mod:`scipy.interpolate`)
========================================
...
Univariate interpolation
========================

.. autosummary::
:toctree: generated/

interp1d
BarycentricInterpolator
KroghInterpolator
PchipInterpolator
barycentric_interpolate
krogh_interpolate
pchip_interpolate
Akima1DInterpolator
CubicSpline
PPoly
BPoly
...
и т.д.

Ответить

Вернуться в «Программирование»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя