【发布时间】:2020-04-06 06:30:49
【问题描述】:
使用我的数据集中的这段代码,我能够为每个 PatientId 分离出每个特定的 ICD10Code:
data.code<-data.1 %>% group_by(ICD10Code,PatientId) %>%
summarise(ReferralSource=first(ReferralSource),
NextAppt=first(NextAppt), Age=max(Age),
InsuranceName=toString(unique(InsuranceName)))
ICD10Code PatientId ReferralSource NextAppt Age InsuranceName
<fct> <fct> <fct> <fct> <int> <chr>
1 "" 397 Piedmont Hospit… N 51 SLIDING FEE SCHEDU…
2 "" 1770 St Francis N 42 SLIDING FEE SCHEDU…
3 "" 9787 St Francis Y 55 *SELF PAY*, SLIDIN…
4 "" 18872 Piedmont Hospit… Y 50 SLIDING FEE SCHEDU…
5 "" 20172 St Francis Y 55 Medicaid-GA (Medic…
6 A084 1856 Piedmont Hospit… N 35 *SELF PAY*, SLIDIN…
7 A609 10937 Piedmont Hospit… Y 31 SLIDING FEE SCHEDU…
8 A749 18705 St Francis N 38 SLIDING FEE SCHEDU…
9 B001 19100 St Francis N 37 SLIDING FEE SCHEDU…
10 B079 19076 St Francis N 47 Medicaid-GA (Medic…
11 B182 9690 St Francis N 49 *SELF PAY*, SLIDIN…
12 B20 18990 St Francis N 53 Medicaid-GA (Medic…
13 B349 20235 Piedmont Hospit… N 35 SLIDING FEE SCHEDU…
14 B351 4781 St Francis N 36 BCBS-GA
15 B351 7466 St Francis Y 47 SLIDING FEE SCHEDU…
16 B351 18820 Piedmont Hospit… Y 25 BCBS-GA
17 B353 18990 St Francis N 53 Medicaid-GA (Medic…
18 B370 397 Piedmont Hospit… N 51 SLIDING FEE SCHEDU…
19 B370 19112 St Francis Y 0 *SELF PAY*, CareSo…
20 B370 20291 St Francis Y 0 BCBS-GA (POS), SLI…
我现在需要做的,但不知道如何,是循环遍历ICD10Code 列,并从Age 列计算每个唯一 ICD10 代码的平均年龄,同时保留重复项。
例如从上面的数据来看,ICD10CodeB351 出现了 3 次,每个 B351 对应的年龄是 36、47、25。我想从该值的年龄计算平均值。我认为我需要一个 for 循环,并且需要创建一个由 Code 和平均年龄组成的新数据框。我该怎么做呢?
【问题讨论】:
-
该问题是每个现有问题的副本,用于查找 groupby-summarize/mutate。 您的困惑仅仅是关于 summarise 与 mutate 之间的区别。 (当您说“我不需要删除任何重复项”时,您的意思是说“必须保留重复项”)
-
重复:有401 existing questions on [r] summarize mutate is:question。其中一些解释了 mutate 与 summarise 之间的区别。
-
感谢您花时间提供编辑和解释。很抱歉造成混乱。