URL of experiment:
Description of the problem:
I have seen this topic before, but unfortunately, I did not find a straightforward solution.
I am currently running an online experiment. According to the subscription system and the session counter in Pavlovia, I should have 27 sessions completed. However, when I download the data from the database, I get the data from only 13 participants and I see that some of it are around 48 hours old, while the sessions completed in the last 24 hours are completely missing.
During piloting and initial running everything seemed fine and properly save. I got no error messages during piloting/running and no participant so far has contacted me for an error. Is this because the data is first saved on a temporary server and after that is stored on Pavlovia (e.g., after a certain time). Would it simply appear later on? Or should I declare the data as lost?
Thank you in advance,
Pavlovia is quite careful at checking whether all the data from an experiment is received and saved. If all of this goes well, your participants get to see a green dialogue box saying “Thank you for your patience”. Before that, it could be that not all data is saved. Could it be that participants ended your experiment too early?
Thank you for the response! I am not sure this is the case, because even incomplete data with just 5-4 trials and forced ending of the experiment is saved. What happens might be much simpler - people just click on the link and don`t complete the experiment. So the sessions count goes up, but there is actually not data to be saved. I will keep monitoring the situation.
Hi @thomas_pronk , I had the same situation as @mila.marinova for my very first two pilot participants. Since I talked to my participants, I was pretty sure that they did everything right during the task; no early ending. However, for one task, I can see that the latest data save was within a day on the “experiment” dashboard, but the downloaded data shows all the data were 2 days ago, so the pilot data is missing.
This happened to only one of my three tasks, and as I looked back, it happened before when I did the piloting myself, not just limited to these two pilot participants.
I was thinking that it might suggest something going on with the temporary server. Could you take a look?
That’s strange! If participants arrived at the green dialog box that says “thank you for your patience”, then Pavlovia confirmed to PsychoJS that all the data has been received succesfully. Two questions:
- Did the task have active status? (if it’s piloting mode, then the data isn’t stored on Pavlovia, but offered for download after the task)
- What’s the URL/name of the project?
I also continue to experience data loss (around 30%). My participants also confirmed that they completed the full experiment and there were no warning/error messages. Indeed this whole situation is a bit strange, so I will be very thankful if you can have a look also at my project (https://gitlab.pavlovia.org/marinova/s0121desoa.git).
@milana.marinova, I can’t see your experiment yet. Could you make me a member of your repo? Searching for experiments on Pavlovia — PsychoPy v2021.1
I would like to mention that participants can be a bit naughty, saying that they did complete it while they actually just aborted the experiment. Having participants confirm that they saw that green dialog box with “thank you for your patients” is a a way around that.
Hi @thomas_pronk, I was trying to add you to my project but looks like there are two Thomas Pronk (please see attached). Here’s my gitlab page: Sign in · GitLab.
Just to clarify, I used jsPsych, not Psychopy, so my participants won’t be seeing the green dialogue box. But it looks like the problem is with the Pavlovia data server, so it should not matter.
Also, in my case, I’m pretty sure that my participants (my grad school mates) completed everything, because both of them can tell me what the end step was. Thank you!
I’m @tpronk. I’m a bit less proficient with jsPsych, but the same principle applies as far as I know: Pavlovia sends a reception confirmation and if that’s in, you can be quite sure it’s stored in the DB. I’ve had a couple of other jsPsych requests, so I’m bundling them up to tackle at once; could take a couple of days.
@Lillian_XU, I just encountered another user that reported an issue with saving, but also found out what the problem is. Perhaps the problem is similar to yours? jsPsych experiment, token randomly consumed, no data stored - #3 by DonShirley
@Lillian I can’t get into your gitlab project. Meanwhile I’ll dive into solving the other jsPsych issues, which might also solve yours:
@mila.marinova, the last routine in your experiment says: “Press ESC to close the program”. That way your participants abort the experiment at the last routine, before your experiment actually completes. The moment that the data gets sent to Pavlovia (and Pavlovia carefully checks that everything is in) is after your last routine. If you’d have that routine end on a click (or keypress) and ask your participants to wait for the green dialogue box that says “Thank you for your patience”, your data loss issues are likely resolved.
Hi @mila.marinova now the last jsPsych plugin used to communicate with Pavlovia indicate something as “wait during saving data”. In addition to be sure after the “pavlovia finish” trial I add an other one with instructions that says “data saved, you can close now”. Maybe it can help you to do something like that.
@thomas_pronk @F_Elisabeth thanks a lot for the suggestions. I will definitely implement these changes in future to prevent such things from happening. I am just a bit puzzled that aborting the last routine would result in data not being saved, but otherwise, when participants quit mid-experiment, incomplete data is usually saved.
Might be useful to mention that mila uses a PsychoJS task. About incomplete data (in PsychoJS, not jsPsych ): It’s only at the end that all kinds of checks are performed to be sure the data is in, at any other point PsychoJS makes an effort, but can’t guarantee it.
“(if it’s piloting mode, then the data isn’t stored on Pavlovia, but offered for download after the task)”
Hi, I’m having a similar issue. Is this to mean that the data just isn’t saved online for piloting? I’ve been trying to fix this issue for quite a while to make it save for piloting, assuming it would be the same. I have not seen anything that suggested otherwise. Would you be able to clearly ensure to me that when we run the experiment, the data will save to the server, even if it doesn’t during piloting?