r - 在 R 中,如何从数据集列表中提取某些行?
问题描述
> str(pc)
'data.frame': 562 obs. of 9 variables:
$ id : int 1 2 3 4 5 10 12 17 19 22 ...
$ gender : chr "M" "F" "M" "M" ...
$ birth_year: int 1973 1974 1937 1943 1958 1958 1940 1973 1971 1950 ...
$ type : chr "spontaneous SAH" "traumatic SAH" "spontaneous SAH" "traumatic SAH" ...
$ admit_year: int 2011 2011 2016 2012 2018 2017 2010 2018 2016 2018 ...
$ admit_date: chr "2011-06-22" "2011-12-19" "2016-12-06" "2012-10-28" ...
$ admitage : int 38 37 79 69 60 59 70 45 45 68 ...
$ death_date: chr NA NA NA "2012-10-28" ...
$ death_year: int NA NA NA 2012 NA NA NA NA 2016 NA ...
你好。我有一个看起来像这样的列表。“id”列表示患者 ID。但是因为有些患者多次入院,所以有相同 ID 的行。如何删除重复项并为每个 ID 保留一行?我试过这个
c <- unique(pc$id)
提取“id”数字,但我不知道下一步该做什么。我是初学者,所以如果您能用简单的代码向我解释一下,我将不胜感激!
编辑:我想制作一个包含患者初始入院日期的列表,以及另一个包含最终入院日期的列表?我怎样才能做到这一点?此列表按 ID 顺序排列,但如果一名患者多次入院,则日期不一定按时间顺序排列。我想知道如何通过使用 !duplicated 来实现这一点。
解决方案
像这样的东西应该可以工作:pc[!duplicated(pc$id),]
。默认情况下,它将保留第一次出现。
推荐阅读
- javascript - 为什么我们不能使用 push 方法来迭代 javascript 数组?
- tensorflow - 为什么 Keras preprocess_input() 将 RGB 切换为 BGR
- c++ - 如何在写入输出流时减少时间
- node.js - 节点保存返回 500
- mysql - laravel eloquen 函数 with() 从关系 2 表中仅获取 3 列
- python - 移动机器时 Django SQLITE3 BASE_DIR 不起作用
- java - java 正则表达式在特定值后获取值
- neo4j - neo4j 中如何恢复已删除的节点和关系
- javascript - 从gmail中提取线程中的所有消息到电子表格中
- express - 类型错误:res.set 不是函数