【관련 추천: Python3 비디오 튜토리얼】
각 ndarray에는 연관된 데이터 유형(dtype) 객체가 있습니다. 이 데이터 유형 객체(dtype)는 배열의 레이아웃을 알려줍니다. 이는 다음 정보를 제공한다는 의미입니다.
ndarray의 값은 버퍼에 저장되며, 이는 연속적인 메모리 바이트 블록으로 간주될 수 있습니다. 따라서 이러한 바이트가 해석되는 방법은 dtype 개체에 의해 제공됩니다.
데이터 유형 객체는 numpy.dtype 클래스의 인스턴스이며 사용할 수 있습니다. numpy.dtype
.
매개변수:
obj: a로 변환할 객체 데이터 유형 개체.
align : [bool, 선택 사항] C 컴파일러가 C와 유사한 구조에 대해 출력하는 내용과 일치하도록 필드에 패딩을 추가합니다.
copy : [bool, 선택 사항] 데이터 유형 개체의 새 복사본을 만듭니다. False인 경우 결과는 단순히 내장 데이터 유형 개체에 대한 참조일 수 있습니다.
# Python 程序创建数据类型对象 import numpy as np # np.int16 被转换为数据类型对象。 print(np.dtype(np.int16))
출력:
int16
# Python 程序创建一个包含 32 位大端整数的数据类型对象 import numpy as np # i4 表示大小为 4 字节的整数 # > 表示大端字节序和 # < 表示小端编码。 # dt 是一个 dtype 对象 dt = np.dtype('>i4') print("Byte order is:",dt.byteorder) print("Size is:", dt.itemsize) print("Data type is:", dt.name)
출력:
바이트 순서: >
크기: 4
데이터 유형 이름: int32
유형 지정자(i4에서 위의 경우)는 다양한 형식을 취할 수 있습니다:
b1, i1, i2, i4, i8, u1, u2, u4, u8, f2, f4, f8, c8, c16, a (바이트, 정수, 부호 없는 정수를 나타냄) , 부동 소수점 숫자, 복소수 및 바이트 길이를 지정하는 고정 길이 문자열)
int8,...,uint8,...,float16, float32, float64, complex64, complex128(이번에는 비트 크기)
참고: dtype은 유형과 다릅니다.
# 用于区分类型和数据类型的 Python 程序。 import numpy as np a = np.array([1]) print("type is: ",type(a)) print("dtype is: ",a.dtype)
출력:
type is:
dtype is: int32
데이터 유형 개체는 구조적 배열을 만드는 데 유용합니다. 구조화된 배열은 다양한 유형의 데이터를 포함하는 배열입니다. 구조화된 배열은 필드를 사용하여 액세스할 수 있습니다.
필드는 객체에 이름을 부여하는 것과 같습니다. 구조화된 배열의 경우 dtype 객체도 구조화됩니다.
# 用于演示字段使用的 Python 程序 import numpy as np # 一种结构化数据类型,包含一个 16 字符的字符串(在“name”字段中)和两个 64 位浮点数的子数组(在“grades”字段中) dt = np.dtype([('name', np.unicode_, 16), ('grades', np.float64, (2,))]) # 具有字段等级的对象的数据类型 print(dt['grades']) # 具有字段名称的对象的数据类型 print(dt['name'])
출력:
('
# Python 程序演示了数据类型对象与结构化数组的使用。 import numpy as np dt = np.dtype([('name', np.unicode_, 16), ('grades', np.float64, (2,))]) # x 是一个包含学生姓名和分数的结构化数组。 # 学生姓名的数据类型是np.unicode_,分数的数据类型是np.float(64) x = np.array([('Sarah', (8.0, 7.0)), ('John', (6.0, 7.0))], dtype=dt) print(x[1]) print("Grades of John are: ", x[1]['grades']) print("Names are: ", x['name'])
출력:
('John', [ 6., 7.])
John의 성적 는: [ 6. 7.]
이름은: ['Sarah' 'John']
【관련 권장 사항:Python3 비디오 튜토리얼】
위 내용은 Python NumPy 튜토리얼 데이터 유형 객체의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!