栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python学习 Day70 numpy数组操作 02

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python学习 Day70 numpy数组操作 02

numpy数组操作 一、修改数组形状 1.reshape()方法

原型:reshape(shape, order='C')
作用:不改变数据的条件下修改形状

参数说明
shape形状
order‘C’ – 按行,‘F’ – 按列,‘A’ – 原顺序,‘k’ – 元素在内存中的出现顺序

2.flat数组元素迭代器

3.flatten()方法

原型:flatten(order='C')
作用:展平的数组元素并拷贝一份,顺序通常是"C风格"

注意:修改返回的数组不会对原数组产生影响

参数说明
order‘C’ – 按行,‘F’ – 按列,‘A’ – 原顺序,‘k’ – 元素在内存中的出现顺序


4.ravel()方法

原型:numpy.ravel(order='C')
作用:展平的数组元素,顺序通常是"C风格",返回的是数组视图(view,有点类似 C/C++引用reference的意味)
注意:修改会影响原始数组



二、翻转数组 1.transpose()方法

原型:numpy.transpose(a, axes=None)
作用:对换数组的维度
注意:修改会影响原始数组

参数说明
a要操作的数组
axes整数列表,对应维度,通常所有维度都会对换

2.ndarray.T属性

类似 numpy.transpose

3.rollaxis()方法

原型:numpy.rollaxis(a, axis, start=0)
作用:向后滚动特定的轴到一个特定位置

参数说明
a要操作的数组
axis要向后滚动的轴,其它轴的相对位置不会改变
start默认为零,表示完整的滚动
会滚动到特定位置


4.swapaxes()方法

原型:numpy.swapaxes(a, axis1, axis2)
作用:交换数组的两个轴

参数说明
a要操作的数组
axis1对应第一个轴的整数
axis2对应第二个轴的整数


三、修改数组维度 1.bradcast()方法

用于模仿广播的对象,它返回一个对象,该对象封装了将一个数组广播到另一个数组的结果

2.broadcast_to()方法

原型:numpy.broadcast_to(array, shape, subok=False)
作用:将数组广播到新形状。它在原始数组上返回只读视图。 它通常不连续。 如果新形状不符合 NumPy 的广播规则,该函数可能会抛出ValueError

3.expand_dims()方法

原型:numpy.squeeze(arr, axis=None)
作用:通过在指定位置插入新的轴来扩展数组形状

参数说明
arr输入数组
axis新轴插入的位置

4.squeeze()方法

原型:numpy.squeeze(arr, axis)
作用:从给定数组的形状中删除一维的条目

参数说明
arr输入数组
axis删除轴的位置



四、连接数组 1.concatenate()方法

原型:numpy.concatenate((a1, a2, ...), axis)
作用:用于沿指定轴连接相同形状的两个或多个数组

参数说明
a1, a2, …相同类型的数组
axis沿着它连接数组的轴,默认为 0


2.stack()方法

原型:numpy.stack(arrays, axis)
作用:用于沿新轴连接数组序列

参数说明
arrays相同形状的数组序列
axis数组中的轴,输入数组沿着它来堆叠


3.hstack()方法

是 numpy.stack 函数的变体,它通过水平堆叠来生成数组

4.vsatc()方法

是 numpy.stack 函数的变体,它通过垂直堆叠来生成数组


五、分割数组 1.split()方法

原型:numpy.split(ary, indices_or_sections, axis=0)
作用:函数沿特定的轴将数组分割为子数组

参数说明
ary被分割的数组
indices_or_sections是一个整数,就用该数平均切分,如果是一个数组,为沿轴切分的位置(左开右闭)
axis沿着哪个维度进行切向,默认为0,横向切分。为1时,纵向切分


2.hsplit()方法

用于水平分割数组,通过指定要返回的相同形状的数组数量来拆分原数组

3.vsplit()方法

沿着垂直轴分割,其分割方式与hsplit用法相同


六、数组元素的添加与删除 1.resize()

原型:numpy.resize(arr, shape)
作用:返回指定大小的新数组

参数说明
arr要修改大小的数组
shape返回数组的新形状

2.append()

原型:numpy.append(arr, values, axis=None)
作用:

  • 在数组的末尾添加值
  • 追加操作会分配整个数组,并把原来的数组复制到新数组中
  • 输入数组的维度必须匹配否则将生成ValueError
参数说明
arr输入数组
values要向arr添加的值,需要和arr形状相同(除了要添加的轴)
axis默认为 None。当axis无定义时,是横向加成,返回总是为一维数组!当axis有定义的时候,分别为0和1的时候。为0的时候(列数要相同)。当axis为1时,数组是加在右边(行数要相同)

3.insert()

原型:numpy.insert(arr, obj, values, axis)
作用:在给定索引之前,沿给定轴在输入数组中插入值
注意:如果值的类型转换为要插入,则它与输入数组不同。 插入没有原地的,函数会返回一个新数组。 此外,如果未提供轴,则输入数组会被展开

参数说明
arr输入数组
obj在其之前插入值的索引
values要插入的值
axis沿着它插入的轴,如果未提供,则输入数组会被展开

4.delete()

原型:numpy.delete(arr, obj, axis)
作用:返回从输入数组中删除指定子数组的新数组。 与 insert() 函数的情况一样,如果未提供轴参数,则输入数组将展开

参数说明
arr输入数组
obj可以被切片,整数或者整数数组,表明要从输入数组删除的子数组
axis沿着它删除给定子数组的轴,如果未提供,则输入数组会被展开

5.unique()

原型:numpy.unique(arr, return_index, return_inverse, return_counts)
作用:去除数组中的重复元素

参数说明
arr输入数组,如果不是一维数组则会展开
return_index如果为true,返回新列表元素在旧列表中的位置(下标),并以列表形式储
return_inverse如果为true,返回旧列表元素在新列表中的位置(下标),并以列表形式储
return_counts如果为true,返回去重数组中的元素在原数组中的出现次数


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/488805.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号