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

NumPy 和 Pandas 数据分析实用指南:1~6 全

如果有序列或数据帧的元素找不到匹配项,则会生成新列,对应于不匹配的元素或列,并填充 Nan。 数据帧和向量化 向量化可以应用于数据帧。...默认情况下,该方法创建一个新的数据帧或序列。 我们可以给fillna一个值,一个dict,一个序列或一个数据帧。 如果给定单个值,那么所有指示缺少信息的条目将被该值替换。...我们还学习了如何通过删除或填写缺失的信息来处理 pandas 数据帧中的缺失数据。 在下一章中,我们将研究数据分析项目中的常见任务,排序和绘图。...这适用于loc方法和序列,但不适用于数据帧; 我们待会儿再看。 使用loc时,切片索引时所有常用的技巧仍然有效,但是切片操作获得多个结果会更容易。...因此,现在让我们看一下管理附加到数据帧的层次结构索引。 我们要做的第一件事是创建带有分层索引的数据帧。 然后,我们选择该索引的第一级为b的所有行。

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

    针对SAS用户:Python数据分析库pandas

    可以认为Series是一个索引、一维数组、类似一列值。可以认为DataFrames是包含行和列的二维数组索引。好比Excel单元格按行和列位置寻址。...Pandas使用两种设计来表示缺失数据,NaN(非数值)和Python None对象。 下面的单元格使用Python None对象代表数组中的缺失值。相应地,Python推断出数组的数据类型是对象。...并不是所有使用NaN的算数运算的结果是NaN。 ? 对比上面单元格中的Python程序,使用SAS计算数组元素的平均值如下。SAS排除缺失值,并且利用剩余数组元素来计算平均值。 ?...显然,这会丢弃大量的“好”数据。thresh参数允许您指定要为行或列保留的最小非空值。在这种情况下,行"d"被删除,因为它只包含3个非空值。 ? ? 可以插入或替换缺失值,而不是删除行和列。....fillna()方法查找,然后用此计算值替换所有出现的NaN。 ? ? 相应的SAS程序如下所示。

    12.1K20

    精通 Pandas:1~5

    可以将其视为序列结构的字典,在该结构中,对列和行均进行索引,对于行,则表示为“索引”,对于列,则表示为“列”。 它的大小可变:可以插入和删除列。 序列/数据帧中的每个轴都有索引,无论是否默认。...isin和所有方法 与前几节中使用的标准运算符相比,这些方法使用户可以通过布尔索引实现更多功能。 isin方法获取值列表,并在序列或数据帧中与列表中的值匹配的位置返回带有True的布尔数组。...,将NaN值替换为原始组中的组均值,会使该组均值在转换后的数据中保持不变。...65.25 -0.30 36.23 NaN 555.20 AAPL 12.44 501.53 40.32 0.84 447.59 892.45 为了保持类似于原始数据帧的列顺序...由于并非所有列都存在于两个数据帧中,因此对于不属于交集的数据帧中的每一行,来自另一个数据帧的列均为NaN。

    19.2K10

    Pandas 学习手册中文第二版:1~5

    它由许多单元格组成,可以是四种类型之一:代码,Markdown,原始 nbconvert 或标题。 本书中的所有示例均使用代码或减价单元。...这些列是数据帧中包含的新Series对象,具有从原始Series对象复制的值。 可以使用带有列名或列名列表的数组索引器[]访问DataFrame对象中的列。...如果在原始Series中找不到标签,则将NaN分配为该值。 最后,将删除Series中带有不在新索引中的标签的行。...如果需要一个带有附加列的新数据帧(保持原来的不变),则可以使用pd.concat()函数。 此函数创建一个新的数据帧,其中所有指定的DataFrame对象均按规范顺序连接在一起。...结果数据帧将由两个列的并集组成,缺少的列数据填充有NaN。 以下内容通过使用与df1相同的索引创建第三个数据帧,但只有一个列的名称不在df1中来说明这一点。

    8.3K10

    收藏|Pandas缺失值处理看这一篇就够了!

    在往期文章中,已经详细讲解了Pandas做分析数据的四种基本操作:索引、分组、变形及合并。现在,开始正式介绍Pandas的数据结构类型:缺失数据、文本数据、分类数据和时序数据。...【注意】缺失值的插补只能用于客观数据。由于主观数据受人的影响,其所涉及的真实值不能保证。 1、删除含有缺失值的个案(2种方法) (1)简单删除法 简单删除法是对缺失值进行处理的最原始方法。...2、可能值插补缺失值 【思想来源】:以最可能的值来插补缺失值比全部删除不完全样本所产生的信息丢失要少。 (1)均值插补 属于单值插补。数据的属性分为定距型和非定距型。...多重插补方法举例: 假设一组数据,包括三个变量,它们的联合分布为正态分布,将这组数据处理成三组,A组保持原始数据,B组仅缺失,C组缺失和。...2、与索引有关的插值 method中的index和time选项可以使插值线性地依赖索引,即插值为索引的线性函数 s.interpolate(method='index').plot() #可以看到与上面的区别

    3.8K41

    数据分析之Pandas缺失数据处理

    【注意】缺失值的插补只能用于客观数据。由于主观数据受人的影响,其所涉及的真实值不能保证。 1、删除含有缺失值的个案(2种方法) (1)简单删除法 简单删除法是对缺失值进行处理的最原始方法。...2、可能值插补缺失值 【思想来源】:以最可能的值来插补缺失值比全部删除不完全样本所产生的信息丢失要少。 (1)均值插补 属于单值插补。数据的属性分为定距型和非定距型。...多重插补方法举例: 假设一组数据,包括三个变量,它们的联合分布为正态分布,将这组数据处理成三组,A组保持原始数据,B组仅缺失,C组缺失和。...在所有的表格读取后,无论列是存放什么类型的数据,默认的缺失值全为np.nan类型。...2、与索引有关的插值 method中的index和time选项可以使插值线性地依赖索引,即插值为索引的线性函数 s.interpolate(method='index').plot() #可以看到与上面的区别

    1.7K20

    Python数据分析之pandas数据选取

    Pandas中,数据主要保存为Dataframe和Series是数据结构,这两种数据结构数据选取的方式基本一致,本文主要以Dataframe为例进行介绍。...,也可以通过标签索引进行数据选取,换句话说,df.ix[]是df.loc[]和df.iloc[]的功能集合,且在同义词选取中,可以同时使用整数索引和标签索引。...df.at[]和df.iat[]选取的都是单个单元格(单行单列),所以返回值都为基本数据类型。...4)选取数据时,返回值存在以下情况: 如果返回值包括单行多列或多行单列时,返回值为Series对象;如果返回值包括多行多列时,返回值为DataFrame对象;如果返回值仅为一个单元格(单行单列)时,返回值为基本数据类型...5)df[]的方式只能选取行和列数据,不能精确到单元格,所以df[]的返回值一定DataFrame或Series对象。 6)当使用DataFrame的默认索引(整数索引)时,整数索引即为标签索引。

    2.8K31

    Pandas Sort:你的 Python 数据排序指南

    当您对具有相同键的多条记录进行排序时,稳定的排序算法将在排序后保持这些记录的原始顺序。因此,如果您计划执行多种排序,则必须使用稳定的排序算法。...默认情况下,此参数设置为last,将NaN值放置在排序结果的末尾。要改变这种行为,并在你的数据帧先有丢失的数据,设置na_position到first。...使用排序方法修改你的 DataFrame 在所有的例子你迄今所看到的,都.sort_values()和.sort_index()已经返回数据帧对象时,你叫那些方法。这是因为在熊猫排序不工作到位默认。...通常,这是使用 Pandas 分析数据的最常见和首选方法,因为它会创建一个新的 DataFrame 而不是修改原始数据。这允许您保留从文件中读取数据时的数据状态。....sort_values()就地使用 随着inplace设置为True,您修改原始数据帧,所以排序方法返回None。

    14.3K00

    python对100G以上的数据进行排序,都有什么好的方法呢

    当您对具有相同键的多条记录进行排序时,稳定的排序算法将在排序后保持这些记录的原始顺序。因此,如果您计划执行多种排序,则必须使用稳定的排序算法。...默认情况下,此参数设置为last,将NaN值放置在排序结果的末尾。要改变这种行为,并在你的数据帧先有丢失的数据,设置na_position到first。...使用排序方法修改你的 DataFrame 在所有的例子你迄今所看到的,都.sort_values()和.sort_index()已经返回数据帧对象时,你叫那些方法。这是因为在熊猫排序不工作到位默认。...通常,这是使用 Pandas 分析数据的最常见和首选方法,因为它会创建一个新的 DataFrame 而不是修改原始数据。这允许您保留从文件中读取数据时的数据状态。....sort_values()就地使用 随着inplace设置为True,您修改原始数据帧,所以排序方法返回None。

    10K30

    Python数据分析之pandas数据选取

    Dataframe对象的行有索引(index),默认情况下是[0,1,2,……]的整数序列,也可以自定义添加另外的索引,例如上面的labels,(为区分默认索引和自定义的索引,在本文中将默认索引称为整数索引...,也可以通过标签索引进行数据选取,换句话说,df.ix[]是df.loc[]和df.iloc[]的功能集合,且在同义词选取中,可以同时使用整数索引和标签索引。...df.at[]和df.iat[]选取的都是单个单元格(单行单列),所以返回值都为基本数据类型。...4)选取数据时,返回值存在以下情况: 如果返回值包括单行多列或多行单列时,返回值为Series对象;如果返回值包括多行多列时,返回值为DataFrame对象;如果返回值仅为一个单元格(单行单列)时,返回值为基本数据类型...5)df[]的方式只能选取行和列数据,不能精确到单元格,所以df[]的返回值一定DataFrame或Series对象。 6)当使用DataFrame的默认索引(整数索引)时,整数索引即为标签索引。

    1.6K30

    【数据处理包Pandas】DataFrame数据的基本操作

    iloc索引器使用的是行和列的整数位置进行索引,因此iloc[0:4]会包括索引位置从0到3的行,不包括索引位置为4的行。...# 第2行到最后一行的第1列和第3列 print(df.iloc[:,2]) # 所有行,第3列 注意: 第1个查询结果是一个数,而从第2个开始的后面几个查询结果是一个...del 关键字直接在原始 DataFrame 上操作,不返回新的 DataFrame,而是直接修改原始对象。 del 关键字只能用于删除列,不能用于删除行。...how:确定要删除的行或列的方式。'any':只要有任何缺失值就删除整行或整列。'all':只有全部为缺失值才删除整行或整列。默认为'any'。 thresh:指定在行或列中非缺失值的最小数量。...如果某行或某列中的非缺失值数量低于 thresh,则删除该行或该列。 subset:只在特定的列或行中查找缺失值并删除。可以传入一个列名或列名的列表。

    9200

    Pandas 2.2 中文官方教程和指南(四)

    在写时复制的情况下,这两个关键字将不再必要。提案可以在这里找到。 数据输入/输出 从值构建 DataFrame 在电子表格中,值可以直接输入到单元格中。...数据操作 列上的操作 在电子表格中,公式通常在单独的单元格中创建,然后通过拖动到其他单元格中以计算其他列的值。在 pandas 中,你可以直接对整列进行操作。...pandas 数据帧有一个merge()方法,提供类似的功能。数据不需要提前排序,并且不同的连接类型通过how关键字实现。...在 Copy-on-Write 的上下文中,这两个关键字将不再是必需的。提案可以在这里找到。 数据输入/输出 从值构建 DataFrame 在电子表格中,可以直接在单元格中输入值。...数据操作 列上的操作 在电子表格中,公式通常在单个单元格中创建,然后拖动到其他单元格以计算其他列的值。在 pandas 中,您可以直接对整个列进行操作。

    31710

    Pandas 秘籍:6~11

    在第 4 步到第 6 步中已将它们删除。select_dtypes对于具有许多列的非常宽的数据帧极为有用。 在步骤 7 中,idxmax遍历所有列以找到每个列的最大值的索引。 它将结果作为序列输出。...它必须返回与传递的组长度相同的值序列,否则将引发异常。 本质上,原始数据帧中的所有值都在转换。 没有聚集或过滤发生。...它接受所有列名并转置它们,因此它们成为新的最里面的索引级别。 请注意,每个旧列名称仍如何通过与每个状态配对来标记其原始值。3 x 3数据帧中有 9 个原始值,这些值被转换为具有相同数量值的单个序列。...原始的第一行数据成为结果序列中的前三个值。 在步骤 2 中重置索引后,pandas 将我们的数据帧的列默认设置为level_0,level_1和0。...毕竟,我们还有一些多余的数据帧名称和索引需要丢弃。 不幸的是,没有可以删除级别的数据帧方法,因此我们必须进入索引并使用其droplevel方法。 在这里,我们用单级列覆盖了旧的多重索引列。

    34K10
    领券