首頁 >後端開發 >Python教學 >一文詳解Python資料分析模組Numpy基礎資料類型

一文詳解Python資料分析模組Numpy基礎資料類型

WBOY
WBOY轉載
2023-04-10 15:31:031516瀏覽

Numpy簡介

NumPy(Numerical Python) 是 Python 語言的擴充程式庫,支援大量的維度數組與矩陣運算,此外也針對陣列運算提供大量的數學函式庫。

NumPy 是一個運行速度非常快的數學函式庫,主要用於陣列計算,包含:

  • 一個強大的N維陣列物件ndarray
  • 廣播功能函數
  • #整合C/C /Fortran 程式碼的工具
  • #線性代數、傅立葉變換、隨機數產生等功能

NumPy Ndarray 物件

  • NumPy 最重要的一個特點是其N維數組物件ndarray,它是一系列同類型資料的集合,以0 下標為開始進行集合中元素的索引
  • ndarray 物件是用於存放同類型元素的多維陣列
  • ndarray 中的每個元素在記憶體中都有相同儲存大小的區域

numpy物件建立:

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
#描述object陣列或嵌套的數列dtype陣列元素的資料類型,可選copy物件是否需要複製,可選order

###建立數組的樣式,C為行方向,F為列方向,A為任意方向(預設)########################subok##### #

預設傳回一個與基底類別類型一致的陣列

ndmin

指定產生陣列的最小維度

#

資料型別轉換

一文詳解Python資料分析模組Numpy基礎資料類型

拷貝

一文詳解Python資料分析模組Numpy基礎資料類型

最小維度

一文詳解Python資料分析模組Numpy基礎資料類型

subok

一文詳解Python資料分析模組Numpy基礎資料類型

#NumPy 資料型別

#描述

bool_

#布林型資料類型(True 或False)

int_

預設的整數型別(類似C 語言中的long,int32 或int64)

#intc

與C 的int 型別一樣,一般是int32 或int 64

intp

############ ###########用於索引的整數型別(類似C 的ssize_t,一般情況下仍是int32 或int64)################# #######int8#######

位元組(-128 to 127)

int16

#整數(-32768 to 32767)

##int32

整數(-2147483648 至 2147483647)

#int64

整數(-9223372036854775808 至 9223372036854775807)

uint8

##無符號整數(0 to 255)

uint16

#無符號整數(0 to 65535)

uint32

無符號整數(0 to 4294967295)

###############uint64## ################無符號整數(0 to 18446744073709551615)######

float_

float64 類型的簡寫

#float16

#半精確度浮點數,包含:1 個符號位,5 個指數位,10 個尾數位元

float32

##單精度浮點數,包括:1 個符號位,8 個指數位,23 個尾數位

float64

############################## ############雙精確度浮點數,包含:1 個符號位,11 個指數位,52 個尾數位################# #######complex_##################complex128 類型的簡寫,即128 位元複數############### #########complex64###################複數,表示雙32 位元浮點數(實數部分與虛數部分)###################################################### #################complex128###################複數,表示雙64 位元浮點數(實數部分與虛數部分)##################

数据类型对象 (dtype)

数据类型对象(numpy.dtype 类的实例)用来描述与数组对应的内存区域是如何使用,它描述了数据的以下几个方面:

  • 数据的类型(整数,浮点数或者 Python 对象)
  • 数据的大小(例如, 整数使用多少个字节存储)
  • 数据的字节顺序(小端法或大端法)
  • 在结构化类型的情况下,字段的名称、每个字段的数据类型和每个字段所取的内存块的部分
  • 如果数据类型是子数组,那么它的形状和数据类型是什么。

字节顺序是通过对数据类型预先设定 来决定的。 意味着大端法(最重要的字节存储在最小的地址,即高位组放在最前面)。

dtype 对象是使用以下语法构造的:

numpy.dtype(object, align, copy)

object - 要转换为的数据类型对象
align - 如果为 true,填充字段使其类似 C 的结构体。
copy - 复制 dtype 对象 ,如果为 false,则是对内置数据类型对象的引用

每个内建类型都有一个唯一定义它的字符代码

字符

对应类型

b

布尔型

i

(有符号) 整型

u

无符号整型 integer

f

浮点型

c

复数浮点型

m

timedelta(时间间隔)

M

datetime(日期时间)

O

(Python) 对象

S, a

(byte-)字符串

U

Unicode

V

原始数据 (void)

dt = np.dtype(np.int32)
print(dt)

输出:
int32


dt = np.dtype('i4')
print(dt)

输出:
int32


dt = np.dtype([('age', np.int8)])
print(dt)

输出:
[('age', 'i1')]

结构化数据类型

student = np.dtype([('name','S20'), ('age','i1'), ('score', 'f4')])
a = np.array([('xm', 10, 98.123456789), ('xh', 8, 99.111111111), ('xl', '9', 100)], dtype=student)
print(a)

输出:
[(b'xm', 10,98.12346 ) (b'xh',8,99.111115) (b'xl',9, 100.)]

以上是一文詳解Python資料分析模組Numpy基礎資料類型的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除