#!/usr/bin/env python
# coding: utf-8

# In[ ]:


210722 배열의 생성과 변형


# In[2]:


import numpy as np #넘파이 라이브러리 호출


# In[14]:


ar = np.array([0,1,2,3,4,5,6,7,8,9]) 
ax = np.array([0,1,2,3,4,5,6,7,8,9]) 
ar + ax
#벡터라이즈  (np.array 모듈을 이용하여 작성된 np array타입은 elemtwise하게 작동함)


# In[24]:


a_list = [1,2,3,4,5,6,7,8,9]
b_list=[a_list*2 for a_list in range(0,9)]
b_list
#리스트 컴프리헨션 주말에 해볼 것


# In[29]:


a = np.array([1,2,3])
b = np.array([10,20,30])
(a == 2) & (b > 20)
#논리연산자 and는 엠퍼샌드 기호로 작동
#두개의 원소가 모두 조건에 충족해야 true


# In[33]:


#2차원 배열
a = np.array([[0,1,2,3],[4,5,6,7]]) #2차원 배열 생성
a[0,:] #첫번째 행 전체 슬라이싱 a[0,:]
        #a [첫번재 행에서, : 모든 원소를 가져와라]


# In[40]:


#2차원 배열
a = np.array([[0,1,2,3],[4,5,6,7]]) #2차원 배열 생성
a[:,1] 
#두번째 열 전체 슬라이싱 a[ :,1]  
        #(a[아무 것도 들어있지 않기 때문에 모든 줄에서 : ,1첫번째 열의 원소만 가져와라]


# In[35]:


#2차원 배열
a = np.array([[0,1,2,3],[4,5,6,7]]) #2차원 배열 생성
a[:2, :2] #a[:2 . :2]
            #a[ :두번째 행과  , : 두번째 열의 모든 원소를 가져와라]


# In[57]:


#연습문제
m = np.array([[0 , 1 , 2 , 3 , 4 ],
                [5 , 6, 7 , 8 , 9],
                 [10 , 11 , 12 , 13 , 14]])
#이 값에서 7을 인덱싱하라
m[1 , 2:3]
# m[ 첫번째 행과 , 행의 두번째 원소 : 세번째 열의]


# In[ ]:


#연습문제2
m = np.array([[0 , 1 , 2 , 3 , 4 ],
                [5 , 6, 7 , 8 , 9],
                 [10 , 11 , 12 , 13 , 14]])
#이 값에서 14를 인덱싱하라
m[ : , : ]


# In[ ]:




