반응형
Numpy 행렬의 확장
a = np.array([1, 2, 3])
b = np.append(a, [4, 5, 6])
print(b)
=결과=
[1 2 3 4 5 6]
- append 함수를 활용한다. 이는 비항구적으로 작용한다. (a자체가 변경되지는 않음)
- 기존 numpy에 배열값을 파라미터로 활용해 추가할 수 있다.
a = np.array([[1, 2], [3, 4]])
b = np.append(a, [[9, 9]], axis=0)
=결과=
[[1 2]
[3 4]
[9 9]]
- axis 옵션을 조정해 행 혹은 열에만 값을 추가할 수도 있다.
- axis를 0으로 설정하면 행값이 추가된다.
c = np.append(a, [[9], [9]] , axis=1)
print(c)
=결과=
[[1 2 9]
[3 4 9]]
- axis값을 1로 주고 열값을 추가할 수 있다.
- 단, append에 사용되는 파라미터가 위와 같은 형태이어야 한다.
- cf. axis는 가로방향이라고 생각해놓으면 좋다. 따라서 axis를 1로 두면 가로방향으로 확장되어야하니 열이 추가되는 것이다.
Numpy 배열의 삭제
a = np.array([[1, 2, 3],[4, 5, 6]])
b = np.delete(a, 0)
print(b)
=결과=
[2 3 4 5 6]
- delete 함수를 활용한다. 이는 비항구적으로 작용한다. (a자체가 변경되지는 않음)
- 하나면 입력하면 해당 원소값만 삭제된다.
print(np.delete(a, (0, 2, 4)))
=결과=
[2, 4, 6]
- 이와같이 여러 값을 한 번에 삭제할 수도 있다. (0,2,4번 인덱스값 삭제)
print(np.delete(a, 0, axis = 0))
=결과=
[[4, 5, 6]]
- axis 값을 0으로 줬으니 세로방향으로 처리된다.
- 즉, 새로방향의 0번인덱스인 행 하나가 삭제된다.
np.delete(a, 1, axis = 1)
=결과=
[[1, 3],
[4, 6]]
- axis 값을 1로 주면 가로방향으로 처리된다.
- 즉, 가로방향의 1번 인덱스인 열 하나가 삭제된다.
반응형
'🛠 기타 > Data & AI' 카테고리의 다른 글
[파이썬] Matplotlib 패키지 (0) | 2020.07.09 |
---|---|
[파이썬] Numpy 배열의 연산 (0) | 2020.07.09 |
[파이썬] Numpy 배열의 참조 (reshape를 통해 생성한 배열과 값을 공유하는 이유?) (0) | 2020.07.09 |
[파이썬] Numpy Fancy Indexing (0) | 2020.07.09 |
[파이썬] Numpy 기초 (0) | 2020.07.08 |