У меня есть два объекта data.frame 'x' и 'ans1', есть 500 столбцов в 'x' и 7 в 'ans1' Как найти имена столбцов из 'x ', которые равны столбцам из' ans1 '?Найти равные столбцы в data.frames
2
A
ответ
1
С %in%
:
names(x) %in% names(ans1)
См ?match
более подробно.
2
можно было бы использовать identical()
с digest
пакета:
library(digest)
x <- data.frame(aa = c("s", "d", "f"), bb = 1:3)
ans1 <- data.frame(bb = c("d", "s", "z"), cc = 1:3)
(myMatches<-lapply(x, function(myX) sapply(ans1,
function(y) identical(digest(y), digest(myX))))
)
# $aa
# bb cc
# FALSE FALSE
# $bb
# bb cc
# FALSE TRUE
Это указывает, что данные в столбце bb
в data.frame x
равно данных в столбце cc
в data.frame ans1
.
Чтобы получить только спички,
unlist(lapply(myMatches, function(x) which(x)))
# bb.cc
# 2
Опять же, данные в колонке bb
от x
идентичны данным в столбце cc
в ans1
1
Как об этом:
mtcarsSub <- mtcars[c(1,4,7)]
names(mtcarsSub) <- letters[1:3]
matches <- sapply(mtcarsSub,function(x) sapply(mtcars,identical,x))
matches
a b c
mpg TRUE FALSE FALSE
cyl FALSE FALSE FALSE
disp FALSE FALSE FALSE
hp FALSE TRUE FALSE
drat FALSE FALSE FALSE
wt FALSE FALSE FALSE
qsec FALSE FALSE TRUE
vs FALSE FALSE FALSE
am FALSE FALSE FALSE
gear FALSE FALSE FALSE
carb FALSE FALSE FALSE
names(mtcars)[apply(matches,2,which)]
[1] "mpg" "hp" "qsec"
Смежные вопросы
- 1. Равные столбцы в PHP
- 2. CSS равные столбцы
- 3. выбирая столбцы, равные поля в панд dataframe
- 4. Назначить имена столбцов data.frames в списке data.frames для других (пространственных) data.frames в списке data.frames в R
- 5. Подмножество списка data.frames и возвращаемого списка data.frames
- 6. Инициализация data.frames()
- 7. jQuery равные столбцы меняются по строкам
- 8. Разделение массива на 3 равные столбцы
- 9. разделить список data.frames в подсписков из data.frames
- 10. Найти равные значения в массиве объектов
- 11. Найти числа, равные сумме в массиве
- 12. Как найти равные значения в нескольких массивах?
- 13. , чтобы установить равные высоты в столбцы в Bootstrap - нет Таблица
- 14. Индексирующий список data.frames - как получить все x-ые столбцы?
- 15. Найти столбцы в диапазоне
- 16. Выберите строки, которые имеют столбцы равные значения в Laravel 5,2
- 17. Динамически изменяет размер объектов в равные столбцы с помощью css
- 18. 9 равные столбцы внутри класса колонной жидкости в Twitter Bootstrap
- 19. R: Найти похожие столбцы матрицы
- 20. Манипулирование data.frames
- 21. Data.Frames в Python Numpy
- 22. Соответствие data.frames в R
- 23. Удалить конкретные дублированные наблюдения в data.frames из списка data.frames
- 24. Data.frames в R: имя автозаполнения?
- 25. Найти равные записи двойной записи postgresql
- 26. Запрос на спящий режим: найти равные объекты
- 27. Найти элементы массива, равные заданной сумме
- 28. пробегаем по data.frames
- 29. Разделить и сохранить в новых data.frames
- 30. SQL join не равным условием, возвращающим некоторые равные столбцы
спасибо, я сделал так, что (x% in% ans1) –
вы можете использовать intersect (который является wr apper по совпадению) –
@ Давид, к сожалению, ваша модификация этого решения не учитывает другие значения в столбцах. Если заказ важен, пожалуйста, передумайте с помощью этого решения. – BenBarnes