Phil Hearn: Blogger, Writer & Founder of MRDC Software Ltd.

Should I use QPSMR, MRDCL or both?


We are frequently asked by potential clients whether QPSMR Insight or MRDCL is the most suitable product for their needs. It can be confusing as both software programs have similar functionality, but the key difference is that they are aimed at different types of users. The right product will be dependent on the work that needs to be handled and the staff that will be using the software. There is another blog article called Ways to organise market research data analysis and data processing, which might offer additional insight.

How QPSMR and MRDCL work together

Are QPSMR and MRDCL the same program?

Both programs use almost the same engine, which means that a run of tables will take the same amount of time to process in most cases using QPSMR and MRDCL. This engine has proven to outperform its competitors for many years, particularly for bigger runs where there are thousands of tables or big data files. So, whether you use QPSMR or MRDCL, you will get a high performance in terms of runs times.

How is QPSMR and MRDCL different to use?

There is a clear difference here. Instructions in QPSMR are entered using the user interface within the software whereas MRDCL instructions are entered as commands using an editor – and, sometimes Excel spreadsheets – which MRDCL then reads and processes. These commands are commonly called ‘scripts’. MRDCL scripts can have what are called compilation errors where commands or instructions are not logical or have been incorrectly entered. These will need to be corrected before a run will complete.

How does QPSMR work?

QPSMR produces tables by taking the instructions entered in the user interface and converting them to MRDCL script. It then runs that script automatically. In other words, it is creating the script for you. QPSMR has the advantage of producing error free script as the user interface will protect users from making logical errors. However, QPSMR only has access to a fairly small percentage of the tools available in the full MRDCL language. It means that there will be little choice in how you can handle complex or repetitive tasks. Indeed, there will be a number of tasks that QPSMR cannot handle that MRDCL can handle.

Extending QPSMR

QPSMR gives you some access to the scripting language that sits behind it. It is only available in a limited way and is not practical to use where you would want to enter large amounts of script to enter. One practical use of QPSMR with scripting language is the use of ‘snippets’ of MRDCL code. These snippets are tried and tested MRDCL scripts that perform a particular function. They are used within QPSMR to perform a function that QPSMR can either not handle or would be laborious to specify through the user interface. They are usually comprised of a list of parameters and the insertion of a script file. A blog article on using snippets in QPSMR will be released in March.

The next section compares QPSMR and MRDCL for the main tasks that they are designed for use.



Data collection: QPSMR vs. MRDCL

MRDCL does have some tools for data collection but it is unlikely that you would want to use them – complex data entry can be scripted but MRDCL would not usually be the right tool. QPSMR, on the other hand, has all the tools you need for most paper or telephone (CATI) questionnaires. QPSMR retains these texts so that they are available for tabulations. If you choose to use some other software for data collection, both QPSMR and MRDCL have tools to read in Triple-S or SPSS data files as well ASCII data.



Checking, editing, changing data: QPSMR v MRDCL

QPSMR and MRDCL work quite differently when it comes to data cleaning. QPSMR allows you to build in checks so that illogical entries are flagged during data entry. Additionally, a report can be produced showing logic errors in the data. Changing data can be carried out by physically changing the data or by updating data from a CSV file.


MRDCL offers more power in terms of what errors can be flagged. Repetitive or complex checks which may be laborious or impossible in QPSMR will be able to be handled in MRDCL. When it comes to changing data, the recommended methodology is to log changes in an Excel workbook so that an audit trail of changes can be retained. This means that data is not physically changed, it is amended before it is processed. If necessary, the data can be output as clean data, but this audit trail makes it easy to follow any changes that have been made to data and to correct it if something has been amended wrongly.



Data files: QPSMR v MRDCL

QPSMR can handle ASCII data and a number of forms of binary data. The maximum record size for an ASCII data file is 200000 characters. QPSMR cannot handle hierarchical data. MRDCL has no limit for the record size that can be processed, it can handle hierarchical data as well as data from more than one file.



Producing simple tables: QPSMR v MRDCL

For straightforward cross tabulations, QPSMR and MRDCL have more or less the same options to provide you with the statistics, percentage options and other comprehensive controls that allow you to output tables as you choose. QPSMR will generally be quicker to use to produce the most basic analysis – for example, every question by a standard banner. However, basic straightforward tables can still be time consuming to prepare when they are different types of analysis required for different questions – for example, summaries of mean scores, additional banners, additional filtered tables etc. The more intricate that the table requirements become, the more likely it is that MRDCL will be a more efficient tool to produce the tables.



Producing complex tables: QPSMR v MRDCL

