【问题标题】:Errors converting Character to Numeric R将字符转换为数字 R 时出错
【发布时间】: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

标签: r dataframe mean numeric


【解决方案1】:

在所有管道之前试试这个:

dataset$BasePay <- as.numeric(dataset$BasePay)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-23
    • 2014-01-23
    • 2012-07-29
    • 2021-07-04
    • 2013-01-19
    • 2021-03-30
    相关资源
    最近更新 更多