>백엔드 개발 >파이썬 튜토리얼 >특정 데이터 유형과 일련의 가변 길이 목록에서 누락된 값이 채워진 조밀한 NumPy 배열을 어떻게 만들 수 있나요?

특정 데이터 유형과 일련의 가변 길이 목록에서 누락된 값이 채워진 조밀한 NumPy 배열을 어떻게 만들 수 있나요?

Susan Sarandon
Susan Sarandon원래의
2024-11-04 03:58:01636검색

How can I create a dense NumPy array with a specific data type and filled-in missing values from a sequence of variable-length lists?

NumPy 배열 변환에서 누락된 값 채우기

가변 길이 목록의 Python 시퀀스를 NumPy 배열로 변환할 때 결과 배열이 종종 목록의 길이가 다양하기 때문에 객체 데이터 유형을 가정합니다. int32와 같은 특정 데이터 유형을 적용하면 오류가 발생할 수 있습니다.

특정 데이터 유형과 누락된 값이 채워진 조밀한 NumPy 배열을 효율적으로 얻으려면 itertools 모듈을 사용할 수 있습니다. 특히 zip_longest 함수를 사용하면 자리 표시자 값으로 목록을 채울 수 있습니다.

예를 들어 v:

v = [[1], [1, 2]]

시퀀스 v:

<code class="python">import itertools
np.array(list(itertools.zip_longest(*v, fillvalue=0))).T</code>

0이 포함된 조밀한 int32 배열을 생성하려면 자리 표시자:

array([[1, 0],
       [1, 2]])

이 코드는 다음을 생성합니다.

여기서 원래 시퀀스의 누락된 값은 0으로 채워집니다. 특히 Python 2의 경우 사용할 함수는 itertools.izip_longest입니다.

위 내용은 특정 데이터 유형과 일련의 가변 길이 목록에서 누락된 값이 채워진 조밀한 NumPy 배열을 어떻게 만들 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.