Когда мы попытаемся решить проблему с DataMining мы столкнемся с большим количеством вопросов, но мы можем решить их все с помощью Python. В этом посте я собираюсь рассказать вам о некоторых мощных пакетах Питона
Когда мы попытаемся решить проблему с DataMining мы столкнемся с большим количеством вопросов, но мы можем решить их все с помощью Python.
В этом посте я собираюсь рассказать вам о некоторых мощных пакетах Питона.
Прежде чем перейти непосредственно к Python пакетам позвольте мне развеять ваши сомнения, которые крутятся в вашей голове прямо сейчас. Почему Python?
Мы все знаем, что питон мощный язык программирования, но что это значит на самом деле? Что делает Python мощным языком программирования?
Репутацию универсального языка Python приобрел из-за его легко изучения. Синтаксис языка Python разработан, чтобы быть легко читаемым. Python имеет большую популярность в научных вычислениях. Люди, работающие в этой области как правило во первых ученые, а потом уже программисты.
Мы работаем с объемами данных которые в народе называют BIG DATA. Чем больше данных вы должны обрабатывать, тем важнее, использовать управляемую память. И в этом питон работает очень эффективно.
Мы все знаем, что Python является интерпретируемым языком, вы можете думать, что он может быть медленным, но много удивительных вещей было сделано за последние годы для повышения производительности Питона. Моя точка зрения в том, что если вы хотите сделать высокопроизводительные вычисления, Python является лучшим жизнеспособным вариантом на сегодня.
Надеюсь, я очистил ваши сомнения о том «Почему Python?», Так что позвольте мне перейти к пакетам Python для интеллектуального анализа данных.

Описание:
NumPy является фундаментальным пакетом для научных вычислений с Python. Он содержит много разных вещей. NumPy является расширением языка программирования Python, добавляя поддержку больших многомерных массивов и матриц, вместе с большой библиотекой высокого уровня математических функций для работы на этих массивах. Предок NumPy, Numeric, был первоначально создан Джимом Хагуниным при участии ряда других разработчиков. В 2005 году Трэвис Олифант создал NumPy путем включения функции конкурирующего Numarray в Numeric, с обширными изменениями.
| Первоначальный автор (ы) | Трэвис Олифант |
| Автор (ы) | Проект сообщества |
| Первый релиз | как Numeric, 1995; как NumPy, 2006 |
| Стабильный релиз | 1.9.0 / 7 сентября 2014; 36 дней назад |
| Написан на | Python, C |
| Операционная система | Кросс-платформа |
| Тип | Технические вычисления |
| Лицензия | BSD-new license |
| Сайт | www.numpy.org |
Я твердо уверен, что питон уже установлен в вашем компьютере, если питон не установлен на Вашем компьютере, пожалуйста, установите его в первую очередь.
Откройте терминал и скопируйте эти команды:
sudo apt-get update
sudo apt-get install python-numpyПример NumPy код для использования RESHAPE функции
from numpy import *
a = arange(12)
a = a.reshape(3,2,2)
print aвывод скрипта
[[[0 1]
[2 3]]
[[4 5]
[6 7]]
[[8 9]
[10 11]]]
Описание:
SciPy программное обеспечение с открытым исходным кодом для математики, науки и техники. Библиотека SciPy зависит от NumPy, который обеспечивает удобный и быстрый работу с N-мерными массивами. Библиотека SciPy создана для работы с массивами NumPy и предоставляет множество удобных и эффективных программ, таких как программы для численного интегрирования и оптимизации. Вместе они работают на всех популярных операционных системах, быстро устанавливаются, и являются бесплатными. NumPy и SciPy просты в использовании, но являются достаточно мощными.
| Первоначальный автор (ы) | Трэвис Олифант |
| Автор (ы) | Проект сообщества |
| Стабильный релиз | 0.14.0 / 3 мая 2014; 5 месяцев назад |
| Написан на | Python, Fortran, C, C ++ |
| Операционная система | Кросс-платформа |
| Тип | Технические вычисления |
| Лицензия | BSD-new license |
| Сайт | www.scipy.org |
Откройте терминал и скопируйте эти команды:
sudo apt-get update
sudo apt-get install python-scipyПример SciPy кода
from scipy import special, optimize
f = lambda x: -special.jv(3, x)
sol = optimize.minimize(f, 1.0)
x = linspace(0, 10, 5000)
plot(x, special.jv(3, x), '-', sol.x, -sol.fun, 'o')
savefig('plot.png', dpi=96)вывод скрипта


