I am a PhD student and am thinking ahead to when I start up a psychology lab---what are some of the best data entry and management systems? To avoid the "it depends" answer, below I list what I'm looking for. If you must say "it depends", it would be helpful to know what it depends on (i.e., what the good options are for different needs). I've done some work with data management systems in SPSS and Excel, and have not been impressed.

Here's what I'd use it for:

  • Entry of ~100 variables for every one of ~100 measures and ~10,000 cases. In other words, the entire (merged) data matrix could be about 100 X 100 X 10,000 cells (10,000 rows and 10,000 columns).
  • Data involve human subjects and are mostly from questionnaires

Here are some things I'd like it to be able to do:

  • Data entry can be restricted to specified, plausible values for each variable (string, number, integer, value from 0-2, etc.) in order to minimize data entry errors
  • Double data entry checking (users enter the same data twice and the system flags discrepancies to minimize data entry errors)
  • Data from different measures are entered in separate forms, but data can be easily merged by one or more matching columns (full outer join)
  • Data can be easily imported into R (ideally in base R with a .csv or .txt file)
  • Efficient (time & effort) to open and use
  • User friendly (undergrad RAs would be using it)
  • Can interface to import data from other sources so that not all data are entered manually (iPad-entered data, website-entered data, physiological data, .csv files, tab-delimited files, etc.)
  • Data can have appropriate safeguards because they involve human subjects (e.g., password protection, encryption, others?)

Not necessary, but ideally it would be:

  • Low (or no cost) and a one-time license that can be installed on an entire lab's worth of computers
  • Platform independent (can be run on Mac & PC)
  • 5
    I think this question would be a better fit for SoftwareRecs.SE.
    – aeismail
    Oct 27 '14 at 13:18
  • /What you're describing is a concept called EDC (electronic data capture), which is used in a variety of fields. There's a bunch of software out there that does that. Full Disclosure - I used to participate in open source development for OpenClinica EDC.
    – Compass
    Oct 27 '14 at 16:48
  • I'll look into EDC. I have an open question on SoftwareRecs.SE, but have yet to get any responses. I'd prefer to keep this question open on Academia, because other researchers may have a better feel for the kinds of software I'm looking for. It's likely that other researchers have used or know of a good workable system that accomplishes my goals.
    – itpetersen
    Oct 28 '14 at 2:07
  • 1
    I never really understood the point of softwarerecs.se. Software is a category so broad that there is no unique category of "software experts" that can reliably recommend the best program for very specialized tasks. If I need a program to compute Z-function quantum group cohomology indices (just made up the term), I ask mathematicians, not "software experts". Oct 28 '14 at 16:11
  • Agreed. I got many more helpful suggestions here than on softwarerecs.se. Here's the post: softwarerecs.stackexchange.com/questions/13480/….
    – itpetersen
    Mar 25 '19 at 12:36

It really depends, but more description would be helpful. For instance, if you're getting an NIH grant running a drug trial, then the system will be entirely different as if you're on another grant checking people's quality of life using questionnaires. A data set with 10,000 rows and 10,000 columns is definitely not considered as a big data set in today's data analysts' point of view. Of course, what exactly goes into the cell matters as well: coded responses like 1=male and 0=female versus thousands of genomic data inside one cell will mean a huge difference.

Assuming you're working on just collecting data in the level of questionnaires or clinical observation, I feel that general commercial software you mentioned (SPSS and MS products) should work.

Data entry can be restricted to specified, plausible values for each variable (string, number, integer, value from 0-2, etc.) in order to minimize data entry errors.

Excel and SPSS are the wrong tools for that purpose but their related products like Access and SPSS Data Collection Data Entry do that. For freeware, CDC's EpiInfo can also do that.

Double data entry checking (users enter the same data twice and the system flags discrepancies to minimize data entry errors).

The SPSS program and EpiInfo mentioned above do that. Even the SPSS base program can also do that. In fact, most statistical software have some of this capability. e.g. Stata compared file command (cf) and SAS command COMPARE, just to name a few.

Data from different measures are entered in separate forms, but data can be easily merged by one or more matching columns

To me, this is more of a management and planning rather than system. As long as there is a well developed ID assignment scheme, most software can pull up and merge data pretty efficiently. I agree that SQL would be nice, and most software have some of SQL incorporated into it as well: Access, SAS PROC SQL, Stata odbc, R, etc.

I'd consider a good documentation trumps all on any day. If there is a clear linkage between data sets or tables, even Excel's VLOOKUP is an okay tool.

Data can be easily imported into R

Packages like foreign, sas7bdat, and xlsReadWrite are readily available.

Efficient to open and use

Efficient on what? Time or effort? Some of these software suggested have a steeper learning curve but eventually can be highly efficient (R, SAS) while some are more icon-based point-and-click (SPSS, Access) that are easier to pick up but eventually will become a bit slower if the users do not advance into the script-based interface (aka running SPSS and Access using scripts.)

