You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用filter()函数筛选出treatment字段为指定年份的投资者数据

filter()函数筛选指定取值记录的操作指南

针对你需要筛选treatment字段取值为2006、2007、2008的记录的需求,不同常用工具/语言的实现方法如下:

R语言(dplyr包filter函数)

属于tidyverse生态下最常用的筛选方法,代码示例:

# 加载dplyr依赖包
library(dplyr)

# 执行筛选,结果存入filtered_df
filtered_df <- df %>%
  filter(treatment %in% c(2006, 2007, 2008))

说明:%in%运算符用于判断字段取值是否属于指定的数值集合,完美适配多值筛选需求。

Python场景

2.1 PySpark的filter函数

大数据场景下PySpark处理数据框的筛选写法:

# 写法1
filtered_df = df.filter(df.treatment.isin([2006, 2007, 2008]))

# 写法2(SQL表达式风格)
filtered_df = df.filter("treatment in (2006, 2007, 2008)")

2.2 原生Python内置filter函数

如果你的数据是列表嵌套字典的原生Python结构,写法如下:

# 示例数据结构:data = [{"investor":"123 IM", "dealyear":2003, "treatment":2006, ...}, ...]
filtered_data = list(filter(lambda x: x["treatment"] in (2006, 2007, 2008), data))

2.3 Pandas数据框行筛选

注意Pandas的filter方法默认用于筛选列,行筛选推荐以下写法:

# 布尔索引写法
filtered_df = df[df['treatment'].isin([2006, 2007, 2008])]

# query方法写法
filtered_df = df.query("treatment in [2006, 2007, 2008]")

JavaScript数组filter方法

前端处理JSON格式业务数据的写法:

// 示例数据结构:const data = [{investor:"123 IM", dealyear:2003, treatment:2006, ...}, ...]
const filteredData = data.filter(item => [2006, 2007, 2008].includes(item.treatment))

内容的提问来源于stack exchange,提问作者R Wd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 16:51:02