數據分析入門

遇到的模塊

  • NumPy:多維數組的有效操做。 高效的數學函數。python

  • Matplotlib:可視化:2D和(最近)3D圖算法

  • SciPy:大型庫實現各類數值算法,例如:           數組

    • 線性和非線性方程的解
    • 優化
    • 數值整合
  • Sympy:符號計算(解析的 Analytical)函數

  • Pandas:統計與數據分析(明天)優化

 

符號計算(Symbolic computat)

 

  以上只是數值計算,接下來涉及符號計算,python經過模塊sysmpy來進行符號計算,相似於方程求解,積分等的顯式求解。spa

 

聲明一個符號變量 

import sympy as sy

#聲明x,y爲變量
x = sy.Symbol('x')
y = sy.Symbol('y')
a, b = sy.symbols('a b')
#建立一個新符號(不是函數
f = x**2 + y**2 -2*x*y + 5
print(f)
#自動簡化
g = x**2 + 2 - 2*x + x**2 -1
print(g)

符號的使用1:求解方程

import sympy as sy

x  = sy.Symbol ('x')
y  = sy.Symbol('y')
# 給定[-1,1]  (give [-1, 1])
print(sy.solve (x**2 - 1))
# 無解 (no guarantee for solution)
print(sy.solve(x**3  +  0.5*x**2 - 1))
# 用x的表達式表示y     (exepress x in terms of y)
print (sy.solve(x**3  +  y**2))
# 錯誤:找不到算法 (error:  no  algorithm  can  be  found)
print(sy.solve(x**x + 2*x - 1))

符號的使用2:集成 

import sympy as sy

x = sy.Symbol('x')
y = sy.Symbol( 'y')
a,b = sy.symbols ( 'a b')
# 單變量 single  variable
f = sy.sin(x) + sy.exp(x)
print(sy.integrate(f, (x,  a,  b)))
print(sy.integrate(f, (x,  1,  2)))
print(sy.integrate(f, (x,  1.0,2.0)))
# 多變量 multi variables
g = sy.exp(x) + x * sy.sin(y)
print(sy.integrate(g, (y,a,b)))

符號的使用3:分化

import sympy as sy

x =  sy.Symbol( 'x')
y =  sy.Symbol( 'y')
# 單變量 (single variable)
f = sy.cos(x) + x**x
print(sy . diff (f ,  x))
#  多變量  (multi variables)
g = sy.cos(y) * x + sy.log(y)
print(sy.diff (g,  y))
相關文章
相關標籤/搜索