User friendly (undergrad RAs would be using it)

That depends on what your school is teaching the undergrads. But no matter what they know or what they claim they know, I still train everyone.

Can interface to import data from other sources (iPad-entered data, website-entered data, physiological data, etc.)

For iPad you'd need to talk to the programmer (if you have one) to make sure the exported data can be read. For website-entered data (I'm assuming you mean something like Survey Monkey,) SPSS and Excel are still dominating. But both can be easily read by most statistical software. Physiological data are device specific, you may get comma separated, tab delimited, or even proprietary encoded data, you'll need to check with the device makers.

Low (or no cost) and a one-time license that can be installed on an entire lab's worth of computers

I'd check if your institute has any site license agreement with the major software retailers and start from there. If no license agreement, then expand your search to educational discount agreement. A statistical software that is about US$2,000 can be bought at less than $200 if your institute has agreement with the retailer.

I like R (as a free stat software) but am other totally ignorant when it comes to free database or research management platform, can't help here.

Platform independent (can be run on Mac & PC)

Then you probably want to avoid SAS unless you are willing to install Windows parallel onto your Mac. Most others mentioned in this answer can run fine on these operation systems (like Stata) or have separated versions for each system (like MS Office.)

If you're not sure what is a "good system," I'd suggest looking for general guidelines from data repository organizations. They often have guidelines like this one which delineate what are good enough data sets to be hosted by them.

Books on "data cleaning," "data management," and "work flow management" may also help you refine the system. The tools are important, but the rules of using them are a lot more crucial for a less frustrating data management experience.

And finally just a disclaimer, I don't have financial affiliation with any product that I mentioned in this answer.

  • Lots of great suggestions here. I modified my question to clarify some of my needs/goals based on your points. A couple points of clarification: I'm going to use R for data analysis (not SAS, SPSS, Excel, Stata, etc.). Ideally, the data management system would be able to export data that can be read in base R (e.g., .csv or tab-delimited text files). I've had trouble with SAS/foreign/Excel packages that interface with R. I'd like to be able to efficiently merge data using MySQL (or similar) before importing to R. SPSS and Excel have been slow for merging large data sets in my experience.
    – itpetersen
    Oct 28 '14 at 17:10

Too long for a comment, hence an answer:

What kind of data are you entering? Is it psychology, biology, public policy, engineering, marketing, ..., philosophy?

If you are dealing with human populations and recording what people tell you in response to your requests, you may want to ask it in the professional statistical circles on lists like AAPOR net (American Association for Public Opinion Research), SRMSNET (Survey Research Methods Section of the American Statistical Association) or Government Statistics Section of ASA. In the company where I work, our interviewers enter may be single digit % of your estimated data daily, and we are talking about a substantial interviewer workforce in one of the largest survey organizations in the U.S. Entering the data by a human in a small assistant professor lab with three undergrads at the scale that you are thinking about is simply impossible.

If you are coming from hard sciences, you really ought to consider automatic data entry from your instruments. It is silly to have an undergrad look at a scale and record the number down in Excel.

  • Thanks for the suggestion to ask those professional listservs. I am entering psychology data involving human subjects, so I'll look into the listservs. I also have data from instruments (in .csv and tab-delimited text files), so I would prefer the system I use to be able to import those files, as well (so human entry is not necessary, as you point out). Thanks!
    – itpetersen
    Oct 28 '14 at 16:57

You want to avoid 'it depends' answers but the reality of the situation is that 'it depends'.

That's a bit of a pat answer but I'm reasonably sure that there is no such magical software or data management system that meets all of your requirements. Which means, ultimately, you'll have to pick and choose which of those requirements are hard requirements and which are soft.

My gut tells me that (depending on your data), when you're talking about 100 x 100 x 10000 x 10000 you're starting to talk about databases rather than traditional 'data entry' systems. It's true you can(and a lot of labs do) do a lot of data in desktop spreadsheet environments but once you start getting over a couple thousand points of data opening and managing those spreadsheets becomes nearly impossible. That combined with your desire for a low-cost or no-cost solution points me towards my-SQL as a backend. For ease of DB entry(especially with undergrads) I would recommend a web based front end - this means it's available on mac or PC and does not necessarily require an install for the user. This will require some work/ramp up but the bonus of data in a true database is that all of your other requirements(exportability, flexibility, etc) are handled as long as you design it intelligently.

  • Thanks for the answer. Can you say what it depends on (ie what are good options for different needs)? MySQL sounds like a good option. Are there good frontends for MySQL? Also, it doesn't have to be low-cost but that would be ideal.
    – itpetersen
    Oct 27 '14 at 20:50

For people who come across this post in the future, I eventually decided on using REDCap (Research Electronic Data Capture). REDCap meets all of the requirements noted in my above post, and is widely used by many researchers at many universities across the globe.

Not the answer you're looking for? Browse other questions tagged or ask your own question.