我有一个数据框,其中的列代表不同年龄的患者,而另一个数据框具有这些年龄的值。我想对数据进行子集处理,以便仅显示50岁以下的患者
> dat
GSM27015.26.M GSM27016.26.M GSM27018.29.M GSM27021.37.M GSM27023.40.M GSM27024.42.M
31307_at 179.86300 106.495000 265.58600 301.24300 218.50900 224.61000
31308_at 559.07800 411.483000 481.17600 570.73300 333.53900 370.07900
31309_r_at 20.76970 30.641500 50.21530 42.68920 27.10590 21.57620
31310_at 154.19100 224.446000 188.82300 177.86300 233.46300 120.90800
31311_at 956.79700 648.310000 933.65600 1016.41000 762.01300 1040.29000
以及具有患者年龄的注释文件
> ann
Gender Age
GSM27015 M 26
GSM27016 M 26
GSM27018 M 29
GSM27021 M 37
GSM27023 M 40
GSM27024 M 42
GSM27025 M 45
GSM27027 M 52
GSM27028 M 53
也许尝试
dat[as.numeric(gsub(".*?\\.(\\d+)\\..*","\\1",names(dat)))<50]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句