numpy初学

时间:2021-08-10
本文章向大家介绍numpy初学,主要包括numpy初学使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

eye()函数生成个单位矩阵似的,括号中的参数是几阶单位矩阵

# from numpy import *

# print(eye(4)) # 单位矩阵的味道

本案例代码均来自菜鸟教程
NumPy最重要的一个特点就是N为数组对象ndarray
他有3种特征
ndarray 对象是用于存放同类型元素的多维数组。

ndarray 中的每个元素在内存中都有相同存储大小的区域。

ndarray 内部由以下内容组成:

  • 一个指向数据(内存或内存映射文件中的一块数据)的指针

  • 数据类型或 dtype,描述在数组中的固定大小值的格子

  • 一个表示数组形状(shape)的元组,表示各维度大小的元组。

  • 一个跨度元组(stride),其中的整数指的是为了前进到当前维度下一个元素需要"跨过"的字节数

import numpy as np
# 一个维度
a = np.array([1,2,3])
print(a)
# 多个维度
# TypeError: Field elements must be 2- or 3-tuples, got '3'
# b = np.array([1,2],[3,4]) 
b = np.array([[1,2],[3,4]]) # 格式是([])圆括号,大括号
print(b)

# 最小维度
c = np.array([1,2,3,4,5],ndmin=1)# ndmin代表有几个[]大括号
print(c)

numpy支持的数据类型有很多,可以和C相比
数据类型对象dtype构造语法如下
numpy.dtype(object,align,copy)
object-要转化为的数据类型对象
align-如果为true,填充字段使其类似C的结构体
copy-复制 dtype对象,如果为false,则是对内置数据类型对象的引用

# int8,int16,int32,int64四种数据类型可以使用字符串'l1','l2','l3','l4'代替
dt = np.dtype('i4')
print(dt) # int32
# 使用标量类型
dt1 = np.dtype(np.int32)
print(dt1)
# 字节顺序标注
dt2 = np.dtype('<i4')
print(dt2)
# 结构化数据类型的使用
# 类型字段和对应的实际类型将被创建
dt3 = np.dtype([('age',np.int8)])
print(dt3)
print('\n')
# 将数据类型应用于 ndarray对象
dt4 = np.dtype([('age',np.int8)])
a4 = np.array([(10,),(20,),(30,)],dtype=dt4)

print(a4)
print(type(a4))
# # 类型字段名可以用于存取实际的 age 列
print(a4['age'])
# 下面的示例定义一个结构化数据类型 student,
# 包含字符串字段 name,整数字段 age,及浮点字段 marks,并将这个 dtype 应用到 ndarray 对象。
student = np.dtype([('name','S20'), ('age', 'i1'), ('marks', 'f4')])
print(student)
努力拼搏吧,不要害怕,不要去规划,不要迷茫。但你一定要在路上一直的走下去,尽管可能停滞不前,但也要走。

原文地址:https://www.cnblogs.com/wkhzwmr/p/15125783.html