PsyQuest
PsyQuest is the questionnaire part of PsyToolkit. The aim of PsyQuest is to run an onscreen questionnaire which participants can fill in using the mouse. Its functionality and implementation are entirely different from the other components of PsyToolkit. The main aim is to be able to run questionnaires in combination with reaction time experiments. Currently, PsyQuest is relatively simple and light-weight, but it works well for many scales.You can run PsyQuest from the command line or by clicking a desktop icon. For example, if you have a questionnaire file called myquestions.txt, then you just can call the following command:
TIP:
If you want something much fancier than PsyQuest, or if you want to run your survey online, you should have a look at the award-winning, free, and open source survey software Lime Survey.
If you want something much fancier than PsyQuest, or if you want to run your survey online, you should have a look at the award-winning, free, and open source survey software Lime Survey.
Starting PsyQuest from the command line
> psyquest myquestions.txt
Per default, PsyQuest runs in full screen. For testing, use the "-w" option to run in a small window.
Starting PsyQuest from the command line in windowed mode
> psyquest -w myquestions.txt
TIP:
PsyToolkit is simple and straightforward, and best learned from examples (that come with the package). Below are a few examples.
PsyToolkit is simple and straightforward, and best learned from examples (that come with the package). Below are a few examples.
Example questionnaire
label: sports question: Do you like sports? - Yes - No - I do not want to answer this question label: food question: Click all the food types you like. * Pasta * Bread * Soup * Fish * Meat
Questionnaire files are simply text files, and follow a simple syntax. Each question has a label, a question, and some possible answers. The computer will save the answers, it can calculate a score, response time, and it can jump over questions depending on preceding answers. For example, if you answer that you do not smoke, you can easily program PsyQuest to skip all questions about smoking.
Example questionnaire
label: smoking1 question: label: Health1 question: Do you smoke? - yes - no label: smokejump if: score smoking1 2 jump: excersize label: smoking2 question: How many cigarettes do you smoke a day? - 1-5 - 6-10 - more than 10 label: excersize question: Do you excersize daily? - yes - no
You can also use more complex scales. And, you can abbreviate the commands before the colon to just one letter. label: can be l:, etc. The example below shows four 5-point scales ranging from 'do not like' to 'like very much' for the four features sweetness, texture, smell, and color.
Example of scales
l: Cake6 q: How much do you like the following aspects of cake? s 5 "do not like" "like very much" "sweetness " s 5 "do not like" "like very much" "texture" s 5 "do not like" "like very much" "smell" s 5 "do not like" "like very much" "color"
The example above will look as follows on screen:
TIP:
Use the -d option to create a desktop icon for your questionnaire.
Use the -d option to create a desktop icon for your questionnaire.
Analyzing PsyQuest data
If you want to analyze your questionnaire data, you will need to read in the output of PsyQuest in a statistics program (or in a spreadsheet program). The output of PsyQuest is a text file that you can parse yourself. But instead, it is much easier to use psyquestcollect.Here is an example: Imagine that you have a cake questionnaire. You run it with psyquest cake.txt with a number of participants. Then you will have a whole bunch of files starting with cake.txt.output. The rest of the filenames is the date (from year to minute, divided by hyphens). If you want to have the scores of all questions in one big table, with one line per participant, all you need to do type is this: psyquestcollect -q cake.txt
psyquestcollect will read in all files that start with cake.txt.output and process them. As a result, you will now have a new file: tmp.out. This file can be read by R or imported in a spreadsheet program (note: the first line indicates the column names). In R, you can read it in by typing cake=read.table("tmp.out",header=T).
Now, the R variable cake has a row for each participant and a column for each answer.