【发布时间】:2021-02-26 07:13:11
【问题描述】:
我想将字符列设为数字,这样我就可以计算基本工资的平均值。但是我不断收到不同的错误。
我用代码
dataset <- read.csv("Wagegap.csv")
SFWage <- dataset %>%
as.numeric(dataset$BasePay)%>%
group_by(gender,JobTitle, Year) %>%
summarise(averageBasePay = mean(BasePay, na.rm=TRUE)) %>%
select(gender, JobTitle, averageBasePay, Year)
clean <- SFWage %>% filter(gender != "")
如果我不使用 $,它要么无法识别我的基本工资列,如果我使用 $,它就会显示
function_list[i] 中的错误: 'list' 对象不能被强制输入 'double'
基本工资列显示带有“.”的数字而不是“,”,所以我不必使用 gsub()?
【问题讨论】:
-
请显示数据框的样子。我觉得应该是
mutate(BasePay = as.numeric(BasePay)) -
SFWage % as.numeric(dataset$BasePay)%>% 在这里,您将数据集(一个数据框)作为第一个参数传递给 as.numeric() 函数. as.numeric 不适用于整个数据框。你可以使用@StupidWolf 的代码。
-
感谢它通过在管道之前使用 dataset$BasePay