Rumah >pembangunan bahagian belakang >Tutorial Python >Pengenalan kepada jenis data Python - numpy

Pengenalan kepada jenis data Python - numpy

WBOY
WBOYke hadapan
2022-07-19 13:55:472964semak imbas

Artikel ini membawakan anda pengetahuan yang berkaitan tentang Python Ia terutamanya mengatur isu yang berkaitan dengan jenis data numpy, termasuk jenis data asas numpy, jenis data komposit tersuai numpy dan ndarray penggunaan menyimpan jenis data tarikh dan sebagainya. pada. Mari kita lihat. Saya harap ia akan membantu semua orang.

Pengenalan kepada jenis data Python - numpy

[Cadangan berkaitan: Tutorial video Python3 ]


1 Taip

类型名 类型表示符
布尔型 bool
有符号整数型 int8 / int16 / int32 / int64
无符号整数型 uint8 / uint16 / uint32 / uint64
浮点型 float16 / float32 / float64
复数型 complex64 / complex128
字符型 str,每个字符用 32 位 Unicode 编码表示
import numpy as np

arr = np.array([1, 2, 3])
print(arr, arr.dtype)

arr = arr.astype('int64')
print(arr, arr.dtype)

arr = arr.astype('float32')
print(arr, arr.dtype)

arr = arr.astype('bool')
print(arr, arr.dtype)

arr = arr.astype('str')
print(arr, arr.dtype)

Pengenalan kepada jenis data Python - numpy

2. , Numpy mengesyorkan

menggunakan tupel untuk menyimpan nilai medan atribut objek ​​

, dan kemudian menambahkan tupel pada ndarray menyediakan sintaks untuk memudahkan pemprosesan data ini.

import numpy as np

data = [
    ('zs', [99, 98, 90], 17),
    ('ls', [95, 95, 92], 16),
    ('ww', [97, 92, 91], 18)
]
# 姓名 2 个字符
# 3 个 int32 类型的成绩
# 1 个 int32 类型的年龄
arr = np.array(data, dtype='2str, 3int32, int32')
print(arr)
print(arr.dtype)
# 可以通过索引访问
print(arr[0], arr[0][2])

Pengenalan kepada jenis data Python - numpy

Apabila jumlah data adalah besar, kaedah di atas tidak sesuai untuk akses data.

ndarray menyediakan alias untuk mentakrifkan jenis data dan lajur elemen tatasusunan dalam bentuk kamus
atau senarai

. Apabila mengakses data, anda boleh mengaksesnya melalui indeks subskrip atau melalui nama lajur.

import numpy as np

data = [
    ('zs', [99, 98, 90], 17),
    ('ls', [95, 95, 92], 16),
    ('ww', [97, 92, 91], 18)]# 采用字典定义列名和元素的数据类型arr = np.array(data, dtype={
    # 设置每列的别名
    'names': ['name', 'scores', 'age'],
    # 设置每列数据元素的数据类型
    'formats': ['2str', '3int32', 'int32']})print(arr, arr[0]['age'])# 采用列表定义列名和元素的数据类型arr = np.array(data, dtype=[
    # 第一列
    ('name', 'str', 2),
    # 第二列
    ('scores', 'int32', 3),
    # 第三列
    ('age', 'int32', 1)])print(arr, arr[1]['scores'])# 直接访问数组的一列print(arr['scores'])

Pengenalan kepada jenis data Python - numpy

3 Gunakan ndarray untuk menyimpan jenis data tarikh

import numpy as np

dates = [
    '2011',
    '2011-02',
    '2011-02-03',
    '2011-04-01 10:10:10'
]

ndates = np.array(dates)
print(ndates, ndates.dtype)

# 数据类型为日期类型,采用 64 位二进制进行存储,D 表示日期精确到天
ndates = ndates.astype('datetime64[D]')
print(ndates, ndates.dtype)

# 日期运算
print(ndates[-1] - ndates[0])

Pengenalan kepada jenis data Python - numpy

1. Rentetan tarikh tidak menyokong
, dan penggunaan ruang untuk memisahkan tarikh tidak menyokong
2. Perlu menjadi ruang antara tarikh dan masa. Asingkan

2011/11/11 3. Format penulisan masa 2011 11 112011-11-11
2011-04-01 10:10:104. Taipkan kod aksara (singkatan jenis data)
10:10:10numpy menyediakan kod aksara jenis yang boleh menjadi pengendalian jenis data yang lebih Mudah.

类型 类型表示符 字符码
布尔型 bool ?
有符号整数型 int8 / int16 / int32 / int64 i1 / i2 / i4 / i8
无符号整数型 uint8 / uint16 / uint32 / uint64 u1 / u2 / u4 / u8
浮点型 float16 / float32 / float64 f2 / f4 / f8
复数型 complex64 / complex128 c8 / c16
字符型 str,每个字符用 32 位 Unicode 编码表示 U
日期 datatime64 M8[Y] / M8[M] / M8[D] / M8[h] / M8[m] / M8[s]
import numpy as np

data = [
    ('zs', [99, 98, 90], 17),
    ('ls', [95, 95, 92], 16),
    ('ww', [97, 92, 91], 18)
]
# 采用字典定义列名和元素的数据类型
arr = np.array(data, dtype={
    # 设置每列的别名
    'names': ['name', 'scores', 'age'],
    # 设置每列数据元素的数据类型
    'formats': ['2U', '3i4', 'i4']
})

print(arr)
print(arr[1]['scores'])
print(arr['scores'])
print(arr.dtype)
5.

Pengenalan kepada jenis data Python - numpy


[Cadangan berkaitan: Pengenalan kepada jenis data Python - numpyTutorial video Python3

]
import numpy as np

datas = [
    (0, '4室1厅', 298.79, 2598, 86951),
    (1, '3室2厅', 154.62, 1000, 64675),
    (2, '3室2厅', 177.36, 1200, 67659),]arr = np.array(datas, dtype={
    'names': ['index', 'housetype', 'square', 'totalPrice', 'unitPrice'],
    'formats': ['u1', '4U', 'f4', 'i4', 'i4']})print(arr)print(arr.dtype)# 计算 totalPrice 的均值sum_totalPrice = sum(arr['totalPrice'])print(sum_totalPrice/3)

Atas ialah kandungan terperinci Pengenalan kepada jenis data Python - numpy. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam