# ---
# jupyter:
#   jupytext:
#     text_representation:
#       extension: .py
#       format_name: light
#       format_version: '1.5'
#       jupytext_version: 1.14.4
#   kernelspec:
#     display_name: Python 3
#     language: python
#     name: python3
# ---

import numpy as np

list = np.array([1,2,3])

list

a = np.arange(1000)
# %time a2 = a**2

a*2 # array의 경우 각각의 a 원소에 값을 계산함

a1 = [i for i in range(1, 1000)]


print(a1*2) # list의 경우 a1을 그냥 2번 나열함

b = np.array([[0,1,2],[3,4,5]])
b

c = np.array([[[1,2], [3,4]], [[5,6], [7,8]]])

c

print(c.ndim)

print(c.shape)

print(b.shape)

a = np.array([[0, 1, 2, 3], [4, 5, 6, 7]])
a

a[0, :]

a[:, 1]

a [ a % 2 == 0 ]

# +
# 뒤 함수에서 True라고 나온 친구들만 뽑음
# -

a[np.array([0, 0])]

a





a = np.zeros(5)

a

a1 = np.zeros((3,3))
a1

a2 = np.ones((2,2))
a2

a3 = np.ones_like(a1) # np.zeros_like
a3

np.random.rand(3)

np.random.rand(3,3)

g = np.empty((4,3))
g

np.linspace(0, 10, 5) # start, end, 간격

np.random.seed(0)

np.random.rand(4)

np.random.randn(4) # 가우시안 정규분포

a = np.arange(12)

a.reshape(3,4)

b = a.reshape(2,2,-1)
b

b.flatten()

x = np.arange(5)
x

y = x.reshape(5,1)
y

z = x[:, np.newaxis]
z

a1 = np.ones((2,3))
a2 = np.zeros((2,2))

a1

a2

np.hstack([a1,a2])

a3 = np.zeros((4,3))
a3

np.vstack([a1,a3])

# +
# dstack은 축 방향으로 이동
# stack은 aixs 인수 사용 axis=0 행, axis=1 열
# -

# r_ 메서드는 hstack과 유사한데 메서드임에도 불구하고 소괄호()를 사용하지 않고 대괄호 사용
np.r_[np.array([1,2,3]), 0, 0, np.array([4,3,5])]

a = np.array([0, 1, 2])
np.tile(a, 2)


# ### meshgrid

# +
x = np.arange(3)
x

y = np.arange(5)
y
# -

X, Y = np.meshgrid(x, y)

for x, y in zip(X, Y):
    print(x, y)

[list(zip(x, y)) for x, y in zip(X, Y)]

np.diag([1,2,3])

np.identity(3)

np.eye(4)

X = np.array([[11,12,13],[21,22,23]])
X

X.T



StarcoderdataJupyterScriptsDedupFiltered