How to use

Preparatory Downloads

If you are using Microsoft Windows you will need to download and install Python and PyQt4 before using PyQDA. PyQDA was written for Python 2.7 versions so do not download the 3.x versions. Usually both of these are already installed if you are using Ubuntu or similar.The next two downloads are optional. For displaying network plots you will need to get igraph. To grab text from PDF files you need PyPdf, the PyPdf page is outdated but it was the easiest PDF text grabber for me to implement.

Setting up Python on Windows also needs you to change a system PATH variable which allows Windows to link Python files to Python. So in Windows 7 right-click on Computer and select Properties. Then click on the Advanced System Settings link. Then click on the Environment Variables. In the User Variables section edit the PATH text to add the following text:


PyQDA should also work on Macs, but this has not been tested yet.

Download the latest PyQDA version

Once you are set up, download PyQDA from GitHub and unzip it. The main program code is in the PyQDA folder which is inside PyQDA-0.1.0 folder. There is a second folder called docs. This contains some example files which can be loaded into a test PyQDA project.

Starting PyQDA

This method wil create an executable PyQDA icon on Ubuntu/Debian. You will see a PyQDA icon appear in the PyQDA folder. This icon can be moved to the Desktop and into the Unity Launcher (on Ubuntu).
Extract the tar.gz folder.
Open a terminal and type the following to install PyQDA:

# Move to the extracted PyQDA folder. The example below assumes you are in your home director and the PyQDA folder is in your Downloads folder.

cd Downloads/PyQDA-0.1.0

# Run the file. The install process will ask for your permission to install PyQDA.


In Ubuntu or similar, extract the tar.gz folder.
Open a terminal and type the following to start PyQDA. Replace pathtodirectory with the actual file path::

python /pathtodirectory/PyQDA-0.1.0/PyQDA/


In Windows open the PyQDA-0.1.0 folder then open the PyQDA folder and double click the file.

Create a new project

Create a new project under the ‘Project’ menu, call it test. Under the ‘Project’ menu click on ‘Project memo’. This is a memo about your project. Type “A test QDA project” and click the OK button.


You will notice the main window displays the following:


The main window displays various changes that are made when using PyQDA.


The settings dialog allows you to change the coder name and to save your codings in either the coding table or the coding2 table. Checking the Show IDs box displays ID columns for various tables.


Files and Cases Menu


You will usually want to load text files into PyQDA prior to coding. The other option is to manually enter text from within PyQDA. The docs folder that you downloaded contains several files. Select the Manage files menu option. Import the files into PyQDA.


ID1 and ID2 contain the thought of two students. transcript contains a discussion between three students. File names can be changed by double-clicking on the file name. Now manually add a file by clicking the create button. Call this file ID3 and add the text:

I really like the history course, but I am struggling with the assignments. I am not a good writer as English is not my first language.

You will see a memo column. Click the memo square next to transcript.txt to open a memo. Type the following text into the memo: “transcript from a discussion at a recent tutorial”. Memos are available throughout PyQDA.


Open the Manage cases dialog. Add the three students (or cases) here by adding three cases. Call each student: ID1, ID2 and ID3.


Cases are useful for assigning attributes such as age and sex. You can add a memo to each case and rename a case by double-clicking on a case name.

Now lets add each student’s file to each student. Click on a case, say ID1, then click the Add file to case button. Select the ID1.docx file. Add the other files to the other cases.


Open file ID1.docx and select case ID1. You will see text underlined in red which indicates this text is associated with this case.


Now open the transcript.txt file. Notice the transcript begins with a student id inside [].


