Координаты X и Y в R. Есть ли очевидный способ удалить данные, которые находятся на некотором расстоянии от заданной точки? - PullRequest
1 голос
/ 27 февраля 2020

Я пытаюсь очистить некоторые данные отслеживания глаз, в которых людям предлагается сфокусироваться на середине экрана. Тем не менее, данные немного зашумлены, и я пытаюсь их правильно очистить.

Я создал некоторый код , который имитирует тип данных, которые у меня есть, и методы, которые я использую. Я пытаюсь использовать, а также то, что я представляю ниже.

Данные с шумом выглядят следующим образом: enter image description here

Я пытался использовать простой формула для выброса всех сэмплов дальше, чем несколько пикселей от центра, например:

results[results$x <= xmid+threshold & results$x >= xmid-threshold,]

Но это приводит к тому, что данные имеют форму квадрата, а не круга: enter image description here

Я попытался подумать о том, что здесь делать, и дошел до того, чтобы определить круг, который охватывает интересующую меня область:

enter image description here

Однако я не вижу простого способа выбора данных только в этой области. Решения, которые я пробовал, требовали нескольких для циклов и все еще не дали мне результат, на который я надеялся.

Я надеюсь, что некоторые из вас могут указать мне в направление света здесь. Может быть, проблему даже тривиально решить каким-то образом, который я еще не рассмотрел? Спасибо, что прочитали это далеко, и вот код , если вы думаете, что можете помочь:)

1 Ответ

2 голосов
/ 27 февраля 2020

Чтобы проверить, находится ли точка в круговой области с радиусом threshold вокруг центра xmid, ymid, вы можете использовать выражение (^ обозначает 2-ю степень, квадрат)

 (x-xmid)^2 + (y-ymid)^2 <= threshold^2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...