gpt4 book ai didi

r - 将行值转换为 R 中的列

转载 作者:行者123 更新时间:2023-12-02 09:28:15 27 4
gpt4 key购买 nike

我有一个如下所示的数据表,该数据表是根据有关人们正在服用的药物(编码为药物 ID)的调查问卷得出的:

ID  Drug1 Drug2 Drug3 Drug4
1 45 NA NA NA
2 NA NA NA NA
3 23 45 NA NA
4 23 NA NA NA
5 57 45 23 NA

换句话说,第一个人正在服用ID为“45”的药物,第二个人没有服用任何药物。第三个人正在服用药物23和45。

我想将其转换为以下矩阵:

ID  23     45      57
1 FALSE TRUE FALSE
2 FALSE FALSE FALSE
3 TRUE TRUE FALSE
4 TRUE FALSE FALSE
5 TRUE TRUE TRUE

如何在 R 中执行此操作?我在网上找不到适用于这样的多列的解决方案。

最佳答案

不需要软件包:

with( cbind(dat[1], stack(dat[-1]) ), table(ID, values) > 0 )

# values
#ID 23 45 57
# 1 FALSE TRUE FALSE
# 2 FALSE FALSE FALSE
# 3 TRUE TRUE FALSE
# 4 TRUE FALSE FALSE
# 5 TRUE TRUE TRUE

关于r - 将行值转换为 R 中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35713760/

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