我有一个名称列表,以及一个包含许多不同列的data.frame。如何在数据框中检索其row.name是列表中的名称之一的行?
例如,如果我的数据框中的row.names有很多行,包括TC09001536.hg.1
,TC03002852.hg.1
和TC18000664.hg.1
名称,这些名称保存在名为Top.list
的列表中。
假设我的数据框被称为df,那么我尝试了:
test <- df[grep(Top.list, df$cluster_id),]
在cluster_id
列中查看,如果匹配列表中的名称,则给我整行。
答案 0 :(得分:0)
这应该有效:
<?php echo '<script>$(function() {
$("#btnExistReceiver").click(function() {
$("#receiverForm").css("display", "block");
$(this).html("<i class=\'fa fa-user\'></i>'.__( ' Existing R ').'");
});
});</script>';
?>
test <- df[unlist(lapply(Top.list, function(x) grep(x, df$cluster_id, fixed = TRUE))),]
部分生成一个列表,其中包含每个单词的匹配行号的向量,lapply(Top.list, function(x) grep(x, df$cluster_id, fixed = TRUE))
将向量组合到一个向量中,数据帧将从该向量进行子集化。