Practice makes perfect
文献集锦
如何理论创新?
管理学理论集锦
Python实际应用
聚类标准误与固定效应
巫师3:狂猎
Stata应用技巧
Python知识与技巧
回归系数的经济意义
双重差分法(DID)
创新文献阅读与摘要
计量经济学
Python绘图相关
遗漏变量偏误检验
如何使用Python实现变量的缩尾
type
Post
status
Published
date
slug
summary
tags
category
Python实际应用
icon
password
网址
作者
标签
文章链接
发布时间
来源
在实证论文中,缩尾(Winsorization) 是一种常用的极值处理方法,用来将上下极端值拉回到指定分位点,从而降低异常值对分析结果的影响。
如果你想对
data['A'] 进行上下 1% 缩尾,可以使用 Pandas 结合 quantile 来实现。下面详细演示几种方法。
方法 1:使用 Pandas clip()(最简洁推荐)
解释:
quantile(0.01)→ 计算第 1% 分位数。
quantile(0.99)→ 计算第 99% 分位数。
clip(lower, upper)→- 小于
lower的值替换为lower; - 大于
upper的值替换为upper; - 介于两者之间的值保持不变。
方法 2:使用 np.where(更显式的写法)
如果你想显式控制上下界替换,可以使用
numpy.where:这段代码逻辑上与
clip() 完全一致,但适合需要明确表达逻辑的场景。方法 3:直接覆盖原列
如果你不想生成新列,而是直接在原列上进行缩尾:
查看缩尾效果
可以比较缩尾前后最大值和最小值,验证是否生效:
上一篇
自然对数的转换方法
下一篇
解读固定效应
Loading...