python library functions: Scipy functions.docx

NandhiniReddy24 0 views 10 slides Oct 06, 2025
Slide 1
Slide 1 of 10
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10

About This Presentation

python library functions: Scipy functions


Slide Content

SciPy Functions (Python3)
1. Special Functions scipy.special

These are advanced mathematical functions (beyond standard math)
Gamma & Beta functions
from scipy import special
print(special.gamma(5)) # 24 (since Γ(n) = (n-1)!)
print(special.beta(2,3)) # Beta function value
Error function
print(special.erf(1)) # Error function (probability in statistics)
print(special.erfc(1)) # Complementary error function
Trigonometric (degree input)
print(special.sindg(30)) # 0.5
print(special.cosdg(60)) # 0.5
Exponential base-10
print(special.exp10(3)) # 1000
✅ Use cases: Probability, statistics, quantum mechanics, engineering math.

2. Constants scipy.constants

Physical and mathematical constants in SI units.
from scipy import constants
print(constants.pi) # 3.14159...
print(constants.c) # Speed of light (m/s)
print(constants.h) # Planck’s constant
print(constants.minute) # 60.0 seconds
print(constants.inch) # 0.0254 meters
✅ Use cases: Physics, unit conversions, scientific simulations.
3. Integration scipy.integrate

Numerical integration (single, double, triple).
Single integral
from scipy import integrate
f = lambda x: x**2
res, err = integrate.quad(f, 0, 1)
print(res) # ₀¹ x² dx = 1/3

Double/Triple integral

integrate.dblquad(lambda y,x: x*y, 0,1, 0,1) # ∬ x*y
Simpson’s & trapezoidal rules
import numpy as np
x = np.linspace(0, np.pi, 100)
y = np.sin(x)
print(integrate.simps(y, x)) # ~2.0
print(integrate.trapz(y, x)) # ~2.0
✅ Use cases: Calculus, physics integrals, probability density integration.
4. Optimization scipy.optimize

Functions for finding minima/maxima, solving equations, fitting models.
Minimize a function
from scipy import optimize
f = lambda x: x**2 + 10*np.sin(x)
result = optimize.minimize(f, x0=0)
print(result.x) # Optimal x

Solve equations
sol = optimize.root(lambda x: x**2 - 4, x0=1)
print(sol.x) # ~2
Linear programming
c = [-1, -2]
A = [[2, 1], [1, 1]]
b = [20, 16]
res = optimize.linprog(c, A_ub=A, b_ub=b)
print(res.x) # Optimal solution
Curve fitting
from scipy.optimize import curve_fit
def model(x, a, b): return a*np.exp(b*x)
x = np.array([0,1,2,3])
y = np.array([1,2.7,7.4,20.1])
popt, pcov = curve_fit(model, x, y)
print(popt) # Best-fit parameters
✅ Use cases: Machine learning, statistics, economics, physics.

5. Linear Algebra scipy.linalg

Matrix operations (built on LAPACK).
Determinant, inverse
from scipy import linalg
A = np.array([[1,2],[3,4]])
print(linalg.det(A)) # -2
print(linalg.inv(A)) # Inverse matrix
Solve linear system
b = np.array([1,2])
x = linalg.solve(A, b)
print(x) # Solution to Ax = b
Eigenvalues & SVD
w,v = linalg.eig(A) # Eigenvalues/vectors
U,s,Vt = linalg.svd(A) # Singular Value Decomposition
✅ Use cases: Engineering systems, physics simulations, PCA.

6. Statistics scipy.stats

Distributions and hypothesis testing.
Probability distributions
from scipy.stats import norm, binom, poisson
print(norm.pdf(0, loc=0, scale=1)) # Normal PDF at 0
print(binom.pmf(2, n=5, p=0.5)) # P(X=2)
print(poisson.pmf(3, mu=2)) # P(X=3)
Hypothesis tests
from scipy import stats
a = [1,2,3,4,5]
b = [2,3,4,5,6]
print(stats.ttest_ind(a, b)) # Independent t-test
print(stats.pearsonr(a,b)) # Correlation
✅ Use cases: Machine learning, data science, probability, hypothesis testing.
7. Interpolation scipy.interpolate

Estimate values between known data points.

from scipy.interpolate import interp1d
x = [0,1,2,3]
y = [0,1,4,9]
f = interp1d(x, y, kind='quadratic')
print(f(2.5)) # Interpolated value
✅ Use cases: Missing data filling, curve fitting, engineering simulations
8. Signal Processing scipy.signal

Filters, convolution, FFT-based tools.
from scipy import signal
b,a = signal.butter(3, 0.5) # 3rd-order low-pass filter
w,h = signal.freqz(b,a) # Frequency response
print(signal.convolve([1,2,3],[0,1,0.5])) # Convolution
✅ Use cases: Audio processing, biomedical signals (EEG, ECG), communications.
9. Fourier Transforms scipy.fft

Fast Fourier Transforms.
from scipy.fft import fft, ifft
x = np.array([1,2,3,4])

print(fft(x)) # Frequency domain
print(ifft(fft(x))) # Back to time domain
✅ Use cases: Signal processing, frequency analysis, image analysis.
10. Sparse Matrices scipy.sparse

Efficient storage for large sparse datasets.
from scipy.sparse import csr_matrix
A = csr_matrix([[0,0,1],[1,0,0],[0,0,0]])
print(A) # Compressed Sparse Row format
✅ Use cases: Graphs, ML, large sparse systems.
11. Spatial Algorithms scipy.spatial

Geometry, distances, clustering.
from scipy.spatial import distance, ConvexHull
print(distance.euclidean([0,0],[3,4])) # 5.0
points = np.array([[0,0],[1,0],[0,1],[1,1]])
hull = ConvexHull(points)
print(hull.vertices)
✅ Use cases: Geometry, clustering, nearest neighbor, convex hull.

12. Image Processing scipy.ndimage

Basic image manipulation.
from scipy import ndimage
import numpy as np
arr = np.eye(5)
rotated = ndimage.rotate(arr, 45)
blurred = ndimage.gaussian_filter(arr, sigma=1)
✅ Use cases: Image preprocessing, computer vision, medical imaging.
13. I/O scipy.io

Read/write external formats.
from scipy import io
mat = {"a": np.array([1,2,3])}
io.savemat("test.mat", mat) # Save MATLAB file
data = io.loadmat("test.mat") # Load MATLAB file
✅ Use cases: Interfacing with MATLAB, Matrix Market files, HDF5.
14. Clustering scipy.cluster

Clustering and vector quantization.

from scipy.cluster.vq import kmeans, vq
data = np.random.rand(10,2)
centroids, _ = kmeans(data, 2)
labels, _ = vq(data, centroids)
print(labels)
✅ Use cases: Unsupervised learning, pattern recognition, data compression.
Tags