Описание:
Pandas пакет Python обеспечивает быстрые, гибкие и выразительные структуры данных, предназначенные для упрощения работы с «реляционными» или «маркированными» данными. Он стремится быть основным высокоуровневым блоком для выполнения анализа данных в режиме реального времени на языке Python. Кроме того, он имеет цель стать самым мощным и гибким инструментом с открытым исходным кодом инструментом для анализа данных и манипуляции с ними, доступный на любом языке.
Pandas хорошо подходит для различных видов данных:
Откройте терминал и скопируйте эти команды:
sudo apt-get update
sudo apt-get install python-pandasПример Pandas кода
import pandas as pd
values = np.array([2.0, 1.0, 5.0, 0.97, 3.0, 10.0, 0.0599, 8.0])
ser = pd.Series(values)
print serВывод скрипта
0 2.0000
1 1.0000
2 5.0000
3 0.9700
4 3.0000
5 10.0000
6 0.0599
7 8.0000
Описание:
Matplotlib является библиотекой графического отображения для языка программирования Python и его расширения вычислительной математики NumPy. Он обеспечивает объектно-ориентированный API для встраивания в приложения, используя GUI инструменты такие, как WxPython, Qt, или GTK +. Существует также процедурный «pylab» интерфейс на основе OpenGL. Также Matplotlib используется в SciPy.
| Первоначальный автор (ы) | Джон Хантер |
| Автор (ы) | Майкл Droettboom и др. |
| Стабильный релиз | 1.4.2 (26 октября 2014 года) |
| Написан на | Python |
| Операционная система | Кросс-платформа |
| Тип | Графический инструмент |
| Лицензия | matplotlib license |
| Сайт | matplotlib.org |
Откройте терминал и скопируйте эти команды:
sudo apt-get update
sudo apt-get install python-matplotlibПример Matplotlib кода для создания гистограмм
import numpy as np
import matplotlib.mlab as mlab
import matplotlib.pyplot as plt
# example data
mu = 100 # mean of distribution
sigma = 15 # standard deviation of distribution
x = mu + sigma * np.random.randn(10000)
num_bins = 50
# the histogram of the data
n, bins, patches = plt.hist(x, num_bins, normed=1, facecolor='green', alpha=0.5)
# add a 'best fit' line
y = mlab.normpdf(bins, mu, sigma)
plt.plot(bins, y, 'r--')
plt.xlabel('Smarts')
plt.ylabel('Probability')
plt.title(r'Histogram of IQ: $\mu=100$, $\sigma=15$')
# Tweak spacing to prevent clipping of ylabel
plt.subplots_adjust(left=0.15)
plt.show()Вывод скрипта


