数据分析-29-基于pandas的窗口操作和对JSON格式数据的处理

时间:2024-10-02 17:41:31

文章目录

  • 1 窗口操作
    • 1.1 滑动窗口思想
    • 1.2 函数df.rolling
  • 2 JSON格式数据
    • 2.1 处理简单JSON对象和JSON列表
      • 2.1.1 处理简单的JSON结构
      • 2.1.2 处理空字段
      • 2.1.3 获取部分字段
    • 2.2 处理多级json
      • 2.2.1 展开所有级别(默认)
      • 2.2.2 自定义展开层级
    • 2.3 处理嵌套列表JSON
  • 3 参考附录

1 窗口操作

1.1 滑动窗口思想

这个思想其实很好理解,如下图,假如窗口的大小是3,当不断有新数据来时,我们会维护一个大小为3的一个区间,超过3的就将新的放入老的移走。
在这里插入图片描述

这个过程有点像火车在铁轨上跑,原始数据可能保存在一个很大的空间里(铁轨),但是我们标记的小区间就像一列长度固定的火车,一直向前走。
一、窗口
窗口其实就是两个变量left和right之间的元素,也可以理解为一个区间。窗口大小不一定固定,思考两种场景:
(1)如果是固定的,一般要先确定窗口是否越界,再执行逻辑处理。则一般会让你求哪个窗口的元素最大、最小、平均值、和最大、和最小等类型的问题。
(2)如果是可变的窗口,一般先判断是否满足要求,再执行逻辑处理。则一般要求一个序列里最大、最小窗口是什么。
二、滑动
说明这个窗口是移动的,事实上移动的仍然是left和right两个变量,而不是序列中的元素。当变量移动时,其中间的元素必然会发生变化࿰