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

R语言Subset函数报错:找不到对象'Rajasthan'问题求助

问题解决:R中筛选州数据时"object not found"错误

错误原因

在subset(statedf, State == Rajasthan)这行代码中,Rajasthan没有被引号包裹,R会将其识别为变量/对象名称,但你并未定义过该变量,因此触发"object 'Rajasthan' not found"的错误。字符串类型的匹配值必须用单引号或双引号明确标记。

修正后的代码

# 直接从指定URL读取数据(无需提前下载本地文件)
statedf <- read.csv("https://data.incovid19.org/csv/latest/states.csv", header = TRUE, sep = ",")
# 使用更规范的<-赋值运算符重命名列
names(statedf) <- c("Date", "State", "Confirmed", "Recovered", "Deceased", "Other", "Tested")
# 给Rajasthan添加双引号,作为字符串进行匹配
mystatedf <- subset(statedf, State == "Rajasthan")
mystatedf

可选的更简洁写法(使用dplyr包)

如果你习惯tidyverse语法,可以用更直观的筛选方式:

library(dplyr)

mystatedf <- read.csv("https://data.incovid19.org/csv/latest/states.csv") %>%
  rename(
    Date = 1,
    State = 2,
    Confirmed = 3,
    Recovered = 4,
    Deceased = 5,
    Other = 6,
    Tested = 7
  ) %>%
  filter(State == "Rajasthan")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 07:26:01