Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168756
Image: ubuntu2004
# Lara Regina Soccol Gris from pylab import * from numpy import * # Dez operações com matrizes n=np.array([[10,20,30],[40,50,60],[70,80,90]]) m=array([[0.1,0.2,0.3],[0.4,0.5,0.6],[0.7,0.8,0.9]])
n
array([[10, 20, 30], [40, 50, 60], [70, 80, 90]])
m
array([[ 0.1, 0.2, 0.3], [ 0.4, 0.5, 0.6], [ 0.7, 0.8, 0.9]])
np.shape(n) #formato da matriz n
(3, 3)
np.delete(n,0) #exclui elemento zero da matriz n (10)
array([20, 30, 40, 50, 60, 70, 80, 90])
np.transpose(m) #tranposta da matriz m
array([[ 0.1, 0.4, 0.7], [ 0.2, 0.5, 0.8], [ 0.3, 0.6, 0.9]])
np.amin(n) #valor mínimo contido na matriz n
10
np.amax(m) #valor máximo contido na matriz m
0.90000000000000002
np.reshape(n,[9,1]) #redimensionando a matriz n para o formato 9 por 1
array([[10], [20], [30], [40], [50], [60], [70], [80], [90]])
np.append(m,1.0) #adicionando o valor 1.0 ao final da matriz m
array([ 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1. ])
nn=np.tile(n,2) #construindo uma matriz n duplicando as linhas da matriz n nn
array([[10, 20, 30, 10, 20, 30], [40, 50, 60, 40, 50, 60], [70, 80, 90, 70, 80, 90]])
mmm=np.repeat(m,3) #construindo uma matriz mm contendo três vezes cada elemento de m mmm
array([ 0.1, 0.1, 0.1, 0.2, 0.2, 0.2, 0.3, 0.3, 0.3, 0.4, 0.4, 0.4, 0.5, 0.5, 0.5, 0.6, 0.6, 0.6, 0.7, 0.7, 0.7, 0.8, 0.8, 0.8, 0.9, 0.9, 0.9])
w=np.random.randn(21).reshape([7,3]) #construindo uma matriz randômica com vinte e um elementos no formato 7 por 3 w
array([[-0.94877544, -0.83925698, 0.1971061 ], [ 0.74973105, -0.88904935, 1.61065222], [-1.55118442, -0.96860487, -0.6332278 ], [-2.05749257, 1.53298799, -0.96613141], [ 0.85002123, -0.63863843, 0.57533901], [ 1.21803655, 0.20361029, -0.81096291], [-0.69183466, -1.36826272, 0.34859475]])
# Cinco operações com álgebra linear np.inner(n,m) #produto interno de duas matrizes
array([[ 14., 32., 50.], [ 32., 77., 122.], [ 50., 122., 194.]])
np.linalg.det(m) #determinante da matriz m
6.6613381477509375e-18
np.linalg.norm(n) #norma da matriz n
168.81943016134133
np.linalg.inv(m) #inversa da matriz m
array([[ -4.50359963e+15, 9.00719925e+15, -4.50359963e+15], [ 9.00719925e+15, -1.80143985e+16, 9.00719925e+15], [ -4.50359963e+15, 9.00719925e+15, -4.50359963e+15]])
np.linalg.svd(n) #decomposição de valor singular da matriz n
(array([[-0.21483724, 0.88723069, 0.40824829], [-0.52058739, 0.24964395, -0.81649658], [-0.82633754, -0.38794278, 0.40824829]]), array([ 1.68481034e+02, 1.06836951e+01, 4.71298640e-15]), array([[-0.47967118, -0.57236779, -0.66506441], [-0.77669099, -0.07568647, 0.62531805], [-0.40824829, 0.81649658, -0.40824829]]))
# Três operações com estatística dados=np.random.randn(40) #criando uma matriz randômica com 40 dados dados
array([ 0.80161792, 1.1461211 , 0.23844443, -0.9499565 , 0.05984039, -0.5194613 , 0.27762587, -1.34055725, 1.18572821, -0.50821571, -0.00894709, -0.32401319, -0.11293804, 1.12409572, 1.30904518, -0.97730956, 0.65507485, 0.79324638, 0.59535674, -1.41444595, -1.30616559, -0.20565688, 0.17739815, 0.27816143, -0.75788004, 0.51813356, 1.27854417, -0.93898827, -1.17670898, 0.05068953, -1.71698032, -0.18960092, -1.77570345, -0.49569028, 1.80735667, 0.32717487, -0.11095304, -0.10674406, 0.65271393, 0.64219156])
np.mean(dados) #calculando a média dos dados
-0.02545889352446289
np.std(dados) # calculando o desvio padrão dos dados
0.8858208592434974
np.var(dados) #calculando a variância dos dados
0.78467859467088796
# Três funções trigonométricas s=np.sin(dados) #seno dos valores da matriz dados s
array([ 0.71848236, 0.9111726 , 0.23619136, -0.8133902 , 0.05980468, -0.49641257, 0.2740732 , -0.97361186, 0.92677285, -0.48661924, -0.00894697, -0.31837348, -0.1126981 , 0.90187732, 0.96593831, -0.82899573, 0.6092186 , 0.71263448, 0.56080415, -0.98780216, -0.96518915, -0.20421025, 0.17646915, 0.27458822, -0.68738328, 0.49525955, 0.95759744, -0.80696098, -0.92334738, 0.05066783, -0.98933413, -0.18846698, -0.97907989, -0.47563896, 0.97214984, 0.32136905, -0.11072553, -0.10654147, 0.60734469, 0.59895185])
c=np.cos(dados) #cosseno dos valores da matriz dados c
array([ 0.69554518, 0.41202488, 0.97170656, 0.58171847, 0.9982101 , 0.86808673, 0.96170883, 0.2282103 , 0.37562227, 0.87361417, 0.99995998, 0.94796536, 0.99362928, 0.43199224, 0.25877245, 0.55925493, 0.79300233, 0.70153553, 0.82794849, 0.15571415, 0.26155288, 0.97892705, 0.98430617, 0.96156191, 0.72629487, 0.86874506, 0.28810961, 0.59060475, 0.38396565, 0.99871556, -0.1456639 , 0.98207953, -0.20347622, 0.8796406 , -0.23436016, 0.94695403, 0.99385102, 0.99430826, 0.79443843, 0.80078504])
t=np.tan(dados) #tangente dos valors da matriz dados t
array([ 1.03297728, 2.21145043, 0.2430686 , -1.39825403, 0.05991192, -0.57184674, 0.28498564, -4.26629245, 2.46730006, -0.55701849, -0.00894733, -0.33584927, -0.11342068, 2.08771646, 3.73277102, -1.48232172, 0.76824315, 1.01582093, 0.67734184, -6.3436892 , -3.69022572, -0.20860619, 0.17928279, 0.28556478, -0.94642453, 0.57008617, 3.32372607, -1.36632999, -2.40476557, 0.05073299, 6.79189657, -0.19190602, 4.8117656 , -0.54071965, -4.14810195, 0.33937133, -0.11141059, -0.10715134, 0.76449561, 0.74795584])
clf() plot(s,c) ylabel('cos(dados)') xlabel('sin(dados)') title('Grafico de um array randomico') savefig('Funcoes trigonometricas')
clf() x = np.linspace(0, pi, 20) y = np.tan(x) xx = np.linspace(0, 2*np.pi, 50) yinterp = np.interp(xx, x, y) import matplotlib.pyplot as plt plt.plot(x, y, 'o') plt.plot(xx, yinterp, '-x') title('Interpolacao (tangente)') savefig('interpolacao')
# Quatro exemplos com polinômios (polyfit) p1=poly1d([1,3,-6]) # criando um polinômio de primeiro grau print poly1d(p1)
2 1 x + 3 x - 6
roots(p1) #obtendo as raízes do polinômio criado
array([-4.37228132, 1.37228132])
p1(40) #avaliando o valor do polinômio em x=40
1714
clf() x = array([0.0, 1.0, 2.0, 3.0, 4.0, 5.0]) y = array([0.0, 0.8, 1.0, 1.1, 1.2, 1.3]) z = polyfit(x,y,3) p=poly1d(z) p30 = poly1d(np.polyfit(x, y, 30)) xp = linspace(-2, 6, 100) subplot(2,1,1), plot(x, y, '.', xp, p(xp),'-') subplot(2,1,2), plot(x, y, '.', xp, p30(xp), '--') title('Comando polyfit') savefig('Polyfit')
/home/sage/sage_install/sage/local/lib/python2.6/site-packages/numpy/lib/polynomial.py:488: RankWarning: Polyfit may be poorly conditioned warnings.warn(msg, RankWarning)