Pandas使用stack和pivot实现数据透视
Pandas的stack和pivot实现数据透视
- 经过统计得到多维度指标数据
- 非常常见的统计场景,指定多个维度,计算聚合后的指标
案例:统计得到“电影评分数据集”,每个月份的每个分数被评分多少次:(月份,分数1-5,次数)
import pandas as pd
import numpy as np# 文件路径
file_path = r'C:\TELCEL_MEXICO_BOT\A\rating.csv'
df = pd.read_csv(file_path, sep=',')print(df)UserId MovieId Rating Timestamp
0 张三 104 6 978300760
1 张三 120 7 225689358
2 张三 136 4 689893028
3 张三 152 7 669503982
4 李四 168 5 978323894
5 李四 184 3 795889870
6 李四 208 4 965325698
7 李四 240 0 886669835
8 王五 272 9 668956290
9 王五 304 5 978824291
10 王五 336 4 866679835
11 王五 368 8 598308921
12 赵六 400 9 885986792
13 赵六 432 9 868795863df['pdata'] = pd.to_datetime(df['Timestamp'],unit='s')
print(df)UserId MovieId Rating Timestamp pdata
0 张三 104 6 978300760 2000-12-31 22:12:40
1 张三 120 7 225689358 1977-02-25 03:29:18
2 张三 136 4 689893028 1991-11-11 20:57:08
3 张三 152 7 669503982 1991-03-20 21:19:42
4 李四 168 5 978323894 2001-01-01 04:38:14
5 李四 184 3 795889870 1995-03-22 16:31:10
6 李四 208 4 965325698 2000-08-03 18:01:38
7 李四 240 0 886669835 1998-02-05 09:10:35
8 王五 272 9 668956290 1991-03-14 13:11:30
9 王五 304 5 978824291 2001-01-06 23:38:11
10 王五 336 4 866679835 1997-06-19 00:23:55
11 王五 368 8 598308921 1988-12-16 20:55:21
12 赵六 400 9 885986792 1998-01-28 11:26:32
13 赵六 432 9 868795863 1997-07-13 12:11:03print(df.dtypes)
UserId object
MovieId int64
Rating int64
Timestamp int64
pdata datetime64[ns]
dtype: objectdf_group = df.groupby([df['pdata'].dt.month, 'Rating'])['UserId'].agg(pv=np.sum)
print(df_group)pv
pdata Rating
1 5 李四王五9 赵六
2 0 李四7 张三
3 3 李四7 张三9 王五
6 4 王五
7 9 赵六
8 4 李四
11 4 张三
12 6 张三8 王五对这样格式的数据,要查看按月份,不同评分的次数趋势是没法实现的
需要将数据变换成每个评分是一列才可以实现
2. 使用unstack实现数据二维透视,目的想要画图对比不同月份的不同评分数据趋势
import pandas as pd
import numpy as np# 文件路径
file_path = r'C:\TELCEL_MEXICO_BOT\A\rating.csv'
df = pd.read_csv(file_path, sep=',')
print(df)UserId MovieId Rating Timestamp
0 张三 104 6 978300760
1 张三 120 7 225689358
2 张三 136 4 689893028
3 张三 152 7 669503982
4 李四 168 5 978323894
5 李四 184 3 795889870
6 李四 208 4 965325698
7 李四 240 0 886669835
8 王五 272 9 668956290
9 王五 304 5 978824291
10 王五 336 4 866679835
11 王五 368 8 598308921
12 赵六 400 9 885986792
13 赵六 432 9 868795863df['pdata'] = pd.to_datetime(df['Timestamp'],unit='s') ## 新加一列pdata以Timestamp改变
print(df)UserId MovieId Rating Timestamp pdata
0 张三 104 6 978300760 2000-12-31 22:12:40
1 张三 120 7 225689358 1977-02-25 03:29:18
2 张三 136 4 689893028 1991-11-11 20:57:08
3 张三 152 7 669503982 1991-03-20 21:19:42
4 李四 168 5 978323894 2001-01-01 04:38:14
5 李四 184 3 795889870 1995-03-22 16:31:10
6 李四 208 4 965325698 2000-08-03 18:01:38
7 李四 240 0 886669835 1998-02-05 09:10:35
8 王五 272 9 668956290 1991-03-14 13:11:30
9 王五 304 5 978824291 2001-01-06 23:38:11
10 王五 336 4 866679835 1997-06-19 00:23:55
11 王五 368 8 598308921 1988-12-16 20:55:21
12 赵六 400 9 885986792 1998-01-28 11:26:32
13 赵六 432 9 868795863 1997-07-13 12:11:03print(df.dtypes)
serId object
MovieId int64
Rating int64
Timestamp int64
pdata datetime64[ns]
dtype: objectdf_group = df.groupby([df['pdata'].dt.month, 'UserId'])['Rating'].agg(pv=np.sum)
print(df_group)pv
pdata UserId
1 李四 5王五 5赵六 9
2 张三 7李四 0
3 张三 7李四 3王五 9
6 王五 4
7 赵六 9
8 李四 4
11 张三 4
12 张三 6王五 8df_stack = df_group.unstack() ## unstack这种可以画线
print(df_stack)pv
UserId 张三 李四 王五 赵六
pdata
1 NaN 5.0 5.0 9.0
2 7.0 0.0 NaN NaN
3 7.0 3.0 9.0 NaN
6 NaN NaN 4.0 NaN
7 NaN NaN NaN 9.0
8 NaN 4.0 NaN NaN
11 4.0 NaN NaN NaN
12 6.0 NaN 8.0 NaN
3. 使用pivot简化透视, pivot方法相当于对df使用set_index创建分层索引,然后调用unstack
import pandas as pd
import numpy as np# 文件路径
file_path = r'C:\TELCEL_MEXICO_BOT\A\rating.csv'
df = pd.read_csv(file_path, sep=',')
print(df)UserId MovieId Rating Timestamp
0 张三 104 6 978300760
1 张三 120 7 225689358
2 张三 136 4 689893028
3 张三 152 7 669503982
4 李四 168 5 978323894
5 李四 184 3 795889870
6 李四 208 4 965325698
7 李四 240 0 886669835
8 王五 272 9 668956290
9 王五 304 5 978824291
10 王五 336 4 866679835
11 王五 368 8 598308921
12 赵六 400 9 885986792
13 赵六 432 9 868795863df['pdata'] = pd.to_datetime(df['Timestamp'],unit='s')
print(df)UserId MovieId Rating Timestamp pdata
0 张三 104 6 978300760 2000-12-31 22:12:40
1 张三 120 7 225689358 1977-02-25 03:29:18
2 张三 136 4 689893028 1991-11-11 20:57:08
3 张三 152 7 669503982 1991-03-20 21:19:42
4 李四 168 5 978323894 2001-01-01 04:38:14
5 李四 184 3 795889870 1995-03-22 16:31:10
6 李四 208 4 965325698 2000-08-03 18:01:38
7 李四 240 0 886669835 1998-02-05 09:10:35
8 王五 272 9 668956290 1991-03-14 13:11:30
9 王五 304 5 978824291 2001-01-06 23:38:11
10 王五 336 4 866679835 1997-06-19 00:23:55
11 王五 368 8 598308921 1988-12-16 20:55:21
12 赵六 400 9 885986792 1998-01-28 11:26:32
13 赵六 432 9 868795863 1997-07-13 12:11:03df_group = df.groupby([df['pdata'].dt.month, 'UserId'])['Rating'].agg(pv=np.sum)
print(df_group)pv
pdata UserId
1 李四 5王五 5赵六 9
2 张三 7李四 0
3 张三 7李四 3王五 9
6 王五 4
7 赵六 9
8 李四 4
11 张三 4
12 张三 6王五 8df_rest = df_group.reset_index()
print(df_rest)pdata UserId pv
0 1 李四 5
1 1 王五 5
2 1 赵六 9
3 2 张三 7
4 2 李四 0
5 3 张三 7
6 3 李四 3
7 3 王五 9
8 6 王五 4
9 7 赵六 9
10 8 李四 4
11 11 张三 4
12 12 张三 6
13 12 王五 8df_pivot = df_rest.pivot(index='UserId', columns='pdata', values='pv')
print(df_pivot)
pdata 1 2 3 6 7 8 11 12
UserId
张三 NaN 7.0 7.0 NaN NaN NaN 4.0 6.0
李四 5.0 0.0 3.0 NaN NaN 4.0 NaN NaN
王五 5.0 NaN 9.0 4.0 NaN NaN NaN 8.0
赵六 9.0 NaN NaN NaN 9.0 NaN NaN NaN
4. stack,unstack,pivot的语法
相关文章:
Pandas使用stack和pivot实现数据透视
Pandas的stack和pivot实现数据透视 经过统计得到多维度指标数据非常常见的统计场景,指定多个维度,计算聚合后的指标 案例:统计得到“电影评分数据集”,每个月份的每个分数被评分多少次:(月份,分…...
图像生成-ICCV2019-SinGAN: Learning a Generative Model from a Single Natural Image
图像生成-ICCV2019-SinGAN: Learning a Generative Model from a Single Natural Image 文章目录 图像生成-ICCV2019-SinGAN: Learning a Generative Model from a Single Natural Image主要创新点模型架构图生成器生成器源码 判别器判别器源码 损失函数需要源码讲解的私信我 S…...
c++ 操作符重载详解与示例
c 操作符重载详解与示例 操作符重载详解一、基本规则二、必须作为成员函数重载的运算符1. 赋值运算符 2. 下标运算符 []3. 函数调用运算符 ()4. 成员访问运算符 ->5. 转型运算符 三、通常作为非成员函数重载的运算符1. 算术运算符 2. 输入/输出运算符 << >> 四、…...
在Spring Boot项目中分层架构
常见的分层架构包括以下几层: 1. Domain 层(领域层) 作用:领域层是业务逻辑的核心,包含与业务相关的实体类、枚举、值对象等。它是对业务领域的抽象,通常与数据库表结构直接映射。 主要组件: 实体类(Entity):与数据库表对应的Java类,通常使用JPA或MyBatis等ORM框架…...
upload-labs详解(1-12)文件上传分析
目录 uploa-labs-main upload-labs-main第一关 前端防御 绕过前端防御 禁用js Burpsuite抓包改包 upload-labs-main第二关 上传测试 错误类型 upload-labs-env upload-labs-env第三关 上传测试 查看源码 解决方法 重命名,上传 upload-labs-env第四关…...
无人机应用探索:玻纤增强复合材料的疲劳性能研究
随着无人机技术的快速发展,轻量化已成为其结构设计的核心需求。玻纤增强复合材料凭借高强度、低密度和优异的耐环境性能,成为无人机机身、旋翼支架等关键部件的理想选择。然而,无人机在服役过程中需应对复杂多变的环境:高空飞行时…...
计算机毕业设计Python+DeepSeek-R1大模型空气质量预测分析(源码+文档+PPT+讲解)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
【渗透测试】基于时间的盲注(Time-Based Blind SQL Injection)
发生ERROR日志告警 查看系统日志如下: java.lang.IllegalArgumentException: Illegal character in query at index 203: https://api.weixin.qq.com/sns/jscode2session?access_token90_Vap5zo5UTJS4jbuvneMkyS1LHwHAgrofaX8bnIfW8EHXA71IRZwsqzJam9bo1m3zRcSrb…...
学习threejs,Animation、Core、CustomBlendingEquation、Renderer常量汇总
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️Animation常量汇总1.1.1 循…...
2、数据库的基础学习(中):分组查询、连接查询 有小例子
二、分组函数 功能:用作统计使用,又称为聚合函数或者统计函数或组函数 1、分类: sum 求和、avg 平均值、max最大值、min 最小值、count 计算个数 2、参数支持哪些类型 Sum\avg 一般处理数值型数据 max、min 可以数值型也可以字符型…...
Ubuntu搭建最简单WEB服务器
安装apache2 sudo apt install apache2 检查状态 $ sudo systemctl status apache2 ● apache2.service - The Apache HTTP ServerLoaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor prese>Active: active (running) since Thu 2025-03-06 09:51:10…...
如何学习编程?
如何学习编程? 笔记来源:How To Study Programming The Lazy Way 声明:该博客内容来自链接,仅作为学习参考 写在前面的话: 大多数人关注的是编程语言本身,而不是解决问题和逻辑思维。不要试图记住语言本身…...
OpenCV计算摄影学(14)实现对比度保留去色(Contrast Preserving Decolorization)的函数decolor()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 将彩色图像转换为灰度图像。它是数字印刷、风格化的黑白照片渲染,以及许多单通道图像处理应用中的基本工具。 cv::decolor 是 OpenCV…...
K8s 1.27.1 实战系列(七)Deployment
一、Deployment介绍 Deployment负责创建和更新应用程序的实例,使Pod拥有多副本,自愈,扩缩容等能力。创建Deployment后,Kubernetes Master 将应用程序实例调度到集群中的各个节点上。如果托管实例的节点关闭或被删除,Deployment控制器会将该实例替换为群集中另一个节点上的…...
Python第十五课:机器学习入门 | 从猜想到预测
🎯 本节目标 理解机器学习两大核心范式(监督/无监督学习)掌握特征工程的核心方法论实现经典算法:线性回归与K-Means聚类开发实战项目:房价预测模型理解模型评估与调优基础 一、机器学习核心概念(学生与老师…...
python 程序一次启动有两个进程的问题(flask)
0. 背景 写了一个使用 flask 作为服务框架的程序,发现每次启动程序的时候,使用 ps 都能观察到两个 python 进程。 此外,这个程序占用了 GPU 资源,我发现有两个 python 进程,分别占用了完全相同的 GPU 显存 1. 原因 …...
使用jcodec库,访问网络视频提取封面图片上传至oss
注释部分为FFmpeg(确实方便但依赖太大,不想用) package com.zuodou.upload;import com.aliyun.oss.OSS; import com.aliyun.oss.model.ObjectMetadata; import com.aliyun.oss.model.PutObjectRequest; import com.zuodou.oss.OssProperties;…...
MyBatis-Plus 与 Spring Boot 的最佳实践
在现代 Java 开发中,MyBatis-Plus 和 Spring Boot 的结合已经成为了一种非常流行的技术栈。MyBatis-Plus 是 MyBatis 的增强工具,提供了许多便捷的功能,而 Spring Boot 则简化了 Spring 应用的开发流程。本文将探讨如何将 MyBatis-Plus 与 Spring Boot 进行整合,并分享一些…...
python-51-使用最广泛的数据验证库Pydantic
文章目录 1 Pydantic2 models2.1 基本模型应用2.1.1 实例化2.1.2 访问属性2.1.3 修改属性2.2 嵌套模型【Optional】3 Fields3.1 Field()函数3.2 带注释的模式Annotated3.3 默认值3.3.1 default参数3.3.2 default_factory3.4 字段别名3.5 数字约束3.6 字符串约束3.7 严格模式4 A…...
Linux - 网络基础(应用层,传输层)
一、应用层 1)发送接收流程 1. 发送文件 write 函数发送数据到 TCP 套接字时,内容不一定会立即通过网络发送出去。这是因为网络通信涉及多个层次的缓冲和处理,TCP 是一个面向连接的协议,它需要进行一定的排队、确认和重传等处理…...
ADB、Appium 和 大模型融合开展移动端自动化测试
将 ADB、Appium 和 大模型(如 GPT、LLM) 结合,可以显著提升移动端自动化测试的智能化水平和效率。以下是具体的实现思路和应用场景: 1. 核心组件的作用 ADB(Android Debug Bridge): 用于与 Android 设备通信,执行设备操作(如安装应用、获取日志、截图等)。Appium: 用…...
【Pandas】pandas Series unstack
Pandas2.2 Series Computations descriptive stats 方法描述Series.argsort([axis, kind, order, stable])用于返回 Series 中元素排序后的索引位置的方法Series.argmin([axis, skipna])用于返回 Series 中最小值索引位置的方法Series.argmax([axis, skipna])用于返回 Series…...
rv1126交叉编译opencv+ffmpeg+x264
文章目录 🌕交叉编译x264🌙创建build_x264.sh(放在下载的x264目录下)🌙编译过程🌙查看编译后的so文件是否是arm版的 🌕下载编译ffmpeg🌙下载ffmpeg🌙创建编译脚本🌙创建ffmpeg编译路…...
【C++】ImGui:VSCode下的无依赖轻量GUI开发
本教程将手把手带您用纯原生方式构建ImGui应用,无需CMake/第三方库。您将全程明了自己每个操作的意义,特别适合首次接触GUI开发的新手。 环境配置 安装VSCode 作用:轻量级代码编辑器,提供智能提示操作: 官网下载安装…...
BUU44 [BJDCTF2020]ZJCTF,不过如此1 [php://filter][正则表达式get输入数据][捕获组反向引用][php中单双引号]
题目: 我仿佛见到了一位故人。。。也难怪,题目就是ZJCTF 按要求提交/?textdata://,I have a dream&filenext.php后: ......不太行,好像得用filephp://filter/convert.base64-encode/resourcenext.php 耶?那 f…...
Jetpack Compose — 入门实践
一、项目中使用 Jetpack Compose 从此节开始,为方便起见,如无特殊说明,Compose 均指代 Jetpack Compose。 开发工具: Android Studio 1.1 创建支持 Compose 新应用 新版 Android Studio 默认创建新项目即为 Compose 项目。 注意:在 Language 下拉菜单中,Kotlin 是唯一可…...
通过着装人体剪影预测关键点,以获取人体的二维尺寸数据。复现过程包括获取或生成3D人体数据集、生成轮廓图像、训练模型等步骤
根据文献《1_Clothes Size Prediction from Dressed-Human Silhouettes》复现方法,主要通过着装人体剪影预测关键点,以获取人体的二维尺寸数据。复现过程包括获取或生成3D人体数据集、生成轮廓图像、训练模型等步骤。 以下是进行复现的大致步骤…...
力扣HOT100之哈希:49. 字母异位词分组
这道题自己先想了一遍,定义了一个比较字符串的函数,用二重循环和一个数组来实现字符串的比较,若两个字符串是异位词,那么就返回true,否则返回false,在主函数中,同样用一个二重循环来遍历向量中的…...
基于单片机的智慧音乐播放系统研究
标题:基于单片机的智慧音乐播放系统研究 内容:1.摘要 随着科技的飞速发展,人们对音乐播放系统的智能化和个性化需求日益增长。本研究的目的是设计并实现一个基于单片机的智慧音乐播放系统。采用单片机作为核心控制单元,结合音频解码模块、存储模块和人机…...
pytest框架 核心知识的系统复习
1. pytest 介绍 是什么:Python 最流行的单元测试框架之一,支持复杂的功能测试和插件扩展。 优点: 语法简洁(用 assert 替代 self.assertEqual)。 自动发现测试用例。 丰富的插件生态(如失败重试、并发执…...
nginx 代理 redis
kubernetes 发布的redis服务端口为 31250 通过命令查询 [miniecs-88500735 /]$ minikube service redis --url http://192.168.49.2:31250[rootecs-88500735 /]# vi /etc/nginx/nginx.conf配置nginx.conf stream {upstream redis {server 192.168.49.2:31250;}server {liste…...
什么是:分布式贝叶斯推断
什么是:分布式贝叶斯推断 分布式贝叶斯推断(Distributed Bayesian Inference)是一种在分布式计算环境下进行贝叶斯统计推断的方法,旨在利用多节点或多设备的并行计算能力,高效处理大规模数据或复杂模型。其核心思想是将数据、模型或计算过程分解到多个节点上,通过协作完…...
C# 命名空间(Namespace)详解
在C#中,命名空间(Namespace)是一种封装和组织代码的方式,它允许将相关的类、接口、结构体和枚举等类型组织在一起,以避免命名冲突,并提供了一种逻辑上的分组方式。命名空间的使用有助于提高代码的可读性、可…...
ASP.NET Core JWT认证与授权
1.JWT结构 JSON Web Token(JWT)是一种用于在网络应用之间安全传输声明的开放标准(RFC 7519)。它通常由三部分组成,以紧凑的字符串形式表示,在身份验证、信息交换等场景中广泛应用。 2.JWT权限认证 2.1添…...
Docker参数,以及仓库搭建
一。Docker的构建参数 注释: 1.对于CMD,如果不想显示,而是使用交互界面:docker run -ti --rm --name test2 busybox:v5 sh 2.对于CMD,一个交互界面只可以使用一个,如果想多次使用CMD,则用ENTR…...
hooks useModule自定义hooks (二次封装AgGridReact ag-table)自定义表头,自定义表头搜索
场景业务: 多次运用AgGridReact的table 列表 思路: 运用自定义hooks进行二次封装: 通用配置例如:传参的参数,传参的url,需要缓存的key这些键值类 定制化配置例如:需要对table 的一些定制化传…...
机试准备第11天
第一题是浮点数加法,目前写过最长的代码。 #include <stdio.h> #include <string> #include <iostream> #include <vector> using namespace std; int main() {string str1;string str2;while (getline(cin, str1) && getline(cin…...
正则表达式详解
这里写目录标题 一、基本概念1.基本语法2.修饰符3.方括号4.元字符5.量词 二、结构1.匹配模式2.字符组3.量词4.贪婪匹配和惰性匹配5.多选分支6.匹配模式关键词 三、位置1.位置锚点2.分组与引用1.分组与编号2.不保存子组3.括号嵌套4.命名捕获组5.引用捕获组 3.回溯匹配 四、对象方…...
动态扩缩容引发的JVM堆内存震荡:从原理到实践的GC调优指南
目录 一、典型案例:系统发布后的GC雪崩事件 (一)故障现象 1. 刚刚启动时 GC 次数较多 2. 堆内存锯齿状波动 3. GC日志特征:Allocation Failure (二)问题定位 二、原理深度解析:JVM内存弹…...
本地运行Manus的替代方案:OpenManus的技术解析与实践指南
无需邀请码,三小时构建的开源智能体革命 一、背景:从Manus到OpenManus的技术突围 近期,AI智能体领域因Manus的发布引发热议。这款号称“全球首个通用型AI智能体”的产品,通过整合浏览器操作(Browser Use)…...
红果短剧安卓+IOS双端源码,专业短剧开发公司
给大家拆解一下红果短剧/河马短剧,这种看光解锁视频,可以挣金币的短剧APP。给大家分享一个相似的短剧APP源码,这个系统已接入穿山甲广告、百度广告、快手广告、腾讯广告等,类似红果短剧的玩法,可以看剧赚钱,…...
ubuntu22.04本地部署OpenWebUI
一、简介 Open WebUI 是一个可扩展、功能丰富且用户友好的自托管 AI 平台,旨在完全离线运行。它支持各种 LLM 运行器,如 Ollama 和 OpenAI 兼容的 API,并内置了 RAG 推理引擎,使其成为强大的 AI 部署解决方案。 二、安装 方法 …...
不同开发语言之for循环的用法、区别总结
一、Objective-C (1)标准的c风格 for (int i 0; i < 5; i) {NSLog("i %d", i); } (2)for in循环。 NSArray *array ["apple", "banana", "orange"]; for (NSString *fruit in …...
国产编辑器EverEdit - 宏功能介绍
1 宏 1.1 应用场景 宏是一种重复执行简单工作的利器,可以让用户愉快的从繁琐的工作中解放出来,其本质是对键盘和菜单的操作序列的录制,并不会识别文件的内容,属于无差别无脑执行。 特别是对一些有规律的重复按键动作,…...
【Linux跬步积累】—— 网络基础
🌏博客主页:PH_modest的博客主页 🚩当前专栏:Linux跬步积累 💌其他专栏: 🔴 每日一题 🟡 C跬步积累 🟢 C语言跬步积累 🌈座右铭:广积粮࿰…...
【银河麒麟高级服务器操作系统实例】虚拟机桥接网络问题分析及处理
更多银河麒麟操作系统产品及技术讨论,欢迎加入银河麒麟操作系统官方论坛 https://forum.kylinos.cn 了解更多银河麒麟操作系统全新产品,请点击访问 麒麟软件产品专区:https://product.kylinos.cn 开发者专区:https://developer…...
深入剖析Android Service:原理、生命周期与实战应用
一、引言:开启 Service 探索之旅 在 Android 开发的广袤天地中,Service 堪称一颗璀璨的明星,占据着举足轻重的地位。它宛如一位幕后英雄,默默地在后台辛勤劳作,执行着各种至关重要的任务,却无需与用户进行…...
MLT媒体程序框架03:滤镜——loudness
EBU R.128协议 引用链接 EBU的全称为European Broadcasting Union ,既欧洲广播联盟,为欧洲与北非各广播业者(包含广播电台与电视台)的合作组织,成立于1950年2月12日,有五十多个正式加盟国,总部位于瑞士日内瓦,目前中国…...
FreeRTOS第15篇:FreeRTOS链表实现细节03_List_t与ListItem_t的奥秘
文/指尖动听知识库-星愿 文章为付费内容,商业行为,禁止私自转载及抄袭,违者必究!!! 文章专栏:深入FreeRTOS内核:从原理到实战的嵌入式开发指南 1 FreeRTOS列表的核心数据结构 FreeRTOS的列表实现由两个关键结构体组成:List_t(列表)和ListItem_t(列表项)。它们共同…...
Spring Boot静态资源访问顺序
在 Spring Boot 中,static 和 public 目录都用于存放静态资源(如 HTML、CSS、JavaScript、图片等文件),但它们在使用上有一些细微的区别。以下是它们的详细对比: 1. 默认优先级 Spring Boot 会按照以下优先级加载静态…...