首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

NumPy 笔记(超级全!收藏√)

,默认 np.floatdelimiter分隔字符串,默认是任何空格,改为 逗号skiprows跳过前x行,一般跳过第一行表头usecols读取指定的列,索引,元组类型unpack如果True,读入属性将分别写入不同数组变量...NumPy 的数组中比较重要 ndarray 对象属性有:  属性说明ndarray.ndim秩,即轴的数量或维度的数量ndarray.shape数组的维度,对于矩阵,n 行 m 列ndarray.size...切片还可以包括省略号 …,来使选择元组的长度与数组的维度相同。 如果在行位置使用省略号,它将返回包含行中元素的 ndarray。 ...布尔索引  我们可以通过一个布尔数组来索引目标数组。  布尔索引通过布尔运算(如:比较运算符)来获取符合指定条件的元素的数组。 ...函数描述add()对两个数组的逐个字符串元素进行连接multiply()返回按元素多重连接后的字符串center()居中字符串capitalize()将字符串第一个字母转换为大写title()将字符串的每个单词的第一个字母转换为大写

4.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python 金融编程第二版(二)

    ③ 选择第一行的第三个元素;在括号内,索引由逗号分隔。 ④ 选择第二列。 ⑤ 计算所有值的总和。 ⑥ 沿第一个轴计算总和,即按列计算。 ⑦ 沿第二轴计算总和,即按行计算。...,与基于list的方法进行比较变得明显: ndarray对象具有内置的维度(轴)。...③ 选择与索引c对应的值。 ④ 选择与索引a和d对应的两个值。 ⑤ 通过索引位置选择第二行和第三行。 ⑥ 计算单列的总和。 ⑦ 使用apply()方法以向量化方式计算平方。...② 检查x列中的值是否为正且y列中的值是否为负。 ③ 检查x列中的值是否为正或y列中的值是否为负。 使用结果布尔Series对象,复杂数据(行)的选择很简单。...② 所有x列的值为正且y列的值为负的行。 ③ 所有列中 x 的值为正或列中 y 的值为负的所有行(这里通过各自的属性访问列)。 比较运算符也可以一次应用于完整的 DataFrame 对象。

    20110

    NumPy入门攻略:手把手带你玩转这款强大的数据分析和计算工具

    本文NumPy的要点包括: 创建NumPy数组 获取NumPy中数组的维度 NumPy数组索引与切片 NumPy数组比较 替代值 NumPy数据类型转换 NumPy的统计计算方法 01 创建数组 在NumPy...print(matrix[:,0:2])代表的是选取所有的行,列的索引是0和1。 print(matrix[1:3,:])代表的是选取行的索引值1和2以及所有的列。...print(matrix[1:3,0:2])代表的是选取行的索引1和2以及列的索引是0和1的所有数据。 07 数组比较 NumPy强大的地方是数组或矩阵的比较,数据比较之后会产生boolean值。..._25)输出的是[False True False],首先matrix[:,1]代表的是所有的行,以及索引为1的列->[10,25,40],最后和25进行比较,得到的就是false,true,false...如下: vector = numpy.array(["1", "2", "3"]) vector = vector.astype(float) 注意:上述例子中,如果字符串中包含非数字类型的时候,从string

    1.4K30

    Python可视化数据分析04、NumPy库使用

    属性 说明 ndarray.ndim 秩,即轴的数量或维度的数量 ndarray.shape 数组的维度,对于矩阵,即为n行m列 ndarray.size 数组元素的总个数,相当于.shape中n*m的值...]) # 第2行元素 print(a[..., 1:]) # 第2列及剩下的所有元素 NumPy高级索引 除了对Ndarray数组进行切片操作和索引操作,还可以对Ndarray数组进行整数数组索引...中有专门处理字符串的函数,这些函数包含在numpy.char中。...capitalize() 将字符串第一个字母转换为大写 title() 将字符串的每个单词的第一个字母转换为大写 lower() 数组元素转换为小写,它对每个元素调用str.lower()函数 upper...使用新字符串替换字符串中的所有子字符串 encode() 对数组中的每个元素调用str.encode()函数。

    1.5K40

    NumPy 基础知识 :1~5

    最后,我们将展示如何从文件中读取/写入 NumPy 数组,并开始使用 NumPy 进行一些实际的分析。...但是x的输入字符串包含天单位,而y的字符串则没有。 创建 NumPy datetime64时,它将自动从输入字符串的形式中进行选择,因此当我们为x和y都打印出dtype时,我们可以看到x的单位为D。...NumPy 文件 I/O 现在我们可以执行 NumPy 数组计算和操作,并且知道如何构造记录数组,现在是时候进行一些实际的分析了,方法是将文件读入 NumPy 数组并将结果数组输出到文件中以进行进一步的分析...我们将导出的 CSV 文件读入 NumPy 记录数组,并将其与原始记录数组进行比较。...这只是向您展示如何将 NumPy 数组与数据文件连接的开始。 现在是时候对您的数据进行一些真实的分析了! 总结 在本章中,我们介绍了ndarray对象的最后一个重要组成部分:步幅。

    5.7K10

    Python3快速入门(十二)——Num

    ,k = 0表示主对角线,k>0的值选择在主对角线之上的对角线中的元素,k的值选择在主对角线之下的对角线中的元素。...print(array_rand[1:7:2]) # output: # [1 2 3 4 5 6 7 8 9] # [2 4 6] ndarray数组可以通过整数数组进行索引,通常需要分别构造行索引和列索引的数组...可以通过一个布尔数组来进行索,布尔索引通过布尔运算(如:比较运算符)来获取符合指定条件的元素的数组。...numpy.char.capitalize() 将数组数值字符串的第一个字母转换为大写: numpy.char.title() 将数组数值字符串的每个单词的第一个字母转换为大写: numpy.char.lower...order参数,可选项为C(行序优先) 或者 F(列序优先)。 矩阵是二维的,而 ndarray 是一个 n 维数组。 矩阵与ndarray是可互换的。

    4.7K20

    NumPy 1.26 中文文档(五)

    这些项可以使用 N 个整数之类的值进行索引。 所有 ndarrays 都是同构的:每个项目占用相同大小的内存块,并且所有块的解释方式完全相同。...与 Python 中的其他容器对象一样,可以通过对数组进行索引或切片(例如使用N个整数)以及通过ndarray的方法和属性来访问和修改数组的内容。...索引可以变化的范围由数组的shape指定。每个项目占用多少字节以及如何解释字节是由与数组相关联的数据类型对象定义的。...索引范围由数组的 shape 指定。每个条目占用多少字节以及这些字节如何解释由与数组关联的 数据类型对象 定义。 内存段本质上是一维的,有许多不同的方案可以将 N 维数组的条目排列在一维块中。...数组的步幅告诉我们在内存中移动到特定轴上的下一个位置时需要跳过多少字节。例如,我们需要跳过 4 个字节(1 个值)才能移动到下一列,但是要跳过 20 个字节(5 个值)才能到达下一行的相同位置。

    15410

    NumPy 1.26 中文官方指南(二)

    数组是 NumPy 库的核心数据结构。数组是一组值的网格,它包含关于原始数据、如何定位元素以及如何解释元素的信息。它有一组可以用各种方式进行索引的元素。...为此,您需要对数组进行子集、切片和/或索引。 如果你想要选择符合特定条件的数组中的值,使用 NumPy 是很直接的。...第一个数组表示这些值所在的行索引,第二个数组表示这些值所在的列索引。 如果你想要生成一个元素存在的坐标列表,你可以将数组进行组合,遍历坐标列表,并打印它们。...数组是一组值的网格,它包含有关原始数据的信息,如何定位元素以及如何解释元素。 它有一组可以以各种方式进行索引的元素。 这些元素都是相同类型的,称为数组的dtype。...我们可以从 Python 列表中初始化 NumPy 数组的一种方式是使用嵌套列表进行二维或多维数据。

    35410

    Numpy 简介

    NumPy完全支持面向对象的方法,同样从ndarray开始。例如,ndarray是一个类,具有许多方法和属性。...所有的ndarray都是同质的:每个条目占用相同大小的内存块,并且所有块都以完全相同的方式进行解释。如何解释数组中的每个项是由一个单独的数据类型对象指定的,其中一个对象与每个数组相关联。...从数组中提取的项(例如,通过索引)由Python对象表示,其类型是在NumPy中构建的阵列标量类型之一。 阵列标量允许容易地操纵更复杂的数据排列。 ?...它等于 ndarray.dtype.itemsize 。 ndarray.data:该缓冲区包含数组的实际元素。通常,我们不需要使用此属性,因为我们将使用索引访问数组中的元素。...一般有6个机制创建数组: 从其他Python结构(例如,列表,元组)转换 numpy原生数组的创建(例如,arange、ones、zeros等) 从磁盘读取数组,无论是标准格式还是自定义格式 通过使用字符串或缓冲区从原始字节创建数组

    4.7K20

    NumPy 1.26 中文官方指南(三)

    参见说明 索引 NumPy,与 Python 一样,数字从 0 开始索引;a[0] 是第一个元素。 MATLAB 的脚本语言是为了线性代数而创建的,因此一些数组操作的语法比 NumPy 更紧凑。...如何编写 NumPy 操作指南 读取和写入文件 如何索引 ndarrays 验证 NumPy 中的错误和 bug 修复 如何创建具有等距数值的数组 高级用法和互操作性 从源码编译...广义上来说,用于与 NumPy 互操作的特性分为三组: 将外部对象转换为 ndarray 的方法; 将执行延迟从 NumPy 函数转移到另一个数组库的方法; 使用 NumPy 函数并返回外部对象实例的方法...在不转换的情况下操作外部对象 NumPy API 定义的第二组方法允许我们将执行从 NumPy 函数延迟到另一个数组库。 考虑以下函数。...如果不可能,则对象本身负责从 __array__() 返回 ndarray。 DLPack 是将外部对象以一种与语言和设备无关的方式转换为 NumPy 数组的另一种协议。

    38310

    NumPy使用图解教程「建议收藏」

    数组的切片操作 我们可以像python列表操作那样对NumPy数组进行索引和切片,如下图所示: 聚合函数 NumPy为我们带来的便利还有聚合函数,聚合函数可以将数据进行压缩,统计数组中的一些特征值:...NumPy提供了dot()方法,可用于矩阵之间进行点积运算: 上图的底部添加了矩阵尺寸,以强调运算的两个矩阵在列和行必须相等。...我们可以像聚合向量一样聚合矩阵: 不仅可以聚合矩阵中的所有值,还可以使用axis参数指定行和列的聚合: 矩阵的转置和重构 处理矩阵时经常需要对矩阵进行转置操作,常见的情况如计算两个矩阵的点积。...例如,均方误差是监督机器学习模型处理回归问题的核心: 在NumPy中可以很容易地实现均方误差: 这样做的好处是,numpy无需考虑predictions与labels具体包含的值。...文摘菌将通过一个示例来逐步执行上面代码行中的四个操作: 预测(predictions)和标签(labels)向量都包含三个值。这意味着n的值为3。

    2.9K30

    最全的NumPy教程

    基本的ndarray是使用 NumPy 中的数组函数创建的,如下所示: numpy.array 它从任何暴露数组接口的对象,或从返回数组的任何方法创建一个ndarray。...如前所述,ndarray对象中的元素遵循基于零的索引。有三种可用的索引方法类型:字段访问,基本切片和高级索引。 基本切片是 Python 中基本切片概念到 n 维的扩展。...然后,分别用起始,终止和步长值2,7和2定义切片对象。当这个切片对象传递给ndarray时,会对它的一部分进行切片,从索引2到7,步长为2。...以下示例获取了ndarray对象中每一行指定列的一个元素。因此,行索引包含所有行号,列索引指定要选择的元素。...如果输入在每个维度中的大小与输出大小匹配,或其值正好为 1,则在计算中可它。 如果输入的某个维度大小为 1,则该维度中的第一个数据元素将用于该维度的所有计算。

    4.2K10

    NumPy 使用教程

    这些方法让复杂的计算过程表达更为简单。除此之外,numpy 中还包含一些代数运算的方法,尤其是涉及到矩阵的计算方法,求解特征值、特征向量、逆矩阵等,非常方便。 ...随着 obj 的不同,我们可以实现字段访问、数组切片、以及其他高级索引功能。  2.1 数组索引  我们可以通过索引值(从 0 开始)来访问 Ndarray 中的特定位置元素。...:  # 获取第 2 行,第 3 列的数据 b[1,2] 如果,我们使用 python 中的 list 索引同样的值,看看有什么区别:  ☞ 示例代码:  # 创建一个数据相同的 list c = [[...2 行,第 3 列的数据 c[1,2]  报错  # python 中 list 索引 2 维数据的方法 c[1][2] 如何索引二维 Ndarray 中的多个元素值,这里使用逗号,分割:  ☞ 示例代码...我们实际获取的是[1,3],也就是第2行和第4列对于的值8。以及[2, 4],也就是第3行和第5列对于的值14。  那么,三维数据呢?

    2.5K20

    TutorialsPoint NumPy 教程

    基本的ndarray是使用 NumPy 中的数组函数创建的,如下所示: numpy.array 它从任何暴露数组接口的对象,或从返回数组的任何方法创建一个ndarray。...NumPy - 来自数值范围的数组 这一章中,我们会学到如何从数值范围创建数组。 numpy.arange 这个函数返回ndarray对象,包含给定范围内的等间隔值。...,来使选择元组的长度与数组的维度相同。 如果在行位置使用省略号,它将返回包含行中元素的ndarray。...a print '\n' # 这会返回第二列元素的数组: print '第二列的元素是:' print a[...,1] print '\n' # 现在我们从第二行切片所有元素...当索引的元素个数就是目标ndarray的维度时,会变得相当直接。 以下示例获取了ndarray对象中每一行指定列的一个元素。 因此,行索引包含所有行号,列索引指定要选择的元素。

    3.9K10

    一键获取新技能,玩转NumPy数据操作

    聚合函数 NumPy为我们带来的便利还有聚合函数,聚合函数可以将数据进行压缩,统计数组中的一些特征值: ?...与算术运算有很大区别是使用点积的矩阵乘法。NumPy提供了dot()方法,可用于矩阵之间进行点积运算: ? 上图的底部添加了矩阵尺寸,以强调运算的两个矩阵在列和行必须相等。...不仅可以聚合矩阵中的所有值,还可以使用axis参数指定行和列的聚合: ? 矩阵的转置和重构 处理矩阵时经常需要对矩阵进行转置操作,常见的情况如计算两个矩阵的点积。...例如,均方误差是监督机器学习模型处理回归问题的核心: ? 在NumPy中可以很容易地实现均方误差: ? 这样做的好处是,numpy无需考虑predictions与labels具体包含的值。...文摘菌将通过一个示例来逐步执行上面代码行中的四个操作: ? 预测(predictions)和标签(labels)向量都包含三个值。这意味着n的值为3。在我们执行减法后,我们最终得到如下值: ?

    1.8K10

    一键获取新技能,玩转NumPy数据操作

    聚合函数 NumPy为我们带来的便利还有聚合函数,聚合函数可以将数据进行压缩,统计数组中的一些特征值: ?...与算术运算有很大区别是使用点积的矩阵乘法。NumPy提供了dot()方法,可用于矩阵之间进行点积运算: ? 上图的底部添加了矩阵尺寸,以强调运算的两个矩阵在列和行必须相等。...不仅可以聚合矩阵中的所有值,还可以使用axis参数指定行和列的聚合: ? 矩阵的转置和重构 处理矩阵时经常需要对矩阵进行转置操作,常见的情况如计算两个矩阵的点积。...例如,均方误差是监督机器学习模型处理回归问题的核心: ? 在NumPy中可以很容易地实现均方误差: ? 这样做的好处是,numpy无需考虑predictions与labels具体包含的值。...文摘菌将通过一个示例来逐步执行上面代码行中的四个操作: ? 预测(predictions)和标签(labels)向量都包含三个值。这意味着n的值为3。在我们执行减法后,我们最终得到如下值: ?

    1.7K20

    Python数据分析常用模块的介绍与使用

    Series:Series是一维的标记数组,类似于一维数组或者一列数据。它由一组数据和与之相关的标签(索引)构成。可以通过索引对数据进行选择和过滤。...它由一组有序的列组成,每个列可以是不同的数据类型(数值、字符串、布尔值等)。可以通过行和列的标签进行选择和过滤。...Series Series是Pandas中的一种数据结构,类似于一维的数组或列表。它由两个部分组成:索引和数据值。索引是Series中数据的标签,它可以是整数、字符串或其他数据类型。...标签索引:可以使用标签索引来访问Series中的元素,类似于字典的方式。例如,series['label']将返回具有该标签的元素的值。 切片操作:可以使用切片操作来选择Series中的一个子集。...DataFrame由多个Series组成,DataFrame可以类比为二维数组或者矩阵,但与之不同的是,DataFrame必须同时具有行索引和列索引,每列可以是不同的数据类型(整数、浮点数、字符串等)。

    32010

    Python中的numpy模块

    为了表述方便,在不引起歧义时,我们下面将ndarray对象称为矩阵对象或是矩阵(也包含张量,向量或者是单个的数)。...值得注意的是,这类矩阵在内存中的存储方式是按行存储,意思是每一行的内存位置是相邻的,而Matlab与Fortran中的矩阵是按列存储的,因此在Python中按行遍历的运行速度比按列遍历的运行速度要快(至于快多少与矩阵大小和实际情况有关...在Matlab中也有与之相对应的索引方式,最明显的差异有三个:一是numpy矩阵对象的索引使用的是[],而Matlab使用的是();二是在逐个索引方面,numpy矩阵对象的索引通过负整数对矩阵进行倒序索引...当我们将视图进行改变,系统会根据其内存位置将储存的值进行改变,即会把最原始的矩阵对象改变。如果我们想要避免这个错误,需要在相应的地方使用.copy()方法,在本节最后我们将介绍视图的一个例子。...这样的索引,会把所有索引值为True的地方取出Mat的值,按行汇总后返回一个行向量视图。最常用的方法是取出矩阵中具有某种特征的所有数,例如取出大于0.5的所有元素:Mat[Mat > .5]。

    1.8K41
    领券