Допустим, у меня есть следующие data.frames и список
# data frames
df1 = data.frame(y1 = c(1:5), y2 = c(8:12))
df2 = data.frame(y1 = c(5:8), y2 = c(9:12))
df3 = data.frame(y1 = c(5:8), y2 = c(9:12))
df4 = data.frame(y1 = c(11:15), y2 = c(16:20))
# list of data.frames
my.list <- list(df1, df2, df3, df4)
Я хочу найти позицию df1
в списке, и я попробовал это, но получил NA
. Я также попытался ==
, но получил ошибку.
match(df1, my.list)
# [1] NA NA
Но когда я это делаю, я получаю результаты
list14 = my.list[c(1,4)]
match(list14, my.list)
# [1] 1 4
Я полагаю, что в списке есть что-то, что можно сделать []
против [[]]
. В конечном итоге я хочу сделать что-то вроде
for (i in list14) {
cbind(list14, "indexPositionOf_list14_in_my.list")
}
где indexPositionOf_list14_in_my.list
- индексная позиция соответствующего элемента данных. list14
в my.list
.
Ожидаемый результат от for
loop
[[1]]
y1 y2 id
1 1 8 1
2 2 9 1
3 3 10 1
4 4 11 1
5 5 12 1
[[2]]
y1 y2 id
1 11 16 4
2 12 17 4
3 13 18 4
4 14 19 4
5 15 20 4