-
Notifications
You must be signed in to change notification settings - Fork 25
dataset: add RaCCooNS by Frank and Aumeistere #961
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #961 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 87 88 +1
Lines 3720 3742 +22
Branches 638 638
=========================================
+ Hits 3720 3742 +22 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
there is additional raw gaze data. unfortunately, the files are ascii and we currently only support |
Isn't this just documentation related? |
yes, but we have to have the right parsing criterions. I'd want to do this in a seperate PR and reopen an issue. maybe someone from the original authors can help? |
Ah I see, it's not the EyeLink format then? can you provide some example lines? |
the files are actually eyelink ascii files. however I am not entirely sure how trials are split and I don't want to propagate mistakes. maybe we can setup a meeting with Stefan Frank where we can discuss how the trials were split? CC @izaskr |
Alright, let me check. Will get back to you with this. |
from @izaskr:
I'll implement it and then we can merge the dataset to pymovements. |
@SiQube I'll take care of the ASCII parsing (hopefully today) |
I see three problems:
Regarding 2., I guess we can't really fix that right now? @SiQube (One option would be to allow passing functions with patterns in For 3., I created an issue #990. |
maybe we can discuss with Frank and @izaskr ? |
I have the feeling that we will probably need some custom loading functions for specific datasets that we want to add in the future. This way we can stay flexible for cases like this where we need to postprocess data. This is a bit of a bummer but we really can't avoid that as datasets vary in their data standards. Also #352 (adding mat-file support) could benefit from custom pre/post processing functions. |
@SiQube Should we wait with merging this until we have a solution for parsing trial variables (#990) and custom postprocessing functions (#961 (comment))? Or do you want to merge this now and improve it later? (I think the dataset is perfectly usable as it is now, just some of the information about the stimulus is missing, and the gaze and precomputed event frames don't match up.) |
I don't mind merging it asap and fix it later => we can move one of the comments to a new issue. using pymovements for this dataset is still valuable (I think) since downloading and preprocessing works (for most of the data) |
I'm in favor of merging this PR without the additional trial infos and improve on this later on when we have solved the underlying issues. Also, adding a |
We should probably also mention these issues in the docstring of the dataset. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you add a yaml definition?
Pull request was converted to draft
add to public_datasets.yaml
}, | ||
) | ||
|
||
trial_columns: list[str] = field(default_factory=lambda: []) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@SiQube I just noticed that I forgot to add trial_index0
to the trial columns here. Although I'm not sure we should add it actually, because it only exists in the gaze dataframe, but not in the event dataframe?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe trial_columns="trial_index0"
should only be added to the custom_read_kwargs
for gaze?
Also, the parser is getting conflicting information regarding the eye tracker version:
Is anyone familiar with these version mappings? (maybe @theDebbister, since she wrote the metadata parsing code?) |
Regarding the version numbers, they are explained here at the bottom of the answer thread: https://www.sr-research.com/support/thread-8853.html Which would basically mean that the metadata is wrong? Because the version is 4.x right? I will quickly ask Stefan to be sure. Update: Stefan will look into it |
@izaskr @theDebbister any update? |
Yes, Stefan said it is possible that the paper is wrong and they used the EyeLink 1000 instead of 1000 Plus. It seems that our device detection is still correct. |
add functional test files
resolves #954
requires #989