As tables become more complex, the more likely it is that MRDCL will prove the be more efficient. There are tables that QPSMR cannot handle, there are tables where the specifications are quite laborious to input using QPSMR and tables where the automation tools within MRDCL would mean that systems or efficient MRDCL script can make the task very easy. So, let’s look at some examples of where QPSMR will be outperformed by MRDCL.

  • EPS is a powerful feature within MRDCL that can be programmed in QPSMR. It allows you to control how variables or tables are produced using a spreadsheet template. A good example of this is where you want sub-totals or nets from codes in an open ended code list. Typically, you want to rank such tables on the sub-totals/nets and the codes within each sub-total/net also to be ranked. This is not possible with QPSMR. Even managing the codes which comprise each sub-total/net is laborious task to specify in QPSMR where changes can take hours to implement. In MRDCL, an EPS Excel template can control this, making specifications and changes no more complex than using a spreadsheet. It means you can have a system for handling such tasks.
  • Projects where you have repeated parts of the questionnaire will be problematic in QPSMR. For example, where you have up to 20 eating occasions over a two-day period, you are likely to want to analyse this data based on all eating occasions. This will be possible, but quite complex in QPSMR whereas in MRDCL this is simple.
  • Product tests where half of the respondents see one product first and another product first will be complex to analyse in QPSMR. In MRDCL, there is a simple technique which allows you to handle this type of data.
  • Automation is easy to achieve in MRDCL. An example of this might be where you are running a tracking study which has a set of tables for each product. If a product is added, this could be fully automated within MRDCL so that an extra set of variables and tables are automatically generated without doing anything more than updating one line of code. In QPSMR, this would be a laborious process.
  • Table manipulation where you can perform arithmetic calculations on aggregated data in tables is allowed in both QPSMR and MRDCL. In QPSMR this quite limited, but in MRDCL you have full access to a number of arithmetic functions and can manipulate figures in rows and columns.


There are numerous examples where a scripting language offers power to make time consuming tasks relatively quick or possible.



Producing repetitive tables: QPSMR v MRDCL

MRDCL has a lot of tools for handling repetitive variables and tables. Adding something simple like a top two box and a bottom two box to a series of rating statements and getting a net satisfaction percentage for 100 variables is quick to script in MRDCL. In QPSMR, this can be a slow process.

Tasks which are repetitive from project to project or within the same project can be handled far more easily within MRDCL.



Producing multiple runs: QPSMR v MRDCL

If you need several set of tables with modifications for each run, there are some powerful automation techniques within MRDCL that will mean that the sets of reports can run automatically. In QPSMR, this will be a more manual task.



Importing and exporting data: QPSMR v MRDCL

MRDCL and QPSMR have the same tools available for exporting data to other formats. Both have good but different solutions for importing projects from Triple-S and SPSS.


What’s best: QPSMR, MRDCL or both?

Learning and using QPSMR vs MRDCL

Learning QPSMR is significantly easier than MRDCL. You can learn the basics of QPSMR in one day and can become competent after handling two or three projects. MRDCL is a much steeper learning curve, but it can be learnt in stages so that you begin by learning the basic tools and progress to more advanced techniques.

With QPSMR, there is little choice in the way each task can be approached, so users tend not to improve much in terms of productivity once they have handled two or three projects. With MRDCL, you can always learn better ways of doing things. Typically, a new MRDCL user will find the first project quite difficult but will gradually become more productive over the course of 2-3 months. Moving to the real power features that can dramatically increase productivity can follow soon afterwards. Users of MRDCL will need to have the right skill set to make the most of MRDCL and be regular users in their job role; QPSMR users can be far less skilled and be irregular users.

Considering the option of migrating from QPSMR to MRDCL

One feature of QPSMR is that it automatically generates MRDCL script when running tables. This can be a good way to learn and a way of migrating to the more powerful software. The MRDCL script that QPSMR produces is not the most efficient script, but still shows you how to get started using MRDCL. Later this year, MRDC Software will be releasing a new tool that will produce much better MRDCL script, which, in turn, will make it easier to manipulate and develop to do more complex tasks efficiently.

However, we would always recommend that if QPSMR does what you want fairly efficiently, there is no benefit in moving to MRDCL.

The case for using both MRDCL and QPSMR

The blog article Ways to organise market research data analysis and data processing has already discussed how you can become highly efficient in many cases by using both MRDCL and QPSMR. This methodology is being adopted by many of our customers. It means that simple projects can be handled by less skilled staff while more complex projects can be handled by more skilled staff with junior staff handling some of the more basic tasks like entering basic definitions and texts. We are always happy to discuss this if you think this might benefit you.

Summary: QPSMR vs MRDCL

Both QPSMR and MRDCL offer a lot of advantages. Both products offer different things and when used together can offer the greatest productivity gains. If you feel you need more information, please write to us. You can use our You Ask, We Answer form on our website.