PsyToolkit
Menu PsyToolkit main menu Welcome Introduction How it works Scripting basics Stimulus presentation Timing precision Examples Script syntax Script references Java Psylib references PsyQuest Problem solving Special devices FAQ Download / Installation Resources Contact Acknowledgments Complete PDF manual
Translations Deutsch Français Español 中文 日本語 한국어 Русский
psyquest


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.

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.

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:

psyquestexample1




TIP:
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.