通过R中匹配的第三个字符串/因数绘制数据

Rowley058

我有一个R中的数据框,包含LOS,AGE和多个更广泛的条件

LOS    AGE     broader.condition
  1     75                Spinal
  2     68               Urology
  1     88              Thoracic
  8     76                Spinal
  5     70               Billary
 ...   ...                   ...

我想针对每个较宽泛的条件绘制AGE与LOS,即在r中具有匹配的第三列条件的AGE与LOS。这可以通过名称指定(即,如果需要,可以专门查看某个特定的更广泛的条件),也可以自动运行以遍历整个数据集并自动绘制每个更广泛的条件

任何建议,将不胜感激,谢谢!

以下可重现的类似数据集

data <- structure(list(LOS = c(1, 2, 1, 8, 5, 1, 1, 1, 3, 1, 1, 1), ADMISSION_AGE_YEARS = c(75, 68, 88, 76, 70, 28, 47, 57, 74, 68, 51, 67), broader.condition = structure(c(47L, 56L, 51L, 47L, 51L, 6L, 3L, 11L, 51L, 3L, 11L, 6L), .Label = c("Acute Liver Failure", "Aortic Disease", "Arthritis and Lim Deformity/Fractures", "Asphyxiation", "Billary", "Bowel Infection/Perforation/Infarction", "Breast Cancer", "Cancer (Unoperated)", "Cardiac Arrest", "Cardiac Arythmia", "Cerebral Aneurysm (Non-Ruptured)", "Cerebral Infarction", "Cerebral Oedema", "Chronic Liver Disease", "COPD/Asthma/Respiratory Failure", "Drug Overdose and Poisoning", "Ear/Nose/Throat", "Electrolyte", "Encephalitis", "Endocrine", "Epilepsy", "Gastroectomy", "Gynaecological Cancer/Surgery", "Heart Failure", "Hydrocephalus", "Hyperventilation Syndromes", "Infection incl. unspecified", "Influenza", "Interstitial Pulmonary Disease", "Large Bowel Cancer", "Max Fax Surgeries", "Meningitis", "Myocardial Infarction", "Neuro-Surgical Cancer", "Obesity", "Other Inter-Cerebral Haemmorhage", "Pancreatitis", "Perforation of Oesophagus", "Peripheral Vascular Disease (Inlc. Ischaemia and Infarction", "Pleural Effusion", "Pneumonia", "Psychiatric", "Pulmonary/Veno-Thrombo Embollism", "Skin Inflammation/Infection", "Skull and Facial Fractures", "Spinal Chord Weakness", "Spinal Surgery/Fractures", "Spinal Trauma", "Sub-Arachnoid Haemmorhage", "Systemic Weakness", "Thoracic/Abdominal Aortic Aneurysm (Non-Ruptured)", "Thoracic/Abdominal Aortic Aneurysm (Ruptured incl. injury)", "Trauma to Intra-Abdominal Organs/Vessels", "Trauma to Thoracic Cage", "Traumatic Inter-Cerebral Haemmorhage/Contusions/Oedema", "Urology/Renal Surgery" ), class = "factor")), .Names = c("LOS", "ADMISSION_AGE_YEARS", "broader.condition"), row.names = c(4L, 5L, 14L, 16L, 17L, 18L, 19L, 31L, 33L, 38L, 39L, 40L), class = "data.frame")

`

凯西

如果我正确理解了您的问题,我认为filterdplyr软件包中使用是一个不错的选择。

确定第三列的唯一值:

levs <- unique(data$broader.condition)

过滤特定条件的数据并绘制:

  require(dplyr)
  fdata <- filter(data, broader.condition == levs[1])
  plot(fdata$LOS, fdata$ADMISSION_AGE_YEARS, 
       pch=19, xlab= 'LOS', ylab= 'AGE', main= paste0(levs[1]))

或循环运行以在单独的图中绘制所有条件:

for (i in 1:length(levs))
{
  temp <- filter(data, broader.condition == levs[i])
  plot(temp$LOS, temp$ADMISSION_AGE_YEARS, 
       pch=19, xlab= 'LOS', ylab= 'AGE', main= paste0(levs[i]))
}

另外,您可以轻松地ggplot2在同一图上用不同的颜色绘制所有条件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何打印字符串的每个第三个字符?java的

第三个参数Java8减少Object中的字符串属性

awk-连接两个字符串变量并分配给第三个

如何比较两个字符串数组并找到公共字符串数组的索引号并将其应用于第三个字符串数组?

如何检查子字符串是否可以在两个字符串中找到但不能在第三个字符串中找到?

R:通过第三个字符串变量将参数名称以点(...)传递

匹配包含第三个字符串的两个字符串之间的所有内容

如何连接两个字符串并保存在C中的第三个变量中?

如何删除R中字符串/子字符串中第三个冒号之后的所有数据?

比较字符串的第一个和第三个字符

确定字符串中的第三个数字在R中是否为0

R-比较两个字符串变量,并根据比较结果得出第三个变量

如何重新定位每行的第三个字符串以从同一行的第n个字符开始

如果在这两个字符串之间还存在第三个字符串,则提取两个字符串之间的文本-Pyspark

numpy-numpy.r _ ['string integer',array]的第三个字符串整数的说明

用一个字符串替换第二个和第三个字符串

如何将两个字符串连接成第三个字符串而不进行复制?

如何在字符串中查找第三个“ _”的位置-JavaScript

使用PHP从字符串中的第三个单词开始进行匹配

在delphi中替换字符串中每个第三个字符的最佳方法

从Java中的第三个字符开始对字符串进行排序

Python:如何找到与字符串中前三个字符匹配的目录?

正则表达式匹配第三个字符

查找出现在另一个字符串之后且在下一次出现第三个字符串之前的字符串

正则表达式匹配与某个字符串耦合但不包含第三个字符串的任何字符串

字符串的正则表达式 - 长度为 9,第三个字符的字母和剩余的数字

从日志文件中拉出两个字符串之间的行,中间有第三个字符串

更改形状标记取决于 matplotlib 中的第三个字符串变量

在给定的两个字符串的帮助下构造第三个字符串