Фрейм данных (df1) имеет столбец с интересующей переменной (V1), некоторые из этих значений в этом столбце соответствуют именам столбцов в другом фрейме данных (df2).
Мне нужно найти перекрытиемежду значениями (строками) этого столбца в df1 и всеми столбцами в df2.
head(df1)
V1 CHR MAPINFO Pval
a 2 38067017 0.27
c 2 38070880 0.29
d 2 38073394 0.00
e 2 38073443 0.00
f 2 38073564 0.01
head(df2)
a b c d f
-0.09 -0.08 -0.50 0.50 0.35
0.00 0.00 0.40 -0.40 -0.85
0.32 0.30 0.20 0.74 0.42
-0.41 -0.52 -0.72 -0.90 -0.96
1.30 1.30 1.10 1.10 1.20
-1.12 -1.78 -1.40 1.40 1.20
Например, в df2 нет «e», а в df1 нет «b».Как я могу сохранить только те, которые присутствуют как в df1 $ V1, так и во всех столбцах df2?
В конце мне нужно пересечь оба кадра данных (значения присутствуют только в обоих).
head(df1)
V1 CHR MAPINFO Pval
a 2 38067017 0.27
c 2 38070880 0.29
d 2 38073394 0.00
f 2 38073564 0.01
head(df2)
a c d f
-0.09 -0.50 0.50 0.35
0.00 0.40 -0.40 -0.85
0.32 0.20 0.74 0.42
-0.41 -0.72 -0.90 -0.96
1.30 1.10 1.10 1.20
-1.12 -1.40 1.40 1.20
Поскольку действительное число этих столбцов составляет> ~ 1200, я не могу фильтровать один за другим.
Есть ли другой элегантный способ, кроме транспонирования?