提交 c8e38fb4 authored 作者: 宋宏伟's avatar 宋宏伟

update code

上级 cbc75fe3
......@@ -74,7 +74,7 @@ def etl_prescribing(d_start_time, d_end_time, d_start_time_utc, d_end_time_utc,
null as rx_end_datetime,
a.dose as dosage_qty,
a.dose_unit_name as dosage_unit,
a.frequency_code,
a.frequency_code as frequency,
a.frequency_name,
a.qty as quantity,
null as quantity_uom,
......@@ -156,7 +156,7 @@ def etl_prescribing(d_start_time, d_end_time, d_start_time_utc, d_end_time_utc,
a.end_time as rx_end_datetime,
a.dose as dosage_qty,
a.dose_unit_name as dosage_unit,
a.frequency_code,
a.frequency_code as frequency,
a.frequency_name,
a.qty as quantity,
null as quantity_uom,
......
......@@ -50,7 +50,7 @@ def etl_lab_result_cm(d_start_time, d_end_time, d_start_time_utc, d_end_time_utc
select DISTINCT * from iceberg.cdm.lab_report_result
where (test_item_name ~* 'C肽|C-PR' and test_item_name ~* '空腹|1|60|2|120|3|180')
or (test_item_name ~* '空腹|FPG|空腹血糖' and test_item_name ~* '血')
or (test_item_name ~* 'OGTT|耐量|负荷' and test_item_name ~* '2|120'
or (test_item_name ~* 'OGTT|耐量|负荷' and test_item_name ~* '2|120')
or (test_item_name ~* 'HbA1c|糖化血红蛋白')
)
select DISTINCT
......@@ -125,7 +125,7 @@ def etl_lab_result_cm(d_start_time, d_end_time, d_start_time_utc, d_end_time_utc
select DISTINCT * from iceberg.cdm.lab_report_result
where (test_item_name ~* 'C肽|C-PR' and test_item_name ~* '空腹|1|60|2|120|3|180')
or (test_item_name ~* '空腹|FPG|空腹血糖' and test_item_name ~* '血')
or (test_item_name ~* 'OGTT|耐量|负荷' and test_item_name ~* '2|120'
or (test_item_name ~* 'OGTT|耐量|负荷' and test_item_name ~* '2|120')
or (test_item_name ~* 'HbA1c|糖化血红蛋白')
)
select DISTINCT
......
......@@ -4,7 +4,7 @@ options(scipen = 1, digits = 2)
options(encoding = 'UTF-8')
library(here)
source(here("codes","preprocess","R","target_group.R"))
source(here("target_group.R"))
# 基线 -------------------------------------------------------------------------
## 人口学 ####
......
......@@ -4,8 +4,8 @@ options(scipen = 1, digits = 2)
options(encoding = 'UTF-8')
library(here)
source(here("codes","preprocess","R","common.R"))
source(here("codes","preprocess","R","dataset_for_analysis.R"))
source(here("common.R"))
source(here("dataset_for_analysis.R"))
# load(here("data", "clean", "dataset_for_analysis.RData"))
......
......@@ -4,9 +4,9 @@ options(scipen = 1, digits = 2)
options(encoding = 'UTF-8')
library(here)
source(here("codes","preprocess","R","common.R"))
source(here("common.R"))
source(here("codes","preprocess","R","wrangling.R"))
source(here("wrangling.R"))
patient_clean <- arrow::read_parquet("../../../data/preprocessed/patient_clean.parquet")
visit_clean <- arrow::read_parquet("../../../data/preprocessed/visit_clean.parquet")
......
......@@ -20,7 +20,7 @@ library(zoo)
# library(eoffice)
library(tableone)
library(plotly)
source(here("codes","preprocess","R","common.R"))
source(here("common.R"))
# 导入数据
......@@ -108,7 +108,7 @@ rx_sep <- rx_raw %>%
mutate(visit_id = as.character(visit_id)) %>%
drop_na(std_rx_desc) %>%
distinct() %>%
left_join(select(visit_clean, visit_id, patient_id, patient_type, admission_datetime, specialty = raw_specialty, provider_id)) %>%
left_join(select(visit_clean, visit_id, patient_id, patient_type, admission_datetime, specialty, provider_id)) %>%
# mutate(order_datetime = case_when(is.na(order_datetime) ~ admission_datetime,
# TRUE ~ order_datetime)) %>%
mutate(order_datetime = case_when(!is.na(rx_start_datetime) ~ rx_start_datetime,
......
#################################### 数据提取配置 ##############################################
# 机构id 传入None 则提全部机构数据 需要传入列表
# 机构id 传入None 则提全部机构数据 需要传入列表
[pv_ids]
pv_ids = ['320106426090445', '320104466002630', '320106466000838']
# pv_ids = [None]
# pv_ids = ['320106426090445', '320104466002630', '320106466000838']
# pv_ids = ['320106426090445']
pv_ids = [None]
# 数据提取范围 需要传入开始时间和结束时间 需要传入列表
[date_ranges]
date_ranges = [["2021-01-01", "2021-07-01"]]
# date_ranges = [["2021-01-01", "2021-07-01"],["2021-07-01", "2022-01-01"],["2022-01-01", "2022-07-01"],["2022-07-01", "2023-01-01"],["2023-01-01", "2023-07-01"],["2023-07-01", "2024-01-01"],["2024-01-01", "2024-07-01"],["2024-07-01", "2024-10-01"]]
# date_ranges = [["2021-01-01", "2021-07-01"]]
date_ranges = [["2021-01-01", "2021-07-01"],["2021-07-01", "2022-01-01"],["2022-01-01", "2022-07-01"],["2022-07-01", "2023-01-01"],["2023-01-01", "2023-07-01"],["2023-07-01", "2024-01-01"],["2024-01-01", "2024-07-01"],["2024-07-01", "2024-11-01"]]
# 表格提取
[tables]
tables = ['patient', 'visit', 'prescribing', 'diagnosis', 'lab']
\ No newline at end of file
tables = ['patient', 'visit', 'prescribing', 'diagnosis', 'lab']
# tables = ['lab']
\ No newline at end of file
......@@ -61,9 +61,9 @@ raw_col_name = ['rx_desc','frequency']
join_table_name_lst = ['prescribing']
dict_name_lst = ['rx_desc_dict','frequency_dict']
create_table_sql = 'CREATE TABLE prescribing as SELECT * FROM prescribing;ALTER TABLE prescribing ADD COLUMN std_rx_desc VARCHAR;ALTER TABLE prescribing ADD COLUMN std_frequency VARCHAR;'
create_dict_table_sql = 'CREATE TABLE rx_desc_dict as SELECT rx_desc,count(1) frequency FROM prescribing group by rx_desc order by frequency desc;ALTER TABLE rx_desc_dict ADD COLUMN std_rx_desc VARCHAR;CREATE TABLE frequency_dict as SELECT frequency,count(1) frequency FROM prescribing group by frequency order by frequency desc;ALTER TABLE frequency_dict ADD COLUMN std_frequency VARCHAR;'
update_sql = '''UPDATE prescribing SET std_rx_desc = rx_desc_dict.std_rx_desc FROM rx_desc_dict WHERE prescribing.rx_desc = rx_desc_dict.rx_desc AND rx_desc_dict.std_rx_desc IS NOT NULL; UPDATE prescribing SET std_frequency = frequency_dict.std_frequency FROM frequency_dict WHERE prescribing.frequency = frequency_dict.frequency AND frequency_dict.std_frequency IS NOT NULL;'''
stand_sql = '''UPDATE rx_desc_dict SET std_rx_desc = case when rx_desc ~ '(?i).*格列(本脲|吡嗪|喹酮|齐特|美脲|波脲).*|.*甲苯磺丁脲.*|.*氯磺丙脲.*|.*优降糖.*|.*达安疗.*|.*美吡达.*|.*瑞易宁.*|.*秦苏.*|.*迪沙.*|.*依吡达.*|.*优哒灵.*|.*元坦.*|.*麦林格.*|.*唐贝克.*|.*曼迪宝.*|.*美吡达.*|.*糖适平.*|.*捷适.*|.*达美康.*|.*弗莱因.*|.*弘旭阳.*|.*谐尔平.*|.*亚莫利.*|.*万苏平.*|.*佑苏.*|.*力贻苹.*|.*迪北.*|.*安多美.*|.*科德平.*|.*伊瑞.*|.*佳和洛.*|.*普仁平.*|.*克糖利.*' then '磺脲类' when rx_desc ~ '(?i).*(瑞|那|米)格列奈.*|.*诺和龙.*|.*弗来迪.*|.*唐力.*|.*唐瑞.*|.*贝加.*|.*快如妥.*' and rx_desc !~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*' then '格列奈类' when rx_desc ~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*' and rx_desc !~ '(?i).*吡嗪.*|.*吡格.*|.*本脲.*|.*注射.*|.*(西|沙|维|阿|利)格列汀.*|.*恩格列净.*|.*欧唐静.*' then '双胍类' when rx_desc ~ '(?i).*(罗|吡).*格列酮.*|.*文迪雅.*|.*奥洛华.*|.*爱能.*|.*太罗.*|.*维戈洛.*|.*宜力喜.*|.*圣敏.*|.*耐迪.*|.*安瑞宁.*|.*艾可拓.*|.*卡司平.*|.*顿灵.*|.*贝唐宁.*|.*佳普喜.*|.*安可妥.*|.*凯宝维元.*|.*艾汀.*|.*卡司平.*|.*瑞彤.*|.*列洛.*|.*夷友.*' and rx_desc !~ '(?i).*二甲双胍.*' then '噻唑烷二酮类' when rx_desc ~ '(?i).*(阿卡|伏格列)波糖.*|.*米格列醇.*|.*拜唐苹.*|.*卡博平.*|.*贝希.*|.*倍欣.*|.*华怡平.*|.*德赛天.*|.*米格尼醇.*|.*Glyset.*|.*奥恬苹.*|.*瑞舒.*' and rx_desc !~ '(?i).*他汀.*' then 'α-糖苷酶抑制剂类' when rx_desc ~ '(?i).*(西|沙|维|阿|利)格列汀.*' and rx_desc !~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*' then 'DPP4i' when rx_desc ~ '(?i).*(达|恩|卡)格列净.*|.*安达唐.*|.*欧唐静.*|.*怡可安.*' then 'SGLT2i' when (rx_desc ~ '(?i).*(西|沙|维|利)格列汀.*|.*恩格列净.*' and rx_desc ~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*') or rx_desc ~ '(?i).*欧双(宁|静).*|.*捷诺达.*|.*宜合瑞.*|.*安立格.*' then '复方制剂' when (rx_desc ~ '(?i).*胰岛素.*|.*(重和|万苏)林.*|.*甘舒霖.*|.*优泌(林|乐).*|.*NPH.*|.*艾倍得.*|.*糖德仕.*|.*来得时.*|.*优(思|乐)灵.*|.*(速|长)秀霖.*|.*诺和(锐|平|佳|达|灵).*' and rx_desc ~ '(?i).*精蛋白锌?重组人.*|.*低精蛋白重组人.*|.*低精蛋白锌.*|.*精蛋白生物合成人.*|.*甘精.*|.*地特.*|.*(徳|德)谷.*|.*(优泌林|重和林|甘舒霖|诺和灵).?N.*|.*诺和达.*|.*NPH.*|.*诺和平.*|.*来得时.*|.*长秀霖.*|.*优乐灵.*|.*糖德仕.*|.*中效.*|^精蛋白人胰岛素$') and rx_desc !~ '(?i).*注射器针头.*|.*注射针头.*|.*射器.*|.*针头.*|.*泵耗材.*|.*混合.*|.*30R.*|.*50R.*|.*70R.*|.*25R.*|.*预混.*|.*门冬.*|.*70\\/30.*|.*诺和灵R.*|^精蛋白锌重组人胰岛素注射液.*|.*\\(兴\\)精蛋白锌重组人胰岛素注射液.*|.*\\(N笔芯\\)精蛋白生物合成人胰岛素.*' then '基础胰岛素' when (rx_desc ~ '(?i).*胰岛素.*|.*(重和|万苏)林.*|.*甘舒霖.*|.*优泌(林|乐).*|.*NPH.*|.*艾倍得.*|.*糖德仕.*|.*来得时.*|.*优(思|乐)灵.*|.*(速|长)秀霖.*|.*诺和(锐|平|佳|达|灵).*' and rx_desc ~ '(?i).*25R.*|.*30R.*|.*30R.*|.*50R.*|.*30\\/70.*|.*预混.*|.*混(和|合).*|.*(甘舒霖|万苏林).?(30|40|50)R.*|.*诺和灵.?50R.*|.*优泌林.?70\\/30.*|.*重和林.?M30.*|.*优思灵.?(30\\/70).*|.*(优泌乐|诺和锐)(50|25|30).*|.*25.*|.*50.*|.*70.*|.*30注射液.*|.*胰岛素30.*') and rx_desc !~ '(?i).*注射器针头.*|.*注射针头.*|.*射器.*|.*针头.*|.*泵耗材.*|.*502181.*|.*甘精胰岛素.*' then '预混胰岛素' when (rx_desc ~ '(?i).*胰岛素.*|.*(重和|万苏)林.*|.*甘舒霖.*|.*优泌(林|乐).*|.*NPH.*|.*艾倍得.*|.*糖德仕.*|.*来得时.*|.*优(思|乐)灵.*|.*(速|长)秀霖.*|.*诺和(锐|平|佳|达|灵).*' and rx_desc ~ '(?i).*短效.*|.*生物合成人.*|.*精蛋白锌重组人.*|.*重组人.*|.*谷赖.*|.*赖脯.*|.*门冬.*') and rx_desc !~ '(?i).*注射器针头.*|.*注射针头.*|.*射器.*|.*针头.*|.*泵耗材.*|.*混(和|合).*|.*30R.*|.*50R.*|.*70R.*|.*25.*|.*预混.*|.*70\\/30.*|.*(胰岛素|优泌乐)(30|50).*|.*M30.*|.*诺和灵N.*|.*中效.*|.*甘精胰岛素.*|^(德|徳)谷胰岛素.*' then '餐时胰岛素' when rx_desc ~ '(?i).*(艾塞那|利司那|贝那鲁|利拉鲁|聚乙二醇洛塞那|司美格鲁|度拉糖)肽.*|.*百泌达.*|.*百达扬.*|.*利时敏.*|.*谊生泰.*|.*诺和力.*|.*弗来美.*|.*诺和泰.*|.*度易达.*' then 'GLP-1' when rx_desc ~ '(?i).*德谷门冬双胰岛素.*|.*诺和佳.*' then '双联(Dual)' when rx_desc ~ '(?i).*德谷胰岛素利拉鲁肽.*|.*甘精胰岛素利司那肽.*|.*诺合益.*|.*赛益宁.*' then 'Basal+GLP-1' else null end; UPDATE frequency_dict SET std_frequency = CASE WHEN frequency ~ '(?i).*qd(17|7|11|22|10|2)?.*|.*qn.*' THEN 'qd' WHEN frequency ~ '(?i).*bid.*|.*q12h.*' THEN 'bid' WHEN frequency ~ '(?i).*tid.*|.*q8h.*' THEN 'tid' WHEN frequency ~ '(?i).*qid.*|.*q6h.*' THEN 'qid' WHEN frequency ~ '(?i).*qod.*' THEN 'qod' WHEN frequency ~ '(?i).*qw.*' THEN 'qw' WHEN frequency ~ '(?i).*prn.*' THEN 'prn' WHEN frequency ~ '(?i).*st.*' THEN 'st' WHEN frequency ~ '(?i).*q4h.*' THEN 'q4h' WHEN frequency ~ '(?i).*q3h.*' THEN 'q3h' WHEN frequency ~ '(?i).*q2h.*' THEN 'q2h' WHEN frequency ~ '(?i).*biw.*' THEN 'biw' WHEN frequency ~ '(?i).*q1h.*' THEN 'q1h' WHEN frequency ~ '(?i).*q72h.*' THEN 'q72h' WHEN frequency ~ '(?i).*q7h.*' THEN 'q7h' ELSE NULL END;'''
create_dict_table_sql = 'CREATE TABLE rx_desc_dict as SELECT rx_desc,count(1) frequency FROM prescribing group by rx_desc order by frequency desc;ALTER TABLE rx_desc_dict ADD COLUMN std_rx_desc VARCHAR;CREATE TABLE frequency_dict as SELECT frequency,frequency_name,count(1) frequencys FROM prescribing group by frequency_name,frequency order by frequencys desc;ALTER TABLE frequency_dict ADD COLUMN std_frequency VARCHAR;'
update_sql = '''UPDATE prescribing SET std_rx_desc = rx_desc_dict.std_rx_desc FROM rx_desc_dict WHERE prescribing.rx_desc = rx_desc_dict.rx_desc AND rx_desc_dict.std_rx_desc IS NOT NULL; UPDATE prescribing SET std_frequency = frequency_dict.std_frequency FROM frequency_dict WHERE prescribing.frequency = frequency_dict.frequency AND prescribing.frequency_name = frequency_dict.frequency_name AND frequency_dict.std_frequency IS NOT NULL;'''
stand_sql = '''UPDATE rx_desc_dict SET std_rx_desc = case when rx_desc ~ '(?i).*格列(本脲|吡嗪|喹酮|齐特|美脲|波脲).*|.*甲苯磺丁脲.*|.*氯磺丙脲.*|.*优降糖.*|.*达安疗.*|.*美吡达.*|.*瑞易宁.*|.*秦苏.*|.*迪沙.*|.*依吡达.*|.*优哒灵.*|.*元坦.*|.*麦林格.*|.*唐贝克.*|.*曼迪宝.*|.*美吡达.*|.*糖适平.*|.*捷适.*|.*达美康.*|.*弗莱因.*|.*弘旭阳.*|.*谐尔平.*|.*亚莫利.*|.*万苏平.*|.*佑苏.*|.*力贻苹.*|.*迪北.*|.*安多美.*|.*科德平.*|.*伊瑞.*|.*佳和洛.*|.*普仁平.*|.*克糖利.*' then '磺脲类' when rx_desc ~ '(?i).*(瑞|那|米)格列奈.*|.*诺和龙.*|.*弗来迪.*|.*唐力.*|.*唐瑞.*|.*贝加.*|.*快如妥.*' and rx_desc !~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*' then '格列奈类' when rx_desc ~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*' and rx_desc !~ '(?i).*吡嗪.*|.*吡格.*|.*本脲.*|.*注射.*|.*(西|沙|维|阿|利)格列汀.*|.*恩格列净.*|.*欧唐静.*' then '双胍类' when rx_desc ~ '(?i).*(罗|吡).*格列酮.*|.*文迪雅.*|.*奥洛华.*|.*爱能.*|.*太罗.*|.*维戈洛.*|.*宜力喜.*|.*圣敏.*|.*耐迪.*|.*安瑞宁.*|.*艾可拓.*|.*卡司平.*|.*顿灵.*|.*贝唐宁.*|.*佳普喜.*|.*安可妥.*|.*凯宝维元.*|.*艾汀.*|.*卡司平.*|.*瑞彤.*|.*列洛.*|.*夷友.*' and rx_desc !~ '(?i).*二甲双胍.*' then '噻唑烷二酮类' when rx_desc ~ '(?i).*(阿卡|伏格列)波糖.*|.*米格列醇.*|.*拜唐苹.*|.*卡博平.*|.*贝希.*|.*倍欣.*|.*华怡平.*|.*德赛天.*|.*米格尼醇.*|.*Glyset.*|.*奥恬苹.*|.*瑞舒.*' and rx_desc !~ '(?i).*他汀.*' then 'α-糖苷酶抑制剂类' when rx_desc ~ '(?i).*(西|沙|维|阿|利)格列汀.*' and rx_desc !~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*' then 'DPP4i' when rx_desc ~ '(?i).*(达|恩|卡)格列净.*|.*安达唐.*|.*欧唐静.*|.*怡可安.*' then 'SGLT2i' when (rx_desc ~ '(?i).*(西|沙|维|利)格列汀.*|.*恩格列净.*' and rx_desc ~ '(?i).*二甲双胍.*|.*甲福明.*|.*格华止.*|.*奈达.*|.*泰白.*|.*至力.*|.*倍顺.*|.*麦克罗辛.*|.*麦特美.*|.*唐必呋.*|.*亿恒.*|.*仁欣.*|.*悦达宁.*|.*力乐尔.*|.*卜可.*|.*迪化唐锭.*|.*美迪康.*|.*君士达新.*|.*唐落.*|.*山姆士.*|.*君力达.*') or rx_desc ~ '(?i).*欧双(宁|静).*|.*捷诺达.*|.*宜合瑞.*|.*安立格.*' then '复方制剂' when (rx_desc ~ '(?i).*胰岛素.*|.*(重和|万苏)林.*|.*甘舒霖.*|.*优泌(林|乐).*|.*NPH.*|.*艾倍得.*|.*糖德仕.*|.*来得时.*|.*优(思|乐)灵.*|.*(速|长)秀霖.*|.*诺和(锐|平|佳|达|灵).*' and rx_desc ~ '(?i).*精蛋白锌?重组人.*|.*低精蛋白重组人.*|.*低精蛋白锌.*|.*精蛋白生物合成人.*|.*甘精.*|.*地特.*|.*(徳|德)谷.*|.*(优泌林|重和林|甘舒霖|诺和灵).?N.*|.*诺和达.*|.*NPH.*|.*诺和平.*|.*来得时.*|.*长秀霖.*|.*优乐灵.*|.*糖德仕.*|.*中效.*|^精蛋白人胰岛素$') and rx_desc !~ '(?i).*注射器针头.*|.*注射针头.*|.*射器.*|.*针头.*|.*泵耗材.*|.*混合.*|.*30R.*|.*50R.*|.*70R.*|.*25R.*|.*预混.*|.*门冬.*|.*70\\/30.*|.*诺和灵R.*|^精蛋白锌重组人胰岛素注射液.*|.*\\(兴\\)精蛋白锌重组人胰岛素注射液.*|.*\\(N笔芯\\)精蛋白生物合成人胰岛素.*' then '基础胰岛素' when (rx_desc ~ '(?i).*胰岛素.*|.*(重和|万苏)林.*|.*甘舒霖.*|.*优泌(林|乐).*|.*NPH.*|.*艾倍得.*|.*糖德仕.*|.*来得时.*|.*优(思|乐)灵.*|.*(速|长)秀霖.*|.*诺和(锐|平|佳|达|灵).*' and rx_desc ~ '(?i).*25R.*|.*30R.*|.*30R.*|.*50R.*|.*30\\/70.*|.*预混.*|.*混(和|合).*|.*(甘舒霖|万苏林).?(30|40|50)R.*|.*诺和灵.?50R.*|.*优泌林.?70\\/30.*|.*重和林.?M30.*|.*优思灵.?(30\\/70).*|.*(优泌乐|诺和锐)(50|25|30).*|.*25.*|.*50.*|.*70.*|.*30注射液.*|.*胰岛素30.*') and rx_desc !~ '(?i).*注射器针头.*|.*注射针头.*|.*射器.*|.*针头.*|.*泵耗材.*|.*502181.*|.*甘精胰岛素.*' then '预混胰岛素' when (rx_desc ~ '(?i).*胰岛素.*|.*(重和|万苏)林.*|.*甘舒霖.*|.*优泌(林|乐).*|.*NPH.*|.*艾倍得.*|.*糖德仕.*|.*来得时.*|.*优(思|乐)灵.*|.*(速|长)秀霖.*|.*诺和(锐|平|佳|达|灵).*' and rx_desc ~ '(?i).*短效.*|.*生物合成人.*|.*精蛋白锌重组人.*|.*重组人.*|.*谷赖.*|.*赖脯.*|.*门冬.*') and rx_desc !~ '(?i).*注射器针头.*|.*注射针头.*|.*射器.*|.*针头.*|.*泵耗材.*|.*混(和|合).*|.*30R.*|.*50R.*|.*70R.*|.*25.*|.*预混.*|.*70\\/30.*|.*(胰岛素|优泌乐)(30|50).*|.*M30.*|.*诺和灵N.*|.*中效.*|.*甘精胰岛素.*|^(德|徳)谷胰岛素.*' then '餐时胰岛素' when rx_desc ~ '(?i).*(艾塞那|利司那|贝那鲁|利拉鲁|聚乙二醇洛塞那|司美格鲁|度拉糖)肽.*|.*百泌达.*|.*百达扬.*|.*利时敏.*|.*谊生泰.*|.*诺和力.*|.*弗来美.*|.*诺和泰.*|.*度易达.*' then 'GLP-1' when rx_desc ~ '(?i).*德谷门冬双胰岛素.*|.*诺和佳.*' then '双联(Dual)' when rx_desc ~ '(?i).*德谷胰岛素利拉鲁肽.*|.*甘精胰岛素利司那肽.*|.*诺合益.*|.*赛益宁.*' then 'Basal+GLP-1' else null end; UPDATE frequency_dict SET std_frequency = CASE WHEN frequency ~ '(?i).*qd(17|7|11|22|10|2)?.*|.*qn.*' THEN 'qd' WHEN frequency ~ '(?i).*bid.*|.*q12h.*' THEN 'bid' WHEN frequency ~ '(?i).*tid.*|.*q8h.*' THEN 'tid' WHEN frequency ~ '(?i).*qid.*|.*q6h.*' THEN 'qid' WHEN frequency ~ '(?i).*qod.*' THEN 'qod' WHEN frequency ~ '(?i).*qw.*' THEN 'qw' WHEN frequency ~ '(?i).*prn.*' THEN 'prn' WHEN frequency ~ '(?i).*st.*' THEN 'st' WHEN frequency ~ '(?i).*q4h.*' THEN 'q4h' WHEN frequency ~ '(?i).*q3h.*' THEN 'q3h' WHEN frequency ~ '(?i).*q2h.*' THEN 'q2h' WHEN frequency ~ '(?i).*biw.*' THEN 'biw' WHEN frequency ~ '(?i).*q1h.*' THEN 'q1h' WHEN frequency ~ '(?i).*q72h.*' THEN 'q72h' WHEN frequency ~ '(?i).*q7h.*' THEN 'q7h' ELSE NULL END; UPDATE frequency_dict SET std_frequency = CASE WHEN frequency_name ~ '(?i).*ALWAYS.*' THEN 'always' WHEN frequency_name ~ '(?i).*BID.*' THEN 'bid' WHEN frequency_name ~ '(?i).*ONCE.*' THEN 'once' WHEN frequency_name ~ '(?i).*QD.*' THEN 'qd' WHEN frequency_name ~ '(?i).*QN.*' THEN 'qn' WHEN frequency_name ~ '(?i).*ST.*' THEN 'st' WHEN frequency_name ~ '(?i).*TID.*' THEN 'tid' WHEN frequency_name ~ '(?i).*ST.*' THEN 'st' WHEN frequency_name ~ '(?i).*ST.*' THEN 'st' WHEN frequency_name ~ '(?i).*ST.*' THEN 'st' ELSE NULL END where std_frequency is null;'''
[diagnosis]
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论