You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写R函数按Hospital_ID生成独立患者合并DataFrame

解决方案

步骤说明

  1. 合并数据表:先将Demography和Patient_Prescription通过Pat_ID关联,筛选出需要的列(匹配预期输出结构)。
  2. 按医院拆分:将合并后的数据集按Hospital_ID拆分为一个列表,每个列表元素对应一家医院的合并DataFrame。

完整代码

library(dplyr)
library(stringr) # 用于格式化处方名称(可选)

# 合并两个数据表,保留目标列并格式化处方名称
merged_data <- Demography %>%
  inner_join(Patient_Prescription, by = "Pat_ID") %>%
  select(Pat_ID, Hospital_ID, Prescription, Gender) %>%
  mutate(Prescription = str_to_title(Prescription)) # 可选:将处方名首字母大写,匹配示例输出

# 按Hospital_ID拆分为DataFrame列表
hospital_dfs <- split(merged_data, merged_data$Hospital_ID)

如何使用结果

  • 通过列表索引访问特定医院的数据:
    # 获取A434医院的合并数据
    hospital_dfs[["A434"]]
    
    # 获取A232医院的合并数据
    hospital_dfs[["A232"]]
    

示例输出

A434医院数据:

Pat_IDHospital_IDPrescriptionGender
P1A434HydrolinM
P4A434DanitolM

A232医院数据:

Pat_IDHospital_IDPrescriptionGender
P2A232OspamoxF
P6A232Dentol HydroM

注意事项

  • 使用列表存储所有医院数据比生成270个独立DataFrame更整洁,便于后续批量处理(如导出到文件、批量分析)。
  • 若确实需要将每个医院数据转为独立环境变量,可使用list2env(hospital_dfs, .GlobalEnv),但不推荐用于大量分组的场景。

内容的提问来源于stack exchange,提问作者Usman YousafZai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 03:57:03