在R这里做一些生物信息学,我对此非常陌生.

在我的dataset中,每个患者有两个数据条目.然而,仅记录了其中一个条目的患者特征.要进行我想进行的下游分析,我需要将特征复制到相应的条目中.我不能假设相应的条目总是下面的行,因为有些患者没有第二个数据点或有更多重复.

dput(head(patient.info))

structure(list(Study_ID = c(104, 104, 108, 108, 114, 114), Group = c("BS", 
NA, "BS", NA, "BS", NA), Group2 = c("MO", NA, "MO", NA, "MO", 
NA), Age = c(50.5, NA, 33.5, NA, 51.7, NA), Sex = c("F", NA, 
"F", NA, "F", NA), Sex2 = c(2L, NA, 2L, NA, 2L, NA), Ethnicity = c("A", 
NA, "D", NA, "C", NA), Eth2 = c("EW", NA, "AF M", NA, "EW", NA
)), row.names = c(35L, 36L, 40L, 41L, 49L, 50L), class = "data.frame")

`

我可以以某种方式使用与患者对应的Study_ID?

谢谢

说实话,我不知道该怎么做

推荐答案

一种方法是使用具有所需填充方向的fill.

library(dplyr)
library(tidyr)

patient.info %>% 
  group_by(Study_ID) %>% 
  fill(everything(), .direction="downup") %>% 
  ungroup()
# A tibble: 6 × 8
  Study_ID Group Group2   Age Sex    Sex2 Ethnicity Eth2 
     <dbl> <chr> <chr>  <dbl> <chr> <int> <chr>     <chr>
1      104 BS    MO      50.5 F         2 A         EW   
2      104 BS    MO      50.5 F         2 A         EW   
3      108 BS    MO      33.5 F         2 D         AF M 
4      108 BS    MO      33.5 F         2 D         AF M 
5      114 BS    MO      51.7 F         2 C         EW   
6      114 BS    MO      51.7 F         2 C         EW 

R相关问答推荐

给定R中另一行中的值,如何插补缺失值

使用scale_x_continuous复制ggplot 2中的离散x轴

使用预定值列表将模拟数量(n)替换为rnorm()

从嵌套列表中智能提取线性模型系数

如何对数据集进行逆向工程?

如何在xyplot中 for each 面板打印R^2

将文件保存到新文件夹时,切换r设置以不必创建目录

使用Facet_WRAP时更改框图中线的 colored颜色

使用rvest从多个页面抓取时避免404错误

R-按最接近午夜的时间进行筛选

R -在先前group_by级别汇总时获取最大大小子组的计数

汇总数据的Sheffe检验的P值(平均值和标准差)

如何根据R中其他变量的类别汇总值?

根据纬度和距离连接两个数据集

如何移除GGPlot中超出与面相交的任何格网像元

如何从嵌套数据中自动创建命名对象?在R中

注释不会绘制在所有ggplot2面上

GOGPLATE geom_boxploy色彩疯狂

对一个数据帧中另一个数据帧中的值进行计数

删除r中每个因素级别的最后2行