Saya perhatikan bahwa Anda menyebutkan suatu fungsi %like%
dalam pendekatan Anda saat ini. Saya tidak tahu apakah itu referensi ke %like%
dari "data.table", tetapi jika ya, Anda pasti dapat menggunakannya sebagai berikut.
Perhatikan bahwa objek tidak harus a data.table
(tetapi juga ingat bahwa pendekatan subset untuk data.frame
s dan data.table
s tidak identik):
library(data.table)
mtcars[rownames(mtcars) %like% "Merc", ]
iris[iris$Species %like% "osa", ]
Jika itu yang Anda miliki, maka mungkin Anda baru saja mencampur posisi baris dan kolom untuk subset data.
Jika Anda tidak ingin memuat paket, Anda dapat mencoba menggunakan grep()
untuk mencari string yang Anda cocokkan. Berikut adalah contoh dengan mtcars
kumpulan data, di mana kami mencocokkan semua baris yang nama barisnya menyertakan "Merc":
mtcars[grep("Merc", rownames(mtcars)), ]
mpg cyl disp hp drat wt qsec vs am gear carb
# Merc 240D 24.4 4 146.7 62 3.69 3.19 20.0 1 0 4 2
# Merc 230 22.8 4 140.8 95 3.92 3.15 22.9 1 0 4 2
# Merc 280 19.2 6 167.6 123 3.92 3.44 18.3 1 0 4 4
# Merc 280C 17.8 6 167.6 123 3.92 3.44 18.9 1 0 4 4
# Merc 450SE 16.4 8 275.8 180 3.07 4.07 17.4 0 0 3 3
# Merc 450SL 17.3 8 275.8 180 3.07 3.73 17.6 0 0 3 3
# Merc 450SLC 15.2 8 275.8 180 3.07 3.78 18.0 0 0 3 3
Dan, contoh lain, menggunakan iris
dataset untuk mencari string osa
:
irisSubset <- iris[grep("osa", iris$Species), ]
head(irisSubset)
# Sepal.Length Sepal.Width Petal.Length Petal.Width Species
# 1 5.1 3.5 1.4 0.2 setosa
# 2 4.9 3.0 1.4 0.2 setosa
# 3 4.7 3.2 1.3 0.2 setosa
# 4 4.6 3.1 1.5 0.2 setosa
# 5 5.0 3.6 1.4 0.2 setosa
# 6 5.4 3.9 1.7 0.4 setosa
Untuk masalah Anda, coba:
selectedRows <- conservedData[grep("hsa-", conservedData$miRNA), ]
dput(head(conservedData))
.