数据分析从0到1----Numpy篇(二)

简介: 数据分析从0到1----Numpy篇

广播机制

广播(Broadcast)是numpy对不同形状(shape)的数组进行数值计算的方式,对数组的算术运算通常在相应的元素上进行。如果两个数组a和b形状相同,即满足a.shape ==- b.shape,那么 a×b的结果就是a与b数组对应位相乘。这要求维数相同,且各维度的长度相同。

但如果两个形状不同的数组呢?它们之间就不能做算术运算了吗?

当然不是!为了保持数组形状相同,NumPy设计了一种广播机制,这种机制的核心是对形状较小的数组,在横向或纵向上进行一定次数的重复,使其与形状较大的数组拥有相同的维度。

广播的规则:

  • 让所有输入数组都向其中形状最长的数组看齐,形状中不足的部分都通过在前面加1补齐。
  • 输出数组的形状是输入数组形状的各个维度上的最大值。
  • 如果输入数组的某个维度和输出数组的对应维度的长度相同或者其长度为1时,这个数组能够用来计算,否则出错。
  • 当输入数组的某个维度的长度为1时,沿着此维度运算时都用此维度上的第一组值。

统计函数

Array-Method查看所有方法

数据类型

文件操作

loadtxt(fname, dtype=<class ‘float’>, comments=‘#’, delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0,encoding=None)

随机函数

NumPy中也有自己的随机函数,包含在random模块中。它能产生特定分布的随机数,如正态分布等。接下来介绍一些常用的随机数。

normal(loc=0.0, scale=1.0, size=None)

作用:返回一个由size指定形状的数组,数组中的值服从u=loc,a=scale的正态分布。

参数:

  • loc : float型或者float型的类数组对象,指定均值u
  • scale : float型或者float型的类数组对象,指定标准差σ
  • size : int型或者int型的元组,指定了数组的形状。如果不提供size,且loc和scale为标量(不是类数组对象),则返回一个服从该分布的随机数。

数组的其他函数

numpy.resize(arr,shape)

该函数用于返回指定形状的新数组

numpy.resize(arr,shape),有返回值,返回复制内容.如果维度不够,会使用原数组数据补齐

ndarray.resize(shape, refcheck=False),修改原数组,不会返回数据,如果维度不够,会使用0补齐

numpy.append(arr,values,axis=None)

参数说明:

  • arr:输入的数组;
  • values:向arr数组中添加的值,需要和arr 数组的形状保持一致;
  • axis:默认为None,返回的是一维数组;当axis =0时,追加的值会被添加到行,而列数保持不变,若axis=1则与其恰好相反。

numpy.insert(arr,obj,values,axis)

表示沿指定的轴,在给定索引值的前一个位置插入相应的值,如果没有提供轴,则输入数组被展开为一维数组。\

参数说明:

  • arr:要输入的数组
  • obj:表示索引值,在该索引值之前插入
  • values:要插入的值
  • axis:指定的轴,如果未提供,则输入数组会被展开为一维数组

numpy.delete(arr,obj,axis)

该方法表示从输入数组中删除指定的子数组,并返回一个新数组。它与insert()函数相似,若不提供 axis 参数,则输入数组被展开为一维数组。numpy. delete(arr,obj, axis)

参数说明:

  • arr:要输入的数组
  • obj:整数或者整数数组,表示要被删除数组元素或者子数组;
  • axis:沿着哪条轴删除子数组。

numpy.argwhere()

该函数返回数组中符合条件的数据的索引,若是在多维数组,则返回行,列索引组成的索引坐标

numpy.unique(arr,return_index,return_inverse,return_counts)

用于删除数组中重复的元素

参数说明:

  • arr:输入数组,若是多维数组则以一维数组形式展开;
  • return_index:如果为True,则返回新数组元素在原数组中的位置(索引);.
  • return_inverse:如果为True,则返回原数组元素在新数组中的位置(索引);
  • return_counts:如果为True,则返回去重后的数组元素在原数组中出现的次数。

numpy.sort(a,axis,kind,order)

对输入数组执行排序,并返回一个数组副本。

参数说明:

  • a:要排序的数组;
  • axis:沿都指定轴进行排序,如果没有指定axis,默认在最后一个轴上排序,若axis=0表示按列排序, axis=1表示按行排序;
  • kind:默认为quicksort(快速排序);
  • order:若数组设置了字段,则order表示要排序的字段。

numpy.argsort()

argsort()沿着指定的轴,对输入数组的元素值进行排序,并返回排序后的元素索引数组。

相关文章
|
5月前
|
机器学习/深度学习 数据挖掘 Python
【数据分析】numpy (二)
numpy作为数据分析,深度学习常用的库,本篇博客我们来介绍numpy的一些进阶用法
31 0
|
5月前
|
数据采集 机器学习/深度学习 数据可视化
深入学习NumPy库在数据分析中的应用场景
深入学习NumPy库在数据分析中的应用场景
|
5月前
|
机器学习/深度学习 数据挖掘 索引
Python数据分析(一)—— Numpy快速入门
Python数据分析(一)—— Numpy快速入门
|
2月前
|
数据采集 数据挖掘 数据处理
Python数据分析:Numpy、Pandas高级
在上一篇博文中,我们介绍了Python数据分析中NumPy和Pandas的基础知识。本文将深入探讨NumPy和Pandas的高级功能,并通过一个综合详细的例子展示这些高级功能的应用。
|
2月前
|
数据采集 数据挖掘 数据处理
Python数据分析:Numpy、Pandas基础
本文详细介绍了 Python 中两个重要的数据分析库 NumPy 和 Pandas 的基础知识,并通过一个综合的示例展示了如何使用这些库进行数据处理和分析。希望通过本篇博文,能更好地理解和掌握 NumPy 和 Pandas 的基本用法,为后续的数据分析工作打下坚实的基础。
|
3月前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
【7月更文挑战第12天】Python的Pandas和NumPy库助力高效数据处理。Pandas用于数据清洗,如填充缺失值和转换类型;NumPy则擅长数组运算,如元素级加法和矩阵乘法。结合两者,可做复杂数据分析和特征工程,如产品平均销售额计算及销售额标准化。Pandas的时间序列功能,如移动平均计算,进一步增强分析能力。掌握这两者高级技巧,能提升数据分析质量和效率。
48 4
|
3月前
|
数据采集 机器学习/深度学习 数据可视化
了解数据科学面试中的Python数据分析重点,包括Pandas(DataFrame)、NumPy(ndarray)和Matplotlib(图表绘制)。
【7月更文挑战第5天】了解数据科学面试中的Python数据分析重点,包括Pandas(DataFrame)、NumPy(ndarray)和Matplotlib(图表绘制)。数据预处理涉及缺失值(dropna(), fillna())和异常值处理。使用describe()进行统计分析,通过Matplotlib和Seaborn绘图。回归和分类分析用到Scikit-learn,如LinearRegression和RandomForestClassifier。
69 3
|
3月前
|
数据采集 数据可视化 数据挖掘
数据分析入门:用Python和Numpy探索音乐流行趋势
数据分析入门:用Python和Numpy探索音乐流行趋势
|
3月前
|
数据采集 数据挖掘 数据处理
Python数据分析加速器:深度挖掘Pandas与NumPy的高级功能
【7月更文挑战第14天】Python的Pandas和NumPy库是数据分析的核心工具。Pandas以其高效的数据处理能力,如分组操作和自定义函数应用,简化了数据清洗和转换。NumPy则以其多维数组和广播机制实现快速数值计算。两者协同工作,如在DataFrame与NumPy数组间转换进行预处理,提升了数据分析的效率和精度。掌握这两者的高级功能是提升数据科学技能的关键。**
35 0
|
3月前
|
数据挖掘 数据处理 决策智能
Python 数据分析工具箱:深挖 Pandas 与 NumPy 高级功能,驱动智能决策
【7月更文挑战第12天】Python的Pandas和NumPy是数据分析的基石。Pandas提供灵活的数据结构如DataFrame,用于高效处理关系型数据,而NumPy则以多维数组和科学计算功能著称。两者结合,支持数据合并(如`pd.merge`)、时间序列分析(`pd.to_datetime`)和高级数组运算。通过掌握它们的高级特性,能提升数据分析效率,应用于各领域,如金融风险评估、市场分析和医疗预测,助力数据驱动的决策。学习和熟练运用Pandas与NumPy是成为出色数据分析师的关键。
45 0
下一篇
无影云桌面