Поиск…


замечания

О пользователе Scipy

SciPy - это набор математических алгоритмов и удобных функций, основанных на расширении Numpy Python. Он добавляет значительную силу для интерактивного сеанса Python, предоставляя пользователю команды и классы высокого уровня для управления и визуализации данных. С SciPy интерактивный сеанс Python становится средой для обработки данных и системного прототипирования, таких как MATLAB, IDL, Octave, R-Lab и SciLab.

Дополнительным преимуществом базирования SciPy на Python является то, что это также позволяет использовать мощный язык программирования для разработки сложных программ и специализированных приложений. Научные приложения, использующие SciPy, выигрывают от разработки дополнительных модулей в многочисленных нишах программного ландшафта разработчиками по всему миру. Все от параллельного программирования до подпрограмм и классов базы данных и баз данных было доступно для программиста Python. Вся эта мощность доступна в дополнение к математическим библиотекам в SciPy.

Версии

Версия Дата выхода
0.19.0 2017-03-09
0.18.0 2016-07-25
0.17.0 2016-01-22
0.16.1 2015-10-24
0.16.0 2015-07-23
0.16b2 2015-05-24
0.16b1 2015-05-12
0.15.1 2015-01-18
0.15.0 2015-01-11
0.14.1 2014-12-30
0.14.1rc1 2014-12-14
0.14.0 2014-05-03
0.14.0rc2 2014-04-23
0.14.0rc1 2014-04-02
0.14.0b1 2014-03-15
0.13.3 2014-02-04
0.13.2 2013-12-07
0.13.1 2013-11-16
0.13.0 2013-10-19
0.13.0rc1 2013-10-10
0.12.1 2013-10-08
0.12.0 2013-04-06
0.12.0rc1 2013-03-29
0.12.0b1 2013-02-16
0.11.0 2012-09-24
0.11.0rc2 2012-08-12
0.11.0rc1 2012-07-17
0.11.0b1 2012-06-12
0.10.1 2012-02-26
0.10.1rc2 2012-02-19
0.10.1rc1 2012-02-10
0.10.0 2011-11-13
0.10.0rc1 2011-11-03
0.10.0b2 2011-09-16
0.10.0b1 2011-09-11
0.9.0 2011-02-27

Установка или настройка

Scipy содержит части, написанные на C, C ++ и Fortran, которые необходимо скомпилировать перед использованием. Поэтому убедитесь, что установлены необходимые компиляторы и заголовки разработки Python. Скомпилированный код также означает, что Scipy требует дополнительных шагов для импорта из источников разработки, которые объясняются ниже.

Выполните копию основного хранилища Scipy в Github на свою собственную учетную запись, а затем создайте локальный репозиторий через:

$ git clone [email protected]:YOURUSERNAME/scipy.git scipy
$ cd scipy
$ git remote add upstream git://github.com/scipy/scipy.git

Чтобы создать версию разработки Scipy и запустить тесты, создайте интерактивные оболочки с правильно настроенными путями импорта Python и так далее. Выполните одно из следующих действий:

$ python runtests.py -v
$ python runtests.py -v -s optimize
$ python runtests.py -v -t scipy/special/tests/test_basic.py:test_xlogy
$ python runtests.py --ipython
$ python runtests.py --python somescript.py
$ python runtests.py --bench

Сначала это создает Scipy, поэтому это может занять некоторое время в первый раз. Задание -n будет запускать тесты против версии Scipy (если есть), найденной в текущем PYTHONPATH.

Использование runtests.py - рекомендуемый подход к запуску тестов. Существует также ряд альтернатив, например сборка на месте или установка в виртуальную среду. Некоторые тесты очень медленные, и их необходимо отдельно включить.

Ссылка на API

Ubuntu & Debian

Команда запуска

sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose

Версии в Ubuntu 12.10 или новее и Debian 7.0 или новее соответствуют текущей спецификации стека SciPy. Пользователи также могут захотеть добавить репозиторий NeuroDebian для дополнительных пакетов SciPy.

Преобразование разреженной матрицы в плотную матрицу с использованием SciPy

 from scipy.sparse import csr_matrix
 A = csr_matrix([[1,0,2],[0,3,0]])
 >>>A
 <2x3 sparse matrix of type '<type 'numpy.int64'>'
    with 3 stored elements in Compressed Sparse Row format>
 >>> A.todense()
   matrix([[1, 0, 2],
           [0, 3, 0]])
 >>> A.toarray()
      array([[1, 0, 2],
            [0, 3, 0]])

Версии

Первый релиз SciPy, vsn 0.10, был выпущен 14 августа 2001 года. Текущая версия SciPy (исправленная 26 июля 2016 года) - v 0.17 (стабильная) с v .18 в ближайшее время. Подробная информация о бывших выпусках перечислены здесь

Манипуляция изображения с использованием Scipy (изменение основного изображения)

SciPy предоставляет основные функции манипуляции изображениями. К ним относятся функции чтения изображений с диска в массивы numpy, для записи массивов numpy на диск в качестве изображений и для изменения размеров изображений.

В следующем коде используется только одно изображение. Он тонирован, изменен и сохранен. Как исходные, так и результирующие изображения показаны ниже:

import numpy as np  //scipy is numpy-dependent

from scipy.misc import imread, imsave, imresize   //image resizing functions

# Read an JPEG image into a numpy array
img = imread('assets/cat.jpg')
print img.dtype, img.shape  # Prints "uint8 (400, 248, 3)"

# We can tint the image by scaling each of the color channels
# by a different scalar constant. The image has shape (400, 248, 3);
# we multiply it by the array [1, 0.95, 0.9] of shape (3,);
# numpy broadcasting means that this leaves the red channel unchanged,
# and multiplies the green and blue channels by 0.95 and 0.9
# respectively.
img_tinted = img * [1, 0.95, 0.9]

# Resize the tinted image to be 300 by 300 pixels.
img_tinted = imresize(img_tinted, (300, 300))

# Write the tinted image back to disk
imsave('assets/cat_tinted.jpg', img_tinted)

оригинал resized_tinted

Ссылка

Основной Hello World

Создайте файл (например, hello_world.py) в текстовом редакторе или в редакторе python, если у вас есть установленный ( выберите один, если вы этого не сделаете - SublimeText, Eclipse, NetBeans, SciTe ... есть много!)

hwld = 'Hello world'
print(hwld)

Обратите внимание, что переменные python не должны быть явно объявлены; объявление происходит, когда вы присваиваете значение равному значению (=) переменной.

Вывод двух строк кода состоит в том, что будет отображаться строка «Hello World».

Функции, написанные на Python, также могут использоваться в iPython.

В этом случае вы можете использовать запуск сохраненного файла «hello_world.py» в IPython следующим образом:

In [1]: %run hello_world.py  
#run file to get output below
Hello world
In [2]: wld   
#show what value of wld var is
Out[2]: 'Hello world'
In [3]: %whowld  
#display info on variable wld (name/type/value)

Variable     Type     Data/Info
----------------------------
wld         str     Hello world

Если вы хотите, вы можете использовать две переменные, например, один для приветствия и один для мира, и объединить их с помощью знака плюс (+):

 h = 'Hello '
 w = "world!'
 print(h+w)

 #this will also output Hello World, only this time with an exclamation mark..


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow