I have a logical vector with only one TRUE value in it
> summary(no_in_gos)
Mode FALSE TRUE
logical 5891 1
When I use it to subset a dataframe, it returns multiple rows, which I don't understand. I'm only expecting one row, given that there is only one TRUE
element in the logical vector:
> gos2[no_in_gos,]
ensembl_gene_id go_id
24 YDL245C GO:0005355
5916 YBR015C GO:0000026
11808 YPR182W GO:0046540
17700 YJR090C GO:0005634
23592 YFL034C-B GO:0007163
...
...
I'm really sure that my logical vector has only one TRUE
element:
> sum(no_in_gos)
[1] 1
> which(no_in_gos == 'TRUE')
[1] 24
What can be some of the reasons that explain this behavior?