首页 > 解决方案 > R 错误:'错误:`f` 必须是一个因子(或字符向量)。'

问题描述

我收到此错误:

错误:f必须是一个因子(或字符向量)。

这是我的代码

ge19 <- read.csv("ge2019.csv")
aps19 <- read.csv("aps19.csv")

ge19aps19 <- merge(ge19, aps19,by="ons_id")

ge19aps19$london <- ge19aps19$region_name

table(ge19aps19$london)

library (dplyr)
library(forcats)

ge19aps19$london <- fct_drop(ge19aps19$london)
table(ge19aps19$london)

ge19aps19$london <- relevel(ge19aps19$london, ref= "London")

table(ge19aps19$london)

ge19aps19$lab.per <- ge19aps19$lab/ge19aps19$valid_votes
ge19aps19$lab.per <- fct_drop(ge19aps19$lab.per)

谁能告诉我怎么了?这个网站的第一次用户,所以如果需要更多信息,请告诉我/我的问题格式错误

标签: rregression

解决方案


错误消息意味着您传递给fct_drop函数的参数是 neightherfactorcharacter

从你的代码中我看到这ge19aps19$lab.per是一个numeric由这个公式计算的列

ge19aps19$lab.per <- ge19aps19$lab/ge19aps19$valid_votes

你为什么fct_drop在那个专栏上跑?它是一个数字列,所以fct_drop在那里抛出了一条错误消息!


推荐阅读