Я помічаю, що ви згадали функцію %like%
у своєму поточному підході. Я не знаю, чи це посилання на %like%
з "data.table", але якщо це так, ви можете точно використовувати його наступним чином.
Зверніть увагу, що об’єктом не повинно бути a data.table
(але також пам’ятайте, що підходи для підмножини для data.frame
s та data.table
s не ідентичні):
library(data.table)
mtcars[rownames(mtcars) %like% "Merc", ]
iris[iris$Species %like% "osa", ]
Якщо це саме те, що у вас було, то, можливо, ви щойно змішали позиції рядків і стовпців для піднабору даних.
Якщо ви не хочете завантажувати пакет, спробуйте скористатися grep()
пошуком рядка, який вам відповідає. Ось приклад із mtcars
набором даних, де ми співпадаємо з усіма рядками, де імена рядків містять "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
І, ще один приклад, за допомогою iris
набору даних, який шукає рядок 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
Для вирішення проблеми спробуйте:
selectedRows <- conservedData[grep("hsa-", conservedData$miRNA), ]
dput(head(conservedData))
.