IPython это командная оболочка для интерактивных вычислений на нескольких языках программирования, изначально разработана для языка программирования Python, что предлагает расширенные возможности, мультимедиа, дополнительный синтаксис оболочки, автодополнение. IPython в настоящее время предоставляет следующие возможности:
| Первоначальный автор (ы) | Фернандо Перес и другие |
| Стабильный релиз | 2.3 / 1 октября 2014; 27 дней назад |
| Написан на | Python, JavaScript, CSS, HTML |
| Операционная система | Кросс-платформа |
| Тип | Оболочка |
| Лицензия | BSD |
| Сайт | www.ipython.org |
Откройте терминал и скопируйте эти команды:
sudo apt-get update
sudo pip install ipythonПример кода IPython
Это кусок кода для построения демонстрации интеграла как площади под кривой
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Polygon
def func(x): return (x - 3) * (x - 5) * (x - 7) + 85
a, b = 2, 9 # integral limits
x = np.linspace(0, 10)
y = func(x)
fig, ax = plt.subplots()
plt.plot(x, y, 'r', linewidth=2)
plt.ylim(ymin=0)
# Make the shaded region
ix = np.linspace(a, b)
iy = func(ix)
verts = [(a, 0)] + list(zip(ix, iy)) + [(b, 0)]
poly = Polygon(verts, facecolor='0.9', edgecolor='0.5')
ax.add_patch(poly)
plt.text(0.5 * (a + b), 30, r"$\int_a^b f(x)\mathrm{d}x$", horizontalalignment='center', fontsize=20)
plt.figtext(0.9, 0.05, '$x$')
plt.figtext(0.1, 0.9, '$y$')
ax.spines['right'].set_visible(False)
ax.spines['top'].set_visible(False)
ax.xaxis.set_ticks_position('bottom')
ax.set_xticks((a, b))
ax.set_xticklabels(('$a$', '$b$'))
ax.set_yticks([])
plt.show()Вывод скрипта


Проект scikit-learn начинал в как scikits.learn, в студенческой программе Google Summer Code. Его название «SciKit» произошло от «SciPy Toolkit». Scikit-learn стал популярным в ноябре 2012 года.
| Первоначальный автор (ы) | Дэвид Корнапеу |
| Первый выпуск | июнь 2007 года; 7 лет назад |
| Стабильный релиз | 0.15.1 / 1 августа 2014 |
| Написан на | Python, Cython, C и С ++ |
| Операционная система | Linux, Mac OS X, Microsoft Windows |
| Тип | Библиотека для машинного обучения |
| Лицензия | BSD License |
| Сайт | scikit-learn.org |
Откройте терминал и скопируйте эти команды:
sudo apt-get update
sudo apt-get install python-sklearnПример Scikit кода
import matplotlib.pyplot as plt
import numpy as np
from sklearn import datasets, linear_model
# Load the diabetes dataset
diabetes = datasets.load_diabetes()
# Use only one feature
diabetes_X = diabetes.data[:, np.newaxis]
diabetes_X_temp = diabetes_X[:, :, 2]
# Split the data into training/testing sets
diabetes_X_train = diabetes_X_temp[:-20]
diabetes_X_test = diabetes_X_temp[-20:]
# Split the targets into training/testing sets
diabetes_y_train = diabetes.target[:-20]
diabetes_y_test = diabetes.target[-20:]
# Create linear regression object
regr = linear_model.LinearRegression()
# Train the model using the training sets
regr.fit(diabetes_X_train, diabetes_y_train)
# The coefficients
print('Coefficients: \n', regr.coef_)
# The mean square error
print("Residual sum of squares: %.2f" % np.mean((regr.predict(diabetes_X_test) - diabetes_y_test) ** 2))
# Explained variance score: 1 is perfect prediction
print('Variance score: %.2f' % regr.score(diabetes_X_test, diabetes_y_test))
# Plot outputs
plt.scatter(diabetes_X_test, diabetes_y_test, color='black')
plt.plot(diabetes_X_test, regr.predict(diabetes_X_test), color='blue', linewidth=3)
plt.xticks(())
plt.yticks(())
plt.show()Вывод скрипта
Coefficients:
[ 938.23786125]
Residual sum of squares: 2548.07
Variance score: 0.47
.
Информация взята здесь.
Первое видео
Ссылка на youtube.com
Доклад об анализе данных и посвящен преимущественно тем, кто хочет попробовать, но не знает с чего начать. О том, кому это вообще надо, где брать данные, какие инструменты есть в распоряжении начинающего python-аналитика и какую пользу для себя из всего можно извлечь на старте.
Слайды