I want to remove a part of the rownames in my data frame. I want to remove everything that do not match the string that is defined in the grepl below and replace it with the string defined behind. Does anyone know?
df[grepl(".*lncRNA.*|.*snRNA.*|.*snoRNA.*|.*precursor_RNA.*", rownames(df))] <- c("lncRNA","snRNA","snoRNA","precursor_RNA")
head(rownames(df))
[3208] "URS000075AF9C-snoRNA_GTATGTGTGGACAGCACTGAGACTGAGTCT"                
[3209] "URS000075B029-snRNA_AACTCTGAGTCTTAAGCTAATTTTTTGAGGCCTTGTTCCGACA"    
[3210] "URS000075B029-snRNA_ATTTCCGTGGAGAGGAACAACTCTGAGTCTTAAGCTAATTT"      
[3211] "URS000075B0E3-lncRNA_GTAAGGGGCAGTAAG"                               
[3212] "URS000075B261-precursor_RNA_CTTTCTATGCTCCTGTTCTGC"                  
[3213] "URS000075B2ED-lncRNA_CACTCAGGACCCACC"
out
[3208] "snoRNA"                
[3209] "snRNA"    
[3210] "snRNA"      
[3211] "lncRNA"                               
[3212] "precursor_RNA"                  
[3213] "lncRNA" 
 
     
     
    