我有一个向量x ,其中包含数据帧y 的索引,方法如下:
x [1]是第1行数据框的列索引:值37
x [2]是第2行数据框的列索引:值110
等...
> x
[1] 13 5 13 1 13
> y
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
[1,] 40 49 118 56 110 56 51 47 33 226 33 38 37 41 31 31 31 24 21
[2,] 50 49 118 50 110 51 51 47 32 226 33 35 37 38 31 29 28 27 21
[3,] 50 49 118 50 116 51 42 37 32 224 33 34 35 38 31 26 31 26 22
[4,] 50 53 127 56 116 51 47 47 32 226 35 38 37 41 32 29 32 29 27
[5,] 50 53 127 56 116 56 47 47 36 238 40 42 42 45 38 33 36 30 32
我试图从我的数据框中提取所有相应的值并将其放入一个向量中(参见下面的预期输出)。
我可以通过两个for循环很容易地做到这一点,但真正的数据帧要大得多,并且循环会花费很长时间(!),所以我试图通过 apply() - family 。有人能指出我正确的方向吗?
预期输出,是包含以下内容的向量:
> z
[1] 37 110 35 50 42
这里的数据是dput:
#Dataframe y
y <- structure(c(40L, 50L, 50L, 50L, 50L, 49L, 49L, 49L, 53L, 53L,
118L, 118L, 118L, 127L, 127L, 56L, 50L, 50L, 56L, 56L, 110L,
110L, 116L, 116L, 116L, 56L, 51L, 51L, 51L, 56L, 51L, 51L, 42L,
47L, 47L, 47L, 47L, 37L, 47L, 47L, 33L, 32L, 32L, 32L, 36L, 226L,
226L, 224L, 226L, 238L, 33L, 33L, 33L, 35L, 40L, 38L, 35L, 34L,
38L, 42L, 37L, 37L, 35L, 37L, 42L, 41L, 38L, 38L, 41L, 45L, 31L,
31L, 31L, 32L, 38L, 31L, 29L, 26L, 29L, 33L, 31L, 28L, 31L, 32L,
36L, 24L, 27L, 26L, 29L, 30L, 21L, 21L, 22L, 27L, 32L), .Dim = c(5L,
19L), .Dimnames = list(NULL, c("1", "2", "3", "4", "5", "6",
"7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17",
"18", "19")))
#Vector x
x <- c(13, 5, 13, 1, 13)