在R ...
我想对数据框A进行子集化:
taxa X16_K005A.S1.L1 X16_K007A.S1.L1 X16_K008A.S1.L1
fish 0 2 4
dog 9 0 10
基于数据框B中的部分字符串
K005A
K008A
获取仅具有第一行和具有部分字符串的行的数据框:
taxa X16_K005A.S1.L1 X16_K008A.S1.L1
fish 0 4
dog 9 10
我尝试了grepl,%in%并没有运气地分裂了
答案 0 :(得分:0)
这里有可能使用grep
dfA[, sapply(dfB[, 1], grep, colnames(dfA))]
# X16_K005A.S1.L1 X16_K008A.S1.L1
#1 0 4
#2 9 10
dfA <- read.table(text =
"taxa X16_K005A.S1.L1 X16_K007A.S1.L1 X16_K008A.S1.L1
fish 0 2 4
dog 9 0 10 ", header = T)
dfB <- read.table(text =
"K005A
K008A")