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

筛选airpollution数据中fi(2018/19)行仅得1条结果,求修正方法

正确筛选study列为fi(2018/19)的观测行

你的代码demodata<-[c("fi(2018/19)"),]存在核心语法错误:既没有指定要操作的原始数据框(比如你的airpollution数据集),也没有设置筛选逻辑,只是在创建一个单元素字符串向量,所以只能得到一个字符串,而非目标数据行。

以下是两种R语言中正确的筛选方法:

方法1:基础R原生语法

假设你的原始数据框名为airpollution,通过逻辑条件索引筛选:

# 筛选study列等于"fi(2018/19)"的所有行
filtered_data <- airpollution[airpollution$study == "fi(2018/19)", ]
  • airpollution$study == "fi(2018/19)"生成一个逻辑向量,标记每一行是否符合条件
  • 末尾的,表示保留所有列,最终会得到样本中3条符合条件的观测

方法2:使用dplyr包(tidyverse风格)

如果偏好更简洁的管道式写法,可使用dplyr的filter()函数:

# 未安装dplyr的话先执行:install.packages("dplyr")
library(dplyr)

filtered_data <- airpollution %>% 
  filter(study == "fi(2018/19)")

这种写法直接明确筛选条件,可读性更强,结果和基础R方法一致。

内容的提问来源于stack exchange,提问作者Hasan Sohail

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 04:55:29