NUMPY
import numpy as n
array(([ ]))
n.array([1,2,3])
n.array(([1,2,3],[1,2,3],[1,2,3]))
n.zeros ((3,3)) 3 wiersze i 3 kolumny zer
n.ones((3,3)) ... jedynek
n.eye(3,3) 1 po jedenej przekątnej
arange( )
n.arange(1000) od 0 do 999
n.arange(3.0) liczby rzeczywiste od 0 do 2
n.arange(10,100) liczby od 10 do 99
n.arange(3,7,2) od 3 do 6 z krokiem dwa -> nie co 1 tylko każdy następny element +2
x=n.arange(12).reshape(4,3) 12 elementów ułożonych w macierzy tak, że 4 wiersze i 3 kolumny
linspace( )
n.linspace(0,10,21) 21 rzeczywistych elementów macierzy z zakresu od 0 do 10 [0, 0.5, 1, 1.5 ... 9.5, 10]
rand( , )
randint( , ,size=( ))
Macierz wypełniona losowymi elementami:
n.random.rand(5,3) liczbami od 0 do 1, wymiary 5x3
n.random.randint(3,8, size=(2,4)) liczbami od 3 do 7, 2x4
skalar- do każdej liczby z danej macierzy dodawanie 1, odejmowanie 1, mnożenie przez 3 i dzielenie przez 3
macierz=n.array(([1,2,3],[1,2,3],[1,2,3]))
macierz+1
macierz-1
macierz*3
macierz/3
macierz +, -, / macierz
macierz1=n.array(([1,2,3],[1,2,3]))
macierz2=n.array((2,3))
macierz1+macierz2
macierz1-macierz2
macierz1/macierz2
macierz * macierz
mnożenie tablicowe (1 element z 1 macierzy * 1 element z 2 macierzy; 2 element z 1 macierzy * 2 element z 2 macierzy itp)
macierz1=n.array(([1,2,3],[3,4,5])
macierz2=n.ones((2,3))
print macierz1*macierz2
mnożenie macierzowe (1 element z 1 wiersza 1 macierzy * 1 element z 1 kolumny 2 macierzy + 2 element z 1 wiersza 1 macierzy * 2 elelemnt z 1 kolumny 2 macierzy + 3 element z 1 wiersza 1 macierzy * 3 element z 1 kolumny 2 macierzy)
macierz1=n.array(([1,2,3],[3,4,5],[2,3,1]))
macierz2=n.ones ((3,3))
print n.dot(macierz1,macierz2)
WYCINANIE FRAGMENTU MACIERZY [wiersz, kolumna]
macierz=n.arange(12).reshape(4,3)
print macierz[1,1] (wyświetl element z pierwszego(licząc od 0) wiersza i pierwszej kolumny)
print macierz[1,:] (wyświetl pierwszy (liczęc od 0) wiersz, bez kolumny)
print macierz[:,2] (bez wiersza, wyświetl 2 (licząc od zera) kolumnę)
print macierz[2:3,:] (od wiersza 2 do 3 (licząc od 0), ale bez 3, bez kolumny)
print macierz[0:2,1:3] (wyświetl to co się krzyżuje na drodze: zero, pierwszy wiersz i pierwsza, druga kolumna)
----------------------------------------------------
https://docs.scipy.org/doc/numpy-dev/user/quickstart.html
https://docs.scipy.org/doc/numpy/reference/
---------------------------------------------------------
Stwórz macierz o wymiarach 5x5 wypełnioną samymi zerami. Niech wartości po przekątnych będą jedynkami.
mz=n.eye(5,5)
mz [0,4]=1
mz [1,3]=1
mz [3,1]=1
mz [4,0]=1
print mz
--------------------------------------------------------------------
Przemnóż przez siebie tablicowo dwie macierze 4x4 wypełnione losowo. Sprawdź kolejne komórki. Jeśli jej zawartość jest większa niż 10, zamień ją na 10. Jeśli jej zawartość jest mniejsza niż 0, zamień ją na 0.
mb=n.random.randint(-15,15,size=(4,4))
mb1=n.random.randint(-15,15,size=(4,4))
print mb
print mb1
mb3=n.dot(mb,mb1)
print mb3
for i in range (0,4):
for j in range (0,4):
if int(mb3[i,j]) > 10:
mb3[i,j] = 10
elif int(mb3[i,j]) < 0:
mb3[i,j] = 0
print str(mb3)
--------------------------------------------------------------------
Stwórz macierz 5x5 wypełnioną losowo. Sprawdź jaki element jest w środku. Podziel przez niego całą macierz. Wynik powinien wyświetlić się z dokładnością do dwóch miejsc po przecinku.
mv=n.random.randint(1,10, size=(5,5))
print mv
print mv[2,2]
print mv[2,2]/mv
Brak komentarzy:
Prześlij komentarz