Notice
Recent Posts
Recent Comments
Link
WinGyu_coder
Python 파이썬, np.array 와 List 리스트 비교하기 본문
#ChatGPT가 작성하였습니다.
np.array
와 Python의 기본 리스트(list)는 데이터를 저장하고 처리하는 방식에 여러 차이점이 있습니다. 주요 차이점은 다음과 같습니다:
효율성:
np.array
: Numpy 배열은 고정된 타입의 데이터를 저장할 수 있어 메모리 사용이 효율적이며, 내부적으로 C로 구현된 연산들로 인해 계산이 빠릅니다.list
: Python 리스트는 다양한 타입의 객체를 저장할 수 있지만, 이로 인해 메모리 사용이 덜 효율적이며 일반적인 연산에서 Numpy 배열보다 느릴 수 있습니다.
데이터 타입:
np.array
: 하나의 Numpy 배열은 동일한 데이터 타입만을 포함할 수 있습니다.list
: Python 리스트는 다양한 데이터 타입의 원소를 동시에 포함할 수 있습니다.
연산:
np.array
: 배열 간의 연산은 원소별로(element-wise) 수행됩니다. 예를 들어, 두 배열을 더하면 각 원소들이 서로 더해집니다.list
: 기본적인 연산은 리스트 확장이나 반복에 관련된 것입니다. 원소별 연산은 기본적으로 지원되지 않습니다.
기능과 메서드:
np.array
: 선형 대수, 통계, 수학 함수 등 다양한 고급 연산과 메서드를 지원합니다.list
: 기본적인 추가, 삭제, 슬라이싱 등의 연산만 지원합니다.
크기:
np.array
: 생성 후 크기를 변경할 수 없습니다.list
: 동적으로 크기를 확장하거나 축소할 수 있습니다.
메모리 구조:
np.array
: 연속적인 메모리 블록에 저장되므로 데이터 접근이 빠르며 캐시 효율성이 높습니다.list
: 포인터 기반의 구조로, 실제 데이터가 메모리의 여러 위치에 분산되어 있을 수 있습니다.
결론적으로, 데이터 분석, 과학 계산, 대규모 수치 연산 등에는 np.array
를 사용하는 것이 좋습니다. 반면, 다양한 타입의 데이터를 저장하거나, 동적으로 데이터를 추가/삭제해야 할 때는 Python의 기본 리스트를 사용하는 것이 적합합니다.
'데이터 분석' 카테고리의 다른 글
Kaggle 캐글(데이터 분석) | 타이타닉 데이터 분석하기 (2) Pandas 판다스로 데이터 확인 (0) | 2023.12.14 |
---|---|
Kaggle 캐글(데이터 분석) | 타이타닉 데이터 분석하기 (1) 데이터 준비 및 필요한 모듈 (0) | 2023.12.12 |
Seaborn 시본으로 데이터 분석하기, 데이터 배워보기 seaborn이란?(1) (0) | 2022.12.22 |