在处理一个很大的患者检验表,表列名为患者唯一号,检验项目和时间。怎么根据同一个患者同一个检验项目根据检查时间的进行筛选提取。同一个病人同一个检验项目只保留最后一次检查的结果。怎么用R代码解决。
1条回答 默认 最新
- MarkHan_ 2023-03-14 12:35关注
该回答引用GPTᴼᴾᴱᴺᴬᴵ
你可以使用dplyr包进行数据处理。具体的步骤如下:导入数据,假设数据的名称为data。
将数据按照患者唯一号和检验项目进行分组,并按照时间的降序排列。
library(dplyr) data <- data %>% arrange(desc(时间)) %>% group_by(患者唯一号, 检验项目)
- 使用distinct函数,只保留每个组的第一个观测值(即最后一次检查的结果)。
data <- distinct(data, 患者唯一号, 检验项目, .keep_all = TRUE)
完整的代码如下:
library(dplyr) # 导入数据 data <- read.csv("path/to/data.csv") # 按照患者唯一号和检验项目分组,按照时间降序排列 data <- data %>% arrange(desc(时间)) %>% group_by(患者唯一号, 检验项目) # 保留每个组的第一个观测值(即最后一次检查的结果) data <- distinct(data, 患者唯一号, 检验项目, .keep_all = TRUE)
这样,你就得到了一个只包含每个病人每个检验项目最后一次检查结果的数据集。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 目详情-五一模拟赛详情页
- ¥15 有了解d3和topogram.js库的吗?有偿请教
- ¥100 任意维数的K均值聚类
- ¥15 stamps做sbas-insar,时序沉降图怎么画
- ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
- ¥15 关于#Java#的问题,如何解决?
- ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
- ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
- ¥15 cmd cl 0x000007b
- ¥20 BAPI_PR_CHANGE how to add account assignment information for service line