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

Pandas 学习手册中文第二版:11~15

具体而言,在本章中,我们将介绍: 数据分析的拆分,应用和合并模式概述 按单个列的值分组 访问 Pandas 分组的结果 使用多列中的值进行分组 使用索引级别分组 将聚合函数应用于分组数据 数据转换概述...在这种情况下,它将根据start_time计算一个月,并返回该值之前的最后一个时间单位。 Period上的数学运算过载,根据给定值计算另一个Period。...在滚动窗口中,pandas 在特定时间段表示的数据窗口上计算统计信息。 然后,该窗口将沿某个间隔滚动,只要该窗口适合时间序列的日期,就将在每个窗口上连续计算统计信息。...然后,来自.rolling()的结果值可以具有许多调用的不同方法之一,这些方法可以在每个窗口上执行计算。...波动率是通过对股票变化百分比取滚动窗口标准差(并相对于窗口大小缩放比例)来计算的。 窗口的大小会影响整体结果。 窗口越大,代表的测量值就越不代表。 随着窗口变窄,结果接近标准差。

3.4K20

Python时间序列分析简介(2)

使用Pandas进行时间重采样 考虑将重采样为 groupby() ,在此我们可以基于任何列进行分组,然后应用聚合函数来检查结果。...滚动时间序列 滚动也类似于时间重采样,但在滚动中,我们采用任何大小的窗口并对其执行任何功能。简而言之,我们可以说大小为k的滚动窗口 表示 k个连续值。 让我们来看一个例子。...如果要计算10天的滚动平均值,可以按以下方式进行操作。 ? ? 现在在这里,我们可以看到前10个值是 NaN, 因为没有足够的值来计算前10个值的滚动平均值。它从第11个值开始计算平均值,然后继续。...在这里,我们可以看到在30天的滚动窗口中有最大值。 使用Pandas绘制时间序列数据 有趣的是,Pandas提供了一套很好的内置可视化工具和技巧,可以帮助您可视化任何类型的数据。...我可以按以下方式进行绘制。 ? 在这里,我们指定了 xlim 和 ylim。看看我如何在xlim中添加日期。主要模式是 xlim = ['开始日期','结束日期']。 ?

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

    Pandas库

    如何在Pandas中实现高效的数据清洗和预处理? 在Pandas中实现高效的数据清洗和预处理,可以通过以下步骤和方法来完成: 处理空值: 使用dropna()函数删除含有缺失值的行或列。...使用Z-Score等统计方法识别并移除异常值。 统一数据格式: 确保所有数据列具有相同的格式,例如统一日期格式、货币格式等。...使用apply()函数对每一行或每一列应用自定义函数。 使用groupby()和transform()进行分组操作和计算。...数据分组与聚合(Grouping and Aggregation) : 数据分组与聚合是数据分析中常用的技术,可以帮助我们对数据进行分组并计算聚合统计量(如求和、平均值等)。...例如,按“姓名”分组后计算每组的平均成绩: grouped = df.groupby ('姓名')['成绩'].mean() print(grouped) 这种方式特别适用于需要对不同类别进行统计分析的情况

    8410

    高级SQL查询技巧——利用SQL改善和增强你的数据

    一、计算滚动平均 使用时间序列数据时,为观察值计算滚动平均值或附加历史值可能会有所帮助。假设我想获取一家公司每天售出的小部件数量。...我可能想包括7天移动平均线,或附上上周出售的工作日小部件,以查看业务与上周相比的表现。我可以通过将数据集连接到自身上,并使用日期列上的操作来选择单个值或观察范围来做到这一点。...二、自连接附加历史数据 现在,如果我想附加4/25 / 21–5 / 1/21这一周的7天滚动平均值,可以通过将表连接到自身上并利用在SUM()函数。...在下面的示例中,如果表B的值在表A上当前观察日期的前7天之内,我们可以将这些销售量相加并除以7,以获得表A的每一行的每周滚动平均值: select a.date , a.total_widgets_sold...将表联接到自身上是一种非常灵活的方式,可以向数据集添加汇总列和计算列。 分组功能(例如SUM()和COUNT()与CASE()语句)的创造性使用为功能工程,分析报告和各种其他用例带来了巨大的机会。

    5.8K30

    Pandas库常用方法、函数集合

    Series unstack: 将层次化的Series转换回数据框形式 append: 将一行或多行数据追加到数据框的末尾 分组 聚合 转换 过滤 groupby:按照指定的列或多个列对数据进行分组 agg...mean:计算分组的平均值 median:计算分组的中位数 min和 max:计算分组的最小值和最大值 count:计算分组中非NA值的数量 size:计算分组的大小 std和 var:计算分组的标准差和方差...describe:生成分组的描述性统计摘要 first和 last:获取分组中的第一个和最后一个元素 nunique:计算分组中唯一值的数量 cumsum、cummin、cummax、cumprod:...计算分组的累积和、最小值、最大值、累积乘积 数据清洗 dropna: 丢弃包含缺失值的行或列 fillna: 填充或替换缺失值 interpolate: 对缺失值进行插值 duplicated: 标记重复的行...用于访问Datetime中的属性 day_name, month_name: 获取日期的星期几和月份的名称 total_seconds: 计算时间间隔的总秒数 rolling: 用于滚动窗口的操作 expanding

    31510

    首次公开,用了三年的 pandas 速查表!

    ds.cumprod() # 前边所有值之积 ds.cummax() # 前边所有值的最大值 ds.cummin() # 前边所有值的最小值 # 窗口计算(滚动计算) ds.rolling(x).sum...,并返回一个 Boolean 数组 pd.notnull() # 检查DataFrame对象中的非空值,并返回一个 Boolean 数组 df.drop(['name'], axis=1) # 删除列...'2s' 为两秒 df.rolling(2).sum() # 在窗口结果基础上的窗口计算 df.expanding(2).sum() # 超出(大于、小于)的值替换成对应值 df.clip(-4, 6...col进行分组的Groupby对象 df.groupby([col1,col2]) # 返回一个按多列进行分组的Groupby对象 df.groupby(col1)[col2] # 返回按列col1进行分组后...,列col2的均值 # 创建一个按列col1进行分组,并计算col2和col3的最大值的数据透视表 df.pivot_table(index=col1, values=[col2

    7.5K10

    Pandas处理时间序列数据的20个关键知识点

    举几个例子: 一段时间内的股票价格 每天,每周,每月的销售额 流程中的周期性度量 一段时间内的电力或天然气消耗率 在这篇文章中,我将列出20个要点,帮助你全面理解如何用Pandas处理时间序列数据。...1.不同形式的时间序列数据 时间序列数据可以是特定日期、持续时间或固定的自定义间隔的形式。 时间戳可以是给定日期的一天或一秒,具体取决于精度。...用取样函数重新采样 时间序列数据的另一个常见操作是重采样。根据任务的不同,我们可能需要以更高或更低的频率重新采样数据。 Resample创建指定内部的组(或容器),并允许您对组进行合并。...滚动意味着创建一个具有指定大小的滚动窗口,并对该窗口中的数据执行计算,当然,该窗口将滚动数据。下图解释了滚动的概念。 值得注意的是,计算开始时整个窗口都在数据中。...换句话说,如果窗口的大小为3,那么第一次合并将在第三行进行。 让我们为我们的数据应用一个3天的滚动窗口。

    2.7K30

    《DAX进阶指南》-第6章 动态可视化

    6.2.4动态选择计算值和日期列 在上一节中,我们开发了一个 DAX 度量值,用于按销售时段、年初至今销售额和12个月的滚动销售额之间动态切换。...由于其他日期列中的值可能不同,因此我们需要调整12个月滚动总计的DAX公式以使用正确的日期列。 同样,我们需要一个辅助表来允许我们在日期列之间进行选择。...滚动总选项需要格外小心,因为我们需要从另一个参考日期展开。每个选项的逻辑不同,不是调用通用的[12 mth sales]度量值。...每个CALCULATE函数现在都有两个筛选器参数:一个提供具有正确参考日期的滚动总周期,另一个提供正确的关系,代码如下。...但你可以反过来思考:提供静态的第一个值,并计算出要与之进行比较的值。这利用了这样一个事实,即SWITCH按参数的顺序进行所有比较,并将在第一个出现匹配时停止。

    5.7K50

    Pandas 秘籍:6~11

    () 另见 请参阅第 4 章,“选择数据子集”中的“同时选择数据帧的行和列”秘籍 Pandas unstack和pivot方法的官方文档 在groupby聚合后解除堆叠 按单个列对数据进行分组并在单个列上执行聚合将返回简单易用的结果...on参数指定从中计算滚动窗口的列: >>> pres_rm = pres_41_45.groupby('President', sort=False) \...日期工具之间的区别 智能分割时间序列 使用仅适用于日期时间索引的方法 计算每周的犯罪数量 分别汇总每周犯罪和交通事故 按工作日和年份衡量犯罪 使用日期时间索引和匿名函数进行分组 按时间戳和另一列分组...但是,groupby方法可以按时间段和其他列进行分组。 准备 在此秘籍中,我们将展示两种非常相似但不同的方法来按时间戳分组,并在另一列中进行。...rolling方法唯一需要的参数是窗口的大小,默认情况下,窗口的大小将在当年结束。 rolling方法返回一个类似分组的对象,该对象必须使其组与另一个函数共同作用才能产生结果。

    34K10

    整理了10个经典的Pandas数据查询案例

    那么如何在另一个字符串中写一个字符串?将文本值包装在单个引号“”中,就可以了。...与数值的类似可以在同一列或不同列上使用多个条件,并且可以是数值和非数值列上条件的组合。 除此以外, Pandas中的query()方法还可以在查询表达式中使用数学计算。...我们还可以在一个或多个列上包含一些复杂的计算。...日期时间列过滤 使用query()函数在日期时间值上进行查询的唯一要求是,包含这些值的列应为数据类型dateTime64 [ns] 在示例数据中,OrderDate列是日期时间,但是我们的df其解析为字符串...OrderDate.dt.month显示了如何使用dt访问者仅提取整个日期值的月份值。

    3.9K20

    懂Excel轻松入门Python数据分析包pandas(二十三):环比

    由于 Excel 是高度自由的表格数据,我们可以如下实现: - 从 B列 复制下移粘贴到 C列 - 由于最后一行下移后超出了总行数,直接去掉 现在可以在 D列 写上简单的公式得到结果: - 由于 C...列 第一个值是空的,我填了一个 na 错误 稍微懂一点 Excel 的小伙伴都会说:"根本不需要 C列,直接用公式用B列上下相减就行了" 的确如此,这里特意用此方式,因为这过程在 pandas 中有一样的操作...相当于 Excel 操作的 D列公式 - 行4:把计算结果写入原数据 > 实际上在 pandas 还有更便捷的实现,类似于 Excel 操作中直接写公式上下引用。...不过,实际工作中的数据没有这么简单, 比如说: - 数据中有些月份数据是缺失的,怎么办? - 数据中的是日期类型,我希望按年做环比 更多详细高级应用技巧,关注我的 pandas 专栏!...多结合分组处理 实际情况是,我们拿到的数据是多个城市的月份销量: 此时我们需要注意2点: - 按城市分组 - 保证每个城市内的数据是按月份排序 代码如下: - 行3-5:每个分组的处理逻辑,内容很简单

    81920

    懂Excel轻松入门Python数据分析包pandas(二十三):环比

    由于 Excel 是高度自由的表格数据,我们可以如下实现: - 从 B列 复制下移粘贴到 C列 - 由于最后一行下移后超出了总行数,直接去掉 现在可以在 D列 写上简单的公式得到结果: - 由于 C...列 第一个值是空的,我填了一个 na 错误 稍微懂一点 Excel 的小伙伴都会说:"根本不需要 C列,直接用公式用B列上下相减就行了" 的确如此,这里特意用此方式,因为这过程在 pandas 中有一样的操作...相当于 Excel 操作的 D列公式 - 行4:把计算结果写入原数据 > 实际上在 pandas 还有更便捷的实现,类似于 Excel 操作中直接写公式上下引用。...不过,实际工作中的数据没有这么简单, 比如说: - 数据中有些月份数据是缺失的,怎么办? - 数据中的是日期类型,我希望按年做环比 更多详细高级应用技巧,关注我的 pandas 专栏!...多结合分组处理 实际情况是,我们拿到的数据是多个城市的月份销量: 此时我们需要注意2点: - 按城市分组 - 保证每个城市内的数据是按月份排序 代码如下: - 行3-5:每个分组的处理逻辑,内容很简单

    94520

    Pandas_Study02

    复杂的 使用向前 或 向后 填充数据,依旧使用fillna 方法,所谓向前 是指 取出现NaN值的前一列或前一行的数据来填充NaN值,向后同理 # 在df 的e 这一列上操作,默认下按行操作,向前填充数据...interpolate() 利用插值函数interpolate()对列向的数据进行填值。实现插值填充数据,那么要求这列上必须得有一些数据才可以,至少2个,会对起点和终点间的NaN进行插值。...下的值为NaN concat 函数 同样的可以指定是按行操作还是按列操作。...结果一样,但每列数据的排列会有区别,因为结果表会先显示左表的结果 print choose.merge(course, how = "right") pandas 数据分组 1. groupby 方法...agg的形参是一个函数会对分组后每列都应用这个函数。

    20510

    10个快速入门Query函数使用的Pandas的查询示例

    那么如何在另一个字符串中写一个字符串?将文本值包装在单个引号“”中,就可以了。...与数值的类似可以在同一列或不同列上使用多个条件,并且可以是数值和非数值列上条件的组合。 除此以外, Pandas Query()还可以在查询表达式中使用数学计算。...我们还可以在一个或多个列上包含一些复杂的计算。...日期时间列过滤 使用Query()函数在日期时间值上进行查询的唯一要求是,包含这些值的列应为数据类型dateTime64 [ns] 在示例数据中,OrderDate列是日期时间,但是我们的df其解析为字符串...OrderDate.dt.month显示了如何使用DT访问者仅提取整个日期值的月份值。

    4.4K20
    领券