Try automatically assigning text to ID1 by selecting case ID1 then clicking the Auto assign file text button. You will be asked which file or files to assign the case to. Select transcript.txt from the list. Next you need to enter the start and end marks. The start mark will be ‘[id1]’ and the end mark will be ‘[‘.


Now select case ID1 and you will see all the text from the start mark to just before the end mark is assigned to case ID1. Automatically mark the other cases as well. With ID2 you will get a warning that one end mark was not found.


This can be fixed manually by selecting ID2 then selected the missed text and clicking the Mark file text button.


Within the Files and cases menu are other menu options: Files can be assigned categories and written journals can be made.

Attributes menu

Attributes are variables associated with files or cases. They can be useful to add context to the text analysis. Open the Manage Attributes dialog. Add an EducationLevel attribute for the students, ensure this is of type character.


Attributes can be character, numeric (or non-assigned if created in RQDA). Once you have created an EducationLevel attribute, you can give it a memo describing the attribute.

Double-click on an attribute name to change the attribute name. Files can also be assigned attributes if needed. The Cases and Files columns show whether attributes are associated with cases, files or both.

Select the Assign Attributes menu option. You can enter attribute values for each case or file by clicking on table cells and entering values. If non-numeric values are entered into a numeric field the field reverts to the original value.


You can Import Attributes from a CSV file. The first row must contain the attribute headings and the very first heading must be either file or case, so that file or case entries are correctly matched. Note that this is case sensitive. Open the attributes.csv file  in the docs folder to see how it is laid out. Import the attributes from this file through the Import Attributes dialog. Once the attributes have been imported, open the Assign Attributes dialog to see the imported information.



Select Codes from the Coding menu. This is the central dialog for assigning codes to text. Once text segments are coded, hovering the mouse over the coding shows the code name as a tooltip. Clicking on the coded segment also shows the code name. Press the View FIle button to select a file to view. Create a new code by pressing the Add button.


Codes can also be assigned a colour. If no colour has been selected the text is marked with a gray colour.


A code can be deleted by selecting the code then pressing the Delete button. You will be asked to confirm the deletion.

Add an annotation (like a memo) to a point in the text. You will see a text character will become bold to mark the position of the annotation.

Highlight some text and select a code, then click the Mark button to assign the code to the text. Hover the mouse pointer over the highlighted text to see a tooltip of the code. Coded text can be uncoded by clicking on the text segment and pressing the Unmark button.


You can also automatically code text segments using the Auto Code button. Enter the text you want to autocode. The next dialog asks for one or more files to autocode. All matching text will be assigned the selected code.


Codes can be collated into categories. Add a category using the Add button. Delete a category by highlighting then clicking Delete. Rename a category by double-clicking the category name. To assign codes to a category, highlight the codes with mouse, you can use the ‘ctrl’ or ‘shift’ buttons to select multiple codes, highlight a category and then click Link. To unlink,

Click the View linked square to see the codes assigned to each category. You will see the Link button will become inactive and the Unlink button will become active. To unlink codes from the category, select any codes and click Unlink.

Selected codes can be merged by clicking the Merge Codes button. The dialog will ask you to select the code you would like to keep. A similar function for categories is available using the Merge Categories button. A word of warning, there is no undo function, it would be best to save a copy of the rqda file first.

Categories and linked codes can be visualised using the drop-down list. Most of the options in the list show graphs (or maps) of connections between selected categories and codes. Categories are always shown in uppercase. The various options position the codes and categories in different ways.


The last item in the selection list produces a table of codes linked to each selected category. The codes are ordered from the most frequent to the least frequent for each category.



A codebook is a list of your codes. Each code memo should detail the reasons behind assigning each code to the text. The codebook can be exported to a text file.


Coding Reports

This dialog gives a list of coded text based on your selections. One or more codes need to be selected and one or both of coder 1 and coder 2 need to be selected. The Search button will present the results. If a category is selected all codes in that category are also selected. Multiple categories can be selected using the mouse and the ‘ctrl’ button. Codes and categories can be sorted to help find the codes of interest.

Codings can be narrowed down by using the Search Text function or the File selection button. Only codings within the selected files will be presented, or if this function was not used all files are used. If text is entered into the Search text field, only codings which contain the matching text will be presented. Codings can also be narrowed down to case selections using the Case selection button. Note that when case selections are used, file selections are ignored. Also when file selections are used, case selections are ignored.

Reports can be exported to text or html files.

Coding Summary

A summary report of each code by code count, average characters and average number of words is produced.

SQL Statements Dialog

This dialog contains three panes. The top pane is where SQL statements are entered and the bottom pane contains the results of queries. The left pane contains tables and field names. Double-clicking on a field name adds it to the SQL statement. Results can be exported to a text file. If you are not familiar with SQL take care as you will be able to update and delete the data as well as select data. Note: Some Unicode symbols are not converted to plain text and are ignored.

Most table fields are text.

The following fields are integer: id, cid, fid, fileID, caseID,catid, cid, status

selstart and selend are real.

Details of the tables of the RQDA database are available here:


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s