我的数据看起来像这样:
data <- data.frame(AP = c("1.0", "1.0", "1.0", "2.2", "2.2", "3.1", "3.1", "3.1", "3.1", "3.1"),
PROFISSIONAL = c("JULIA", "JULIA", "JULIA", "ROSANA", "ROSANA", "JEFERSON", "JEFERSON", "JEFERSON", "JEFERSON", "JEFERSON"),
NOME = c("MARIA A", NA, NA, "RENATA", NA, "CLAUDIA", NA, NA, NA, NA),
MEDICAMENTO = c("LOSARTANA", "PARACETAMOL", "NEOSORO", "LOSARTANA", "ATENOLOL", "SINVASTATINA", "AAS", "ENALAPRIL", "HIDROCLOROTIAZIDA", "FLUOXETINA"))
字符串
“NOME”变量下的每个NA是与上述名称相同的人。例如,CLAUDIA之后的4个NA属于CLAUDIA。我需要将这些行转换为列,以确定它所属的特定名称。
的数据
这将是所需的输出:
data2 <- data.frame(AP = c("1.0", "2.2", "3.1"),
PROFISSIONAL = c("JULIA", "ROSANA", "JEFERSON"),
NOME = c("MARIA A", "RENATA", "CLAUDIA"),
MEDICAMENTO1 = c("LOSARTANA", "LOSARTANA", "SINVASTATINA"),
MEDICAMENTO2 = c("PARACETAMOL", "ATENOLOL", "AAS"),
MEDICAMENTO3 = c("NEOSORO", NA, "ENALAPRIL"),
MEDICAMENTO4 = c(NA, NA, "HIDROCLOROTIAZIDA"),
MEDICAMENTO5 = c(NA, NA, "FLUOXETINA"))
型
有没有什么方法可以做到这一点,所有的变量使用“NOME”作为NA条件?
编辑:除了MEDICAMENTO变量,还有其他变量:DIF、STATUS、STATUS2、INDICAÇú、STATUS9、DOSE1、DOSE2、FREQ1、FREQ2、DOSEREAL1和DOSEREAL2。AP和PROFISSIONAL变量可以分配给不同的名称。例如,不同的NOME可以被分配给相同的PROFISSONAL和AP。
3条答案
按热度按时间rqmkfv5c1#
字符串
xzlaal3s2#
如果您的 NOME 数据有多个非
NA
值,请使用purrr::map
选择它们注意,使用稍微修改的数据集来反映这一点
字符串
数据
型
juzqafwq3#
对不起,我的代码很糟糕。这个有用吗?我叫它
data
字符串
输出量:
型
的数据