Я очень новичок в программировании, поэтому заранее извиняюсь за недостаток ноу-хау R. Я студент PhD, заинтересованный в ученической деятельности, и я только что записал ответ ученика, выполняющий слушание, в двух условиях (Easy and Hard). Период отклика ученика на участие в каждом испытании составляет около 20 секунд, и я хотел бы иметь возможность отображать эти данные для каждого участника на R. Частота дискретизации для зрителей составляет 1000 Гц, и каждый участник завершил 92 испытания. Таким образом, данные, которые у меня есть для каждого участника, составляют около 2 миллионов строк. Я попытался построить это с помощью ggplot2, но, как и ожидалось, график очень загроможден.Уменьшение данных в фрейме данных для построения данных в R
Я пытался разработать способ уменьшения данных, чтобы я мог нанести его на R. В идеале я хотел бы принять среднее значение размера зрачка для каждых 1000 выборок (т.е. 1 секунду записи) усредненный по всем 92 испытаниям для каждого участника. С этой информацией я бы тогда создал новый dataframe для построения среднего склона с 1-20 секунд для двух условий прослушивания (Easy and Hard).
Это текущая структура в базе данных данных;
> str(ppt53data)
'data.frame': 1915391 obs. of 6 variables:
$ RECORDING_SESSION_LABEL: Factor w/ 1 level "ppt53": 1 1 1 1 1 1 1 1 1 1 ...
$ listening_condition : Factor w/ 2 levels "Easy","Hard": 2 2 2 2 2 2 2 2 2 2 ...
$ RIGHT_PUPIL_SIZE : Factor w/ 3690 levels ".","0.00","1000.00",..: 3266 3264 3263 3262 3262 3260 3257 3254 3252 3252 ...
$ TIMESTAMP : num 262587 262588 262589 262590 262591 ...
$ TRIAL_START_TIME : int 262587 262587 262587 262587 262587 262587 262587 262587 262587 262587 ...
$ TrialTime : num 0 1 2 3 4 5 6 7 8 9 ...
- attr(*, "na.action")=Class 'omit' Named int [1:278344] 873 874 875 876 877 878 879 880 881 882 ...
.. ..- attr(*, "names")= chr [1:278344] "873" "874" "875" "876" ...
переменная 'TrialTime' указывает образец (т.е. миллисекунды) в каждом испытании. Может ли кто-нибудь сообщить мне, какой шаг я должен предпринять дальше? Я полагаю, что было бы целесообразно упорядочить мои данные в отдельные кадры данных, которые позволят мне рассчитать средние значения, которые я хочу (в рамках испытаний и для каждых 1000 выборок). Однако я не уверен, что это самый эффективный/лучший способ сделать это.
Прошу прощения, что я не могу быть более конкретным. Любые грубые рекомендации будут высоко оценены.
ИМХО было бы лучше, если бы Вы отправили данные где-то, что мы могли бы получить на него , Или, по крайней мере, представительное подмножество. – jlhoward
FYI: RIGHT_PUPIL_SIZE имеет в нем нечисловые данные - вы можете избавиться от этого, установив их как «na.strings» в вашем импорте. 'read.csv (" myfile.csv ", na.strings =". ")' –
Брэндон, спасибо, что указали, что нет - я только что изменил эту переменную, так что это всего лишь числовые данные. JLHoward, спасибо за ваш комментарий. Я постараюсь опубликовать свои данные, если у меня появятся новые запросы. – Ronan