Есть ли набор R-функций, аналогичных intersect
, union
и т. Д., Которые действуют на векторы координат? Возьмем две коллекции локаций в N измерениях, каждая из которых может быть рассмотрена как N-строка по массиву M-location и найти общие местоположения (например, столбцы) и т. Д. Я предполагаю, что это можно сделать с помощью пары *apply
строк, чтобы сравнить каждый столбец в одном массиве с столбцами другого, но надеялся на что-то более быстрое или аккуратное.Как выполнить пересечение, объединение и т. Д. На упорядоченных парах?
ответ
Существует пакет «устанавливает», но самое простое решение было бы использовать базовый набор операций: union
,, intersect
и setdiff
по результатам paste
с сепаратором, такого как "_"
. Если они представлены как «числовые» значения, которые вы, возможно, потребуется сделать decsions о том, что на самом деле означает „равенство“ и что некоторые round
-ную или trunc
-cation могут быть необходимы.
Другая мысль, что реализация может быть более самостоятельной -documenting в расположении столбцов вы охарактеризовали использовать функцию «plyr»:. colwise
Я не преданный пользователя методов plyr, но это, как представляется, как он может начать:
colpastefn <- colwise(function(...){paste(... , sep="_"))
Хотя описание функция предполагает, что она должна работать как отдельная функция на кадре данных, все проиллюстрированные варианты использования: ddply
.
- 1. Общий класс операций, например, пересечение, объединение, минус и т. Д.
- 2. Пересечение двух упорядоченных списков
- 3. Как выполнить объединение или пересечение на массив массивов с Underscore.js
- 4. Быстрое объединение и пересечение в .net
- 5. Объединение двух столбцов из таблицы sys.database и т. Д.
- 6. Как реализовать пересечение и объединение в mysql?
- 7. Range пересечение/объединение
- 8. Kubernetes на TLS protected и т. Д.
- 9. Delphi 7 - выполнить операцию, если (var) = 1,3,5,7 и т. Д.
- 10. Are + =, | =, & = и т. Д. Атомный?
- 11. Причал и т. Д. На ubuntu 12.10
- 12. ошибки R.Java и т. Д.
- 13. MKNetworkKit/NSURLConnection и т. Д.
- 14. База данных - рейтинг, комментарии и т. Д. На нескольких объектах (блог, статус, фотография и т. Д.)
- 15. Generics, ToArray и т. Д.
- 16. Notepad ++ indentations и т. Д.
- 17. Больше путей и т. Д.
- 18. Как эффективно выполнить пересечение выбора и объединения?
- 19. Интерфейс/шаблон и т. Д.
- 20. TextWatchers, OnClickListeners и т. Д.
- 21. Как выполнить асинхронные операции (т. Е. Возвращение Будущего) из карты/фильтра/и т. Д.?
- 22. Идентификационные ошибки и т. Д.
- 23. Golang и т. Д. Panic
- 24. Объединение UIDocumentInteractionController с UIActivityController для обмена на Instagram, Facebook, на почту, сообщение и т. Д.
- 25. Эффективное пересечение и объединение списков строк
- 26. Как изменить отступ и т. Д. Кода?
- 27. Объединение и пересечение массивов в Django
- 28. 000000001 и т. Д. Как уникальный ID
- 29. Java SOAP Server, который может быть развернут в Tomcat, JBoss, Geronimo и т. Д. И т. Д. И т. Д.
- 30. События, правила и т. Д.
Работы для меня. Я, конечно же, согласен с тем, что умный экспериментатор :-) хотел бы «урезать» свои ценности, прежде чем решать, какие места были идентичны. Я проверю этот ответ, если кто-то не придумает что-то впечатляющее в ближайшем будущем. –