gpt4 book ai didi

r - 如何通过正确答案将因子更改为二进制数字?

转载 作者:行者123 更新时间:2023-12-02 06:50:24 24 4
gpt4 key购买 nike

q1  q2  q3
C B D
1 B C
D 1 B

是一个数据框,q1,q2,q3 列是具有 4 个级别的因素类型 1,B,C,D

我想将 B,C,D 转换为 0 意味着错误的答案,那么我将得到一个只有 0 或 1< 的数字类型数据框

怎么做?

最佳答案

这里有一个使这个向量化的技巧,

 (df == 1)*1
#or (df == 1)+0 , or even abs(df == 1) - as per @d.b's comment

这给出了,

     q1 q2 q3
[1,] 0 0 0
[2,] 1 0 0
[3,] 0 1 0

要查看其工作原理,df == 1 创建一个逻辑矩阵。通过将矩阵乘以 1,我们得到与执行 as.integer() 相同的效果(TRUE * 1 = 1FALSE * 1 = 0) 但这种方式将结构保持为矩阵,而 as.integer(df == 1) 转换为向量 ([1] 0 1 0 0 0 1 0 0 0)。

关于r - 如何通过正确答案将因子更改为二进制数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46038376/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com