【发布时间】:2021-07-28 23:21:06
【问题描述】:
我正在尝试从 med_name_two 中获取一个列字符串,该列附加到基于 med_name_one 的列名。但条件是在第一列中的字符串哌拉西林之后是第二列中的他唑巴坦。数据集示例如下。可以看到,med_name_one 中的最后一行是 Pipperalicin,然后是 med_name_two 中的 Tazobactam。我想以这种格式“哌拉西林-他唑巴坦”将“他唑巴坦”附加到“哌拉西林”。只想在 R
中使用 tidyverse 库来实现这一点structure(list(id = c(1, 1, 2, 2, 3, 4, 5, 6, 7), med_name_one = c("Co-amoxiclav",
"doxycycline", "Gentamicin", "Co-trimoxazole", "Gentamicin",
"Co-trimoxazole", "Sodium Chloride", "Piperacillin", "Piperacillin"
), med_name_two = c(NA, "Gentamicin", "Co-trimoxazole", NA, NA,
NA, NA, NA, "Tazobactam"), mg_one = c("411 mg", "120 mg", "11280 mg",
"8 mg", "11280 mg", "8 mg", "411 mg", "120 mg", NA), mg_two = c(NA,
"11280 mg", "8 mg", NA, NA, NA, NA, NA, NA), administration_datetime = c("2020-01-03 10:08",
"2020-01-01 11:08", "2020-01-02 19:08", "2020-01-08 20:08", "2020-01-02 19:08",
"2020-01-08 20:08", "2019-01-30 08:08", "2020-01-03 09:08", "2020-01-03 09:08"
)), row.names = c(NA, -9L), class = c("tbl_df", "tbl", "data.frame"
))
我想要哌拉西林-他唑巴坦的输出。见下表。
id med_name_one med_name_two mg_one mg_two administration_datetime
<dbl> <chr> <chr> <chr> <chr> <chr>
1 1 Co-amoxiclav NA 411 mg NA 2020-01-03 10:08
2 1 doxycycline Gentamicin 120 mg 11280 mg 2020-01-01 11:08
3 2 Gentamicin Co-trimoxazole 11280 mg 8 mg 2020-01-02 19:08
4 2 Co-trimoxazole NA 8 mg NA 2020-01-08 20:08
5 3 Gentamicin NA 11280 mg NA 2020-01-02 19:08
6 4 Co-trimoxazole NA 8 mg NA 2020-01-08 20:08
7 5 Sodium Chloride NA 411 mg NA 2019-01-30 08:08
8 6 Piperacillin NA 120 mg NA 2020-01-03 09:08
9 7 Piperacillin-tazobactam NA NA NA 2020-01-03 09:08
【问题讨论】:
-
我不清楚到底想得到什么。你能澄清一下吗?
-
做了一些改变。 :)