【问题标题】:Error in .subset2(x, i, exact = exact) : recursive indexing failed at level 2.subset2(x, i, exact = exact) 中的错误:递归索引在第 2 级失败
【发布时间】:2021-06-17 16:23:41
【问题描述】:

我正在尝试将我的教育变量从具有 18 个级别的因子重新编码为具有 7 个级别的因子,范围从无资格 - GCSE DG、GCSE A*-C- A 级 - 本科 - 研究生 - 其他。

bes[[bes$education]]%>% recode('No qualification' = 'no qualification',
                               'GCSE D-G, CSE grades 2-5, O level D-E' = 'GCSE D-G',
                               'Youth training certificate, skill seekers' = 'GCSE D-G',
                               'Clerical and commercial qualifications'= 'GCSE D-G',
                               'GCSE A*-C, CSE grade 1, O level grade A-C'  = 'GCSE A*-C',
                               'Scottish Standard grades, Ordinary bands' = 'GCSE A*-C',
                               'Recognised trade apprenticeship' = 'GCSE A*-C',
                               'City&Guilds level 1, NVQ/SVQ 1 and equivalent' = 'GCSE A*-C',
                                 'A level or equivalent '= 'A level',
                               'Scottish Higher or equivalent'= 'A level',
                               'City&Guilds level 2, NVQ/SVQ 2 and equivalent'= 'A level',
                               'HNC/HND, City&Guilds level 4, NVQ/SVQ 4/5'= 'A level',
                               'ONC/OND, City&Guilds level 3, NVQ/SVQ 3'= 'A level',
                               'Univ/poly diploma'= 'Undergraduate',
                               'First degree'= 'Undergraduate',
                               'Nursing qualification'= 'Undergraduate',
                               'Teaching qualification'= 'Undergraduate',
                               'Postgraduate degree'  = 'Postgrad',
                               'Other technical, professional or higher qualification' = "Other")

我在执行此操作时遇到了问题,并且不断收到错误消息。我已经尝试使用 base r 和 dplyr 和 plyr 包中的 ifelse 函数和各种其他函数,但我似乎仍然无法做到。

【问题讨论】:

    标签: r dplyr plyr recode


    【解决方案1】:

    第一个命令的语法错误。而不是bes[[bes$education]] 使用bes$education。方括号[[]] 与列数一起使用,$ 符号与它们的名称一起使用。可以是[[]]$,但不能同时使用。

    【讨论】:

    • 非常感谢!我成功了!
    • @Kuddiking 没问题。您可以通过单击我的答案旁边的打勾 ✓ 将问题标记为已解决。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-12
    相关资源
    最近更新 更多