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

机器学习测试笔记(2)——Pandas

Pandas 适用于处理以下类型的数据: 与 SQL 或 Excel 表类似的,含异构列的表格数据; 有序和无序(非固定频率)的时间序列数据; 带行列标签的矩阵数据,包括同构或异构型数据; 任意其它形式的观测...Pandas 就像一把万能瑞士军刀,下面仅列出了它的部分优势 : 处理浮点与非浮点数据里的缺失数据,表示为 NaN; 大小可变:插入或删除 DataFrame 等多维对象的列; 自动、显式数据对齐:显式地将对象与一组标签对齐...格式保存 / 加载数据; 时间序列:支持日期范围生成、频率转换、移动窗口统计、移动窗口线性回归、日期位移等时间序列功能。...by:指定列名(axis=0或’index’)或索引值(axis=1或’columns’) axis:若axis=0或’index’,则按照指定列中数据大小排序;若axis=1或’columns’,则按照指定索引中数据大小排序...,默认axis=0 ascending:是否按指定列的数组升序排列,默认为True,即升序排列 inplace:是否用排序后的数据集替换原来的数据,默认为False,即不替换 na_position:{

1.5K30

【机器学习数据预处理】数据准备

时间范围不一致通常是不同表的时间字段中所包含的时间的取值范围不一致,如表所示,两张表的时间字段的取值范围分别为2016年1月1日—2016年2月29日和2016年1月15日—2016年2月18日,此时如果需要联立这两张表...(axis=0, level=None, numeric_only=False) 参数为DataFrame或pandas的Series对象,返回的是DataFrame中每一列非空值个数或Series对象的非空值个数...1. 定量数据分布分析   定量数据的分布分析,一般按照以下步骤进行。 求极差 决定组距与组数 决定分点 列出频率分布表 绘制频率分布直方图   进行定量数据分布分析时,分组需要遵循的主要原则如下。...参数名称 说明 objs 接收多个Series,DataFrame,Panel的组合,无默认 axis 接收0或1,表示连接的轴向,默认为0 join 接收inner或outer,表示其他轴向上的索引是按交集...,而在默认情况下,即axis=0时将不同表中数据做列对齐,将不同行索引的两张或多张表纵向合并。

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

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

    可以认为DataFrames是包含行和列的二维数组索引。好比Excel单元格按行和列位置寻址。 换句话说,DataFrame看起来很像SAS数据集(或关系表)。...导入包 为了使用pandas对象, 或任何其它Python包的对象,我们开始按名称导入库到命名空间。为了避免重复键入完整地包名,对NumPy使用np的标准别名,对pandas使用pd。 ?...大部分SAS自动变量像_n_ 使用1作为索引开始位置。SAS迭代DO loop 0 to 9结合ARRAY产生一个数组下标超出范围错误。 下面的SAS例子,DO循环用于迭代数组元素来定位目标元素。...Series由整数值索引,并且起始位置是0。 ? SAS示例使用一个DO循环做为索引下标插入数组。 ? 返回Series中的前3个元素。 ? 该示例有2个操作。...PROC PRINT的输出在此处不显示。 下面的单元格显示的是范围按列的输出。列列表类似于PROC PRINT中的VAR。注意此语法的双方括号。这个例子展示了按列标签切片。按行切片也可以。

    12.1K20

    python数据分析——数据分类汇总与统计

    按列分组 按列分组分为以下三种模式: df.groupby(col),返回一个按列进行分组的groupby对象; df.groupby([col1,col2]),返回一个按多列进行分组的groupby...df.groupby(df['key1']) gg 示例一 【例1】采用函数df.groupby(col),返回一个按列进行分组的groupby对象。...关键技术: df.groupby(col1)[col2]或者df[col2].groupby(col1),两者含义相同,返回按列col1进行分组后,col2的值。...程序代码如下所示: 交叉表 交叉表采用crosstab函数,可是说是透视表的一部分,是参数aggfunc=count情况下的透视表。 pandas的crosstab是一个用于计算交叉频率表的函数。...交叉频率表是一种展示两个或多个变量之间关系的统计表格。pandas的crosstab函数可以根据给定的数据和索引来计算这些交叉频率表。

    10410

    Python 数据分析(PYDA)第三版(五)

    True,则仅显示键中的观察类别值,而不是所有类别 交叉制表:交叉制表 交叉制表(或简称为交叉制表)是计算组频率的透视表的一种特殊情况。...2000-01-02 3 2000-01-03 1 dtype: int64 11.3 日期范围、频率和移位 在 pandas 中,通常假定通用时间序列是不规则的;也就是说,它们没有固定的频率...幸运的是,pandas 具有一整套标准时间序列频率和重新采样工具(稍后在重新采样和频率转换中更详细地讨论),可以推断频率并生成固定频率的日期范围。...注意 用户可以定义自己的自定义频率类,以提供 pandas 中不可用的日期逻辑,但这些完整的细节超出了本书的范围。 月份周日期 一个有用的频率类是“月份周”,从WOM开始。...虽然新的 PeriodIndex 的频率默认情况下是根据时间戳推断的,但您可以指定任何支持的频率(大多数列在 Table 11.4 中列出的频率都受支持)。

    17900

    【Mark一下】46个常用 Pandas 方法速查表

    例如可以从dtype的返回值中仅获取类型为bool的列。 3 数据切片和切块 数据切片和切块是使用不同的列或索引切分数据,实现从数据中获取特定子集的方式。...常见的数据切片和切换的方式如表3所示: 表3 Pandas常用数据切分方法 方法用途示例示例说明[['列名1', '列名2',…]]按列名选择单列或多列In: print(data2[['col1','...col3 0 2 a True 1 1 b True 2 0 a False选择col2中值为a或col3值为True的记录使用isin查找范围基于特定值的范围的数据查找...1 1 b 1筛选数据中col2值为b的记录 5 数据预处理操作 Pandas的数据预处理基于整个数据框或Series实现,整个预处理工作包含众多项目,本节列出通过Pandas...具体实现如表7所示: 表7 Pandas常用数据分类汇总方法 方法用途示例示例说明groupby按指定的列做分类汇总In: print(data2.groupby(['col2'])['col1'].

    4.9K20

    最全面的Pandas的教程!没有之一!

    获取 DataFrame 中的一行或多行数据 要获取某一行,你需要用 .loc[] 来按索引(标签名)引用这一行,或者用 .iloc[],按这行在表中的位置(行数)来引用。 ?...你可以用逻辑运算符 &(与)和 |(或)来链接多个条件语句,以便一次应用多个筛选条件到当前的 DataFrame 上。举个栗子,你可以用下面的方法筛选出同时满足 'W'>0 和'X'>1 的行: ?...当你使用 .dropna() 方法时,就是告诉 Pandas 删除掉存在一个或多个空值的行(或者列)。删除列用的是 .dropna(axis=0) ,删除行用的是 .dropna(axis=1) 。...因为我们没有指定堆叠的方向,Pandas 默认按行的方向堆叠,把每个表的索引按顺序叠加。 如果你想要按列的方向堆叠,那你需要传入 axis=1 参数: ? 注意,这里出现了一大堆空值。...请注意,每个 Excel 表格文件都含有一个或多个工作表,传入 sheet_name='Sheet1' 这样的参数,就表示只读取 'excel_output.xlsx' 中的 Sheet1 工作表中的内容

    26K64

    数据科学 IPython 笔记本 7.14 处理时间序列

    时间增量或间隔(duration):引用确切的时间长度(例如,间隔为 22.56 秒)。 在本节中,我们将介绍如何在 Pandas 中使用这些类型的日期/时间数据。...这个简短的章节绝不是 Python 或 Pandas 中可用的时间序列工具的完整指南,而是用户应如何处理时间序列的广泛概述。...我们将首先简要讨论 Python 中处理日期和时间的工具,然后再更具体地讨论 Pandas 提供的工具。在列出了一些更深入的资源之后,我们将回顾一些在 Pandas 中处理时间序列数据的简短示例。...例如,如果你想要纳秒的时间分辨率,你只有足够的信息来编码2^64纳秒或不到 600 年的范围。...频率和偏移 这些 Pandas 时间序列工具的基础是频率或日期偏移的概念。就像我们在上面看到D(天)和H(小时)代码一样,我们可以使用这些代码来指定任何所需的频率间隔。

    4.6K20

    软件测试|数据处理神器pandas教程(八)

    前言 前面的文章中,我们讲解了pandas处理时间的功能,本篇文章我们来介绍pandas时间序列的处理。...Pandas 为解决上述问题提供了一套简单、易用的方法。 在Python中,有内置的datetime模块来获取当前时间,通过datetime.now()即可获取本地当前时间。...(14, 0) datetime.time(14, 30) datetime.time(15, 0)] 更改时间频率,上面我们的时间频率是以30分钟为间隔的,我们也可以将时间间隔修改为一个小时,代码如下...Time Periods 表示时间跨度,一段时间周期,它被定义在 Pandas Periods 类中,通过该类提供的方法可以实现将频率转换为周期。...更改日频率 使用下列方法可以修改频率,比如按“天”为按“月”,示例如下: import pandas as pd print(pd.date_range('01/31/2023', periods=5,

    1.3K20

    《利用Python进行数据分析·第2版》第11章 时间序列11.1 日期和时间数据类型及工具11.2 时间序列基础11.3 日期的范围、频率以及移动11.4 时区处理时区本地化和转换11.5 时期及其

    虽然本章主要讲的是pandas数据类型和高级时间序列处理,但你肯定会在Python的其他地方遇到有关datetime的数据类型。 表11-1 datetime模块中的数据类型 ?...2000-01-01 1 2000-01-02 3 2000-01-03 1 dtype: int64 11.3 日期的范围、频率以及移动 pandas中的原生时间序列一般被认为是不规则的...幸运的是,pandas有一整套标准时间序列频率以及用于重采样、频率推断、生成固定频率日期范围的工具。...表11-4列出了pandas中的频率代码和日期偏移量类。 笔记:用户可以根据实际需求自定义一些频率类以便提供pandas所没有的日期逻辑,但具体的细节超出了本书的范围。...在升采样中,目标频率必须是源频率的超时期(superperiod)。 如果不满足这些条件,就会引发异常。这主要影响的是按季、年、周计算的频率。

    6.6K60

    盘点66个Pandas函数,轻松搞定“数据清洗”!

    clip()方法,用于对超过或者低于某些数的数值进行截断[1],来保证数值在一定范围。比如每月的迟到天数一定是在0-31天之间。...df["迟到天数"] = df["迟到天数"].clip(0,31) 唯一值,unique()是以数组形式返回列的所有唯一值,而nunique()返回的是唯一值的个数。...df["数量"].apply(lambda x: x+1) 输出: 文本数据操作 之前我们曾经介绍过经常被人忽视的:Pandas 文本型数据处理。...数据筛选 如果是筛选行列的话,通常有以下几种方法: 有时我们需要按条件选择部分列、部分行,一般常用的方法有: 操作 语法 返回结果 选择列 df[col] Series 按索引选择行 df.loc[label...今天我们盘点了66个Pandas函数合集,但实际还有很多函数在本文中没有介绍,包括时间序列、数据表的拼接与连接等等。此外,那些类似describe()这种大家非常熟悉的方法都省去了代码演示。

    3.8K11

    Python 数据处理:Pandas库的使用

    = 'state' print(frame3) 跟Series一样,values属性也会以二维ndarray的形式返回DataFrame中的数据: import pandas as pd pop1...要对行或列索引进行排序(按字典顺序),可使用sort_index方法,它将返回一个已排序的新对象: import pandas as pd obj = pd.Series(range(4), index...方法将会返回一个含有列的和的Series: print(df.sum()) 传入axis='columns'或axis=1将会按行进行求和运算: print(df.sum(axis=1))...计算Series中的唯一值数组,按发现的顺序返回 value_counts 返回一个Series,其索引为唯一值,其值为频率,按计数值降序排列 有时,你可能希望得到DataFrame中多个相关列的一张柱状图...后面的频率值是每个列中这些值的相应计数。

    22.8K10

    Python时间序列分析苹果股票数据:分解、平稳性检验、滤波器、滑动窗口平滑、移动平均、可视化

    我列出了最常见的属性,但你可以在datetime模块的文档上找到详尽的列表。...两个日期、datetimes 或 times 之间的最小差值 日期/日期时间 object.year 返回年份 object.month 返回月份(1 - 12) object.day 返回日期(...1-32) 时间/日期时间 object.hour 返回小时(0-23) object.minute 返回分钟(0-59) object.second 返回秒数(0-59) pythonprint...apple_price_history.index.day_name() 频率选择 当时间序列是均匀间隔的时,可以在Pandas中与频率关联起来。...hours = pd.date_range('2019-01-01', periods=24, freq='H') print(hours) pandas.DataFrame.asfreq 返回具有新频率的数据帧或序列

    67600

    Pandas 概览

    经过多年不懈的努力,Pandas 离这个目标已经越来越近了。 Pandas 适用于处理以下类型的数据: 与 SQL 或 Excel 表类似的,含异构列的表格数据。...有序和无序(即非固定频率)的时间序列数据。 带行列标签的矩阵数据,包括同构或异构型数据。 任意其它形式的观测、统计数据集。数据转入 Pandas 数据结构时不必事先标记。...Pandas 就像一把万能瑞士军刀,下面仅列出了它的部分优势 : 处理浮点与非浮点数据里的缺失数据,表示为 NaN; 大小可变:插入或删除 DataFrame 等多维对象的列; 自动、显式数据对齐:显式地将对象与一组标签对齐...格式保存 / 加载数据; 时间序列:支持日期范围生成、频率转换、移动窗口统计、移动窗口线性回归、日期位移等时间序列功能。...处理 DataFrame 等表格数据时,index(行)或 columns(列)比 axis 0 和 axis 1 更直观。

    1.4K10

    数据导入与预处理-第6章-03数据规约

    stack(level=- 1, dropna=True) level:表示索引的级别,默认为-1,即操作内层索引,若设为0,则会操作外层索引。...降采样常见于时间序列类型的数据。假设现有一组按日统计的包含开盘价、收盘价等信息的股票数据(非真实数据),该组数据的采集频率由每天采集一次变为每7天采集一次。...左表是按天采集的一个月股票数据,右表是按7天采集的一个月股票数据,且每行数据对应左表相同周期内数据的平均值。...3.3.2 降采样resample用法 pandas中可以使用resample()方法实现降采样操作。resample方法,是针对时间序列的频率转换和重采样的简便方法。...axis:表示沿哪个轴完成降采样操作,可以取值为0/‘index’或1/‘columns’,默认值为0。

    1.5K20

    数据分析 | 一文了解数据分析必须掌握的库-Pandas

    经过多年不懈的努力,Pandas 离这个目标已经越来越近了。 Pandas 适用于处理以下类型的数据: 与 SQL 或 Excel 表类似的,含异构列的表格数据。...有序和无序(即非固定频率)的时间序列数据。 带行列标签的矩阵数据,包括同构或异构型数据。 任意其它形式的观测、统计数据集。数据转入 Pandas 数据结构时不必事先标记。...Pandas 就像一把万能瑞士军刀,下面仅列出了它的部分优势 : 处理浮点与非浮点数据里的缺失数据,表示为 NaN; 大小可变:插入或删除 DataFrame 等多维对象的列; 自动、显式数据对齐:显式地将对象与一组标签对齐...格式保存 / 加载数据; 时间序列:支持日期范围生成、频率转换、移动窗口统计、移动窗口线性回归、日期位移等时间序列功能。...处理 DataFrame 等表格数据时,index(行)或 columns(列)比 axis 0 和 axis 1 更直观。

    1.1K10

    Pandas 概览

    经过多年不懈的努力,Pandas 离这个目标已经越来越近了。 Pandas 适用于处理以下类型的数据: 与 SQL 或 Excel 表类似的,含异构列的表格数据。...有序和无序(即非固定频率)的时间序列数据。 带行列标签的矩阵数据,包括同构或异构型数据。 任意其它形式的观测、统计数据集。数据转入 Pandas 数据结构时不必事先标记。...Pandas 就像一把万能瑞士军刀,下面仅列出了它的部分优势 : 处理浮点与非浮点数据里的缺失数据,表示为 NaN; 大小可变:插入或删除 DataFrame 等多维对象的列; 自动、显式数据对齐:显式地将对象与一组标签对齐...格式保存 / 加载数据; 时间序列:支持日期范围生成、频率转换、移动窗口统计、移动窗口线性回归、日期位移等时间序列功能。...处理 DataFrame 等表格数据时,index(行)或 columns(列)比 axis 0 和 axis 1 更直观。

    1.2K00

    数据分析篇 | Pandas 概览

    经过多年不懈的努力,Pandas 离这个目标已经越来越近了。 Pandas 适用于处理以下类型的数据: 与 SQL 或 Excel 表类似的,含异构列的表格数据。...有序和无序(即非固定频率)的时间序列数据。 带行列标签的矩阵数据,包括同构或异构型数据。 任意其它形式的观测、统计数据集。数据转入 Pandas 数据结构时不必事先标记。...Pandas 就像一把万能瑞士军刀,下面仅列出了它的部分优势 : 处理浮点与非浮点数据里的缺失数据,表示为 NaN; 大小可变:插入或删除 DataFrame 等多维对象的列; 自动、显式数据对齐:显式地将对象与一组标签对齐...格式保存 / 加载数据; 时间序列:支持日期范围生成、频率转换、移动窗口统计、移动窗口线性回归、日期位移等时间序列功能。...处理 DataFrame 等表格数据时,index(行)或 columns(列)比 axis 0 和 axis 1 更直观。

    1.3K20

    手把手教你用直方图、饼图和条形图做数据分析(Python代码)

    对于定量数据,要想了解其分布形式是对称的还是非对称的、发现某些特大或特小的可疑值,可做出频率分布表、绘制频率分布直方图、绘制茎叶图进行直观分析;对于定性数据,可用饼图和条形图直观地显示其分布情况。...第四步:列出频率分布表。 第五步:绘制频率分布直方图。 遵循的主要原则如下: 各组之间必须是相互排斥的。 各组必须将所有的数据包含在内。 各组的组宽最好相等。...表3-2是菜品“捞起生鱼片”在2014年第二个季度的销售数据,绘制销售量的频率分布表、频率分布图,对该定量数据做出相应的分析。 ? ▲表3-2 “捞起生鱼片”的销售情况 1....绘制频率分布直方表 根据分组区间得到如表3-4所示的频率分布表。 其中,第1列将数据所在的范围分成若干组段,其中第1个组段要包括最小值,最后一个组段要包括最大值。...绘制频率分布直方图 若以2014年第二季度“捞起生鱼片”这道菜每天的销售额组段为横轴,以各组段的频率密度(频率与组距之比)为纵轴,表3-4中的数据可绘制成频率分布直方图,如代码清单3-3所示。

    1.9K11
    领券