<jupyter_start><jupyter_text>Revisão de Álgebra Linear<jupyter_code>import numpy as np
from numpy.random import randn<jupyter_output><empty_output><jupyter_text>Matrizes $$ A = \begin{bmatrix}  123, & 343, & 100\\                         33, &  0,  & -50 \end{bmatrix} $$<jupyter_code>A = np.array([[123, 343, 100],
              [ 33,   0, -50]])
print (A )
print (A.shape )
print (A.shape[0] )
print (A.shape[1] )
B = np.array([[5, 3, 2, 1, 4],
              [0, 2, 1, 3, 8]])
print (B )
print (B.shape )
print (B.shape[0] )
print (B.shape[1] )<jupyter_output>[[5 3 2 1 4]
 [0 2 1 3 8]]
(2, 5)
2
5<jupyter_text>$$ A = \begin{bmatrix}  123, & 343, & 100\\                         33, &  0,  & -50 \end{bmatrix} =       \begin{bmatrix}  a_{0,0}, & a_{0,1}, & a_{0,2}\\                        a_{1,0}, & a_{1,1}, & a_{1,2} \end{bmatrix} $$                                                  $$ a_{i,j} $$ é elemento da i-ésima linha e j-ésima colunaEm NumPy, para matriz de duas dimensões, a primeira dimensão é o número de linhas `shape[0]` ea segunda dimensão é o número de colunas, `shape[1]`.O primeiro índice `i` de `A[i,j]`, é o índice das linhas e o segundo índice `j`, é o índicedas colunas.<jupyter_code>print ('A=\n', A )
for i in range(A.shape[0]):
    for j in range(A.shape[1]):
        print ('A[%d,%d] = %d' % (i,j, A[i,j]) )<jupyter_output>A=
 [[123 343 100]
 [ 33   0 -50]]
A[0,0] = 123
A[0,1] = 343
A[0,2] = 100
A[1,0] = 33
A[1,1] = 0
A[1,2] = -50<jupyter_text>Matriz vetorUm vetor coluna é uma matriz de duas dimensões, porém com apenas uma coluna, tem o shape `(n,1)`, isto é, tem `n` linhas e `1` coluna.<jupyter_code>B = np.array([[3],
              [5]])
print ('B=\n', B )
print ('B.shape:', B.shape )<jupyter_output>B=
 [[3]
 [5]]
B.shape: (2, 1)<jupyter_text>Adição de matrizes$$ C = A + B $$$$ c_{i,j} = a_{i,j} + b_{i,j} $$ para todo os elementos de $A$, $B$ e $C$.É importante que as dimensões destas três matrizes sejam iguais.<jupyter_code>A = (10*randn(2,3)).astype(int)
B = randn(2,3)
C = A + B
print ('A=\n',A )
print ('B=\n',B )
print ('C=\n',C )<jupyter_output>A=
 [[ 2 11 13]
 [-6 -7  0]]
B=
 [[ 1.36385048  1.06926793 -0.02541034]
 [ 0.26885721  0.55095132  1.27389218]]
C=
 [[  3.36385048  12.06926793  12.97458966]
 [ -5.73114279  -6.44904868   1.27389218]]<jupyter_text>Multiplicação de matrizes Multiplicação matriz e escalar$$ \beta A = \begin{bmatrix} \beta a_{0,0} & \beta a_{0,1} & \ldots & a_{0,m-1}\\                             \beta a_{1,0} & \beta a_{1,1} & \ldots & a_{1,m-1} \\                             \vdots        & \vdots        & \vdots & vdots   \\                             \beta a_{n-1,0} & \beta a_{n1,1} & \ldots & a_{n-1,m-1}             \end{bmatrix} $$<jupyter_code>print ('A=\n', A )
print()
print ('4 * A=\n', 4 * A )<jupyter_output>A=
 [[ 2 11 13]
 [-6 -7  0]]

4 * A=
 [[  8  44  52]
 [-24 -28   0]]
{'fraction_non_alphanumeric': 0.1971438523162661, 'fraction_numerical': 0.10344827586206896, 'mean_word_length': 2.4436450839328536, 'pattern_counts': {'":': 0, '<': 20, '<?xml version=': 0, '>': 20, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '6', 'dir': 'jupyter-structured-clean-dedup', 'id': '581249', 'license': 'MIT', 'n_tokens_mistral': 1424, 'n_tokens_neox': 1263, 'n_words': 326, 'path': 'dev/2017-02-28-RAL-Revisao-de-Algebra-Linear.ipynb', 'repo_name': 'zoccoler/ia898', 'size': '2871'}