- Why the proforma decides your thesis
- Link every CRF field to an objective
- Structure of a good thesis proforma
- Writing the questions: closed vs open, units and timing
- Coding scheme and codebook
- Example: a mini-CRF and its master chart
- Building the Excel master chart
- Data validation drop-downs in Excel
- Double entry and cleaning checks before SPSS import
- Common mistakes to avoid
- Getting help with your proforma and master chart
- FAQs
Almost every MD/MS thesis in India runs on two humble documents: the case record form (CRF, usually called the proforma) that you fill for each patient, and the Excel master chart that your statistician or SPSS reads at the end. Designed well, they make analysis quick. Designed badly, they leave you re-reading files and discovering that a key variable was never recorded.
This guide covers designing the proforma from your objectives, coding every answer, building a clean master chart and checking it before SPSS. The examples are generic templates, not results from any real study.
1Why the proforma decides your thesis
Your proforma is the only bridge between the patient and your results. Anything not captured on it does not exist for analysis; anything captured inconsistently (mg/dL one day, mmol/L the next) becomes a cleaning problem.
A good proforma has every field serving an objective, every answer pre-defined as far as possible, and a one-to-one map onto the master chart. Most departments expect the proforma to be attached to the synopsis and approved by the Institutional Ethics Committee along with the protocol, so design it at the synopsis stage, not after data collection has begun. See our synopsis writing guide for where it fits.
2Link every CRF field to an objective
Before you open Word, write your objectives in one column and list the variables needed to answer each one. If your objectives are still vague, fix them first using our guide on writing aims and objectives.
| Objective (example) | Variables needed | Type |
|---|---|---|
| To describe the clinical profile of patients | Age, sex, residence, presenting complaints, duration of symptoms | Numeric and categorical |
| To measure serum marker X at admission | Serum X value (with unit), date and time of sampling | Numeric |
| To assess association of X with outcome | Serum X, outcome (e.g. discharged / referred / died), potential confounders | Numeric and categorical |
Then go the other way: for every draft field, ask "which objective or baseline table needs this?" If none, delete it. Extra fields cost time and add missing data.
Sketch your dummy results tables (empty shells with row and column headings) before finalising the proforma. Every cell in those tables must come from a field on the CRF. If a table needs something the CRF does not collect, add it now.
3Structure of a good thesis proforma
A practical order that follows the patient's journey:
- Identification: study ID, date of enrolment, ward/OPD.
- Consent and eligibility: consent date, each inclusion and exclusion criterion as a tick box.
- Demographics: age, sex, residence, socio-economic class if needed (name the scale and version).
- History and examination: complaints, duration, comorbidities as separate yes/no items, vitals and signs with units.
- Investigations: each test, value, unit and timepoint.
- Intervention / exposure (if any) and outcome / follow-up, with timepoints.
- Investigator signature and date.
Study ID instead of names
Give each participant a code such as GM001, GM002 in the order of enrolment. Keep a separate, password-protected or locked "linking log" that connects study ID to name and hospital number, accessible only to you and your guide. The proforma copies, the master chart and anything shared with a statistician should carry only the study ID. This is in line with the confidentiality expectations of the ICMR National Ethical Guidelines 2017.
4Writing the questions: closed vs open, units and timing
Prefer closed questions
Closed questions (tick one box, enter a number) are fast to fill, easy to code and comparable across patients. Use open text only when you genuinely cannot predict the answers, and even then consider an "Other (specify): ____" option after a list of common answers.
| Weak (open) version | Better (closed) version |
|---|---|
| Smoking history: ________ | Current tobacco smoking: β Yes β No. If yes, type: β Cigarette β Beedi β Both |
| Diabetes: ________ | Known diabetes mellitus: β Yes β No β Not known |
Collect raw numbers, not categories
Record haemoglobin as 9.4 g/dL, not "moderate anaemia". You can always group a continuous value later; you can never recover the number from a category. The same applies to age, BMI, blood pressure and laboratory values.
Print the unit and the timepoint on the form
Write "Serum creatinine (mg/dL) at admission: ____" rather than "Creatinine: ____". If a value is measured more than once, give each timepoint its own line (Day 0, Day 3, Day 7). Decide in advance which value counts if a test is repeated on the same day (for example, the first value) and write that rule in your codebook.
"Fever and cough: β Yes β No" cannot be coded when the patient has fever without cough. One question should ask about one thing.
5Coding scheme and codebook
Statistical software works best with numbers. Decide the codes before data collection and print them on the proforma beside each box so that entry is mechanical. Keep them consistent across the whole form.
| Situation | Suggested coding convention |
|---|---|
| Sex | 1 = Male, 2 = Female (add 3 = Other if relevant) |
| Yes/No items | 1 = Yes, 0 = No (or 1 = Yes, 2 = No; just stay consistent) |
| Missing (single-digit codes) | 9 = Missing / not recorded |
| Missing (numeric variables) | A value that cannot occur, e.g. 99 or 999, or simply leave the cell blank |
| Not applicable | A separate code, e.g. 8, so that "not asked because not relevant" is not confused with "forgotten" |
| Ordered categories | Codes in their natural order, e.g. 1 = Mild, 2 = Moderate, 3 = Severe |
Never use a missing code that could be a real value. If age is a variable, 99 may be a genuine age; use a blank cell or 999 instead. Write all of this into a codebook: a sheet listing each variable name, its full label, type, unit, allowed codes or range, and missing-value code. Your statistician will ask for it, and you will need it when writing the methods chapter.
6Example: a mini-CRF and its master chart
Here is a short, generic proforma fragment for a hypothetical observational study. It is a template only.
| # | CRF item (as printed) | Response format |
|---|---|---|
| 1 | Study ID | GM ___ |
| 2 | Date of enrolment | DD/MM/YYYY |
| 3 | Age (completed years) | ___ |
| 4 | Sex | β1 Male β2 Female |
| 5 | Known diabetes mellitus | β1 Yes β0 No β9 Not known |
| 6 | Haemoglobin at admission (g/dL) | __.__ |
| 7 | Severity grade | β1 Mild β2 Moderate β3 Severe |
| 8 | Outcome at discharge | β1 Improved β2 Referred β3 Died β4 Left against advice |
The matching master chart columns and codebook entries:
| Column name | Label | Type / unit | Allowed values | Missing |
|---|---|---|---|---|
study_id | Study ID | Text | GM001 onwards, unique | Not allowed |
enrol_date | Date of enrolment | Date | Within study period | Not allowed |
age_yr | Age in completed years | Whole number | As per inclusion criteria, e.g. 18β80 | Blank |
sex | Sex | Code | 1, 2 | 9 |
dm | Known diabetes | Code | 0, 1 | 9 |
hb_adm | Haemoglobin at admission | Decimal, g/dL | Plausible range agreed with guide | Blank |
severity | Severity grade | Ordinal code | 1, 2, 3 | 9 |
outcome_dc | Outcome at discharge | Code | 1, 2, 3, 4 | 9 |
A row of data then looks like: GM014 | 12/03/2026 | 46 | 2 | 1 | 10.2 | 2 | 1. One patient, one row; one question, one column.
Multiple-response questions
If a question allows several ticks (for example, presenting complaints), do not type "fever, cough" into one cell. Create one yes/no column per option: c_fever, c_cough, c_breathless, each coded 1/0.
7Building the Excel master chart
Rules that save you from re-entering data later:
- One row per participant, one column per variable. Row 1 holds column names only; data start in row 2. For repeated measurements, use one column per timepoint (
hb_d0,hb_d3,hb_d7) unless your statistician asks for a long format. - Column names without spaces. Start with a letter; use lowercase letters, numbers and underscores; keep them short.
hb_admimports cleanly into SPSS, "Hb at admission (g/dL)" does not. Put the full label in the codebook. - Numbers only in numeric columns. No "10.2 g/dL", no "<5", no "NA" mixed into a column of values. Units belong in the codebook.
- No merged cells, blank rows or sub-totals in the data sheet, and colour is not data: a red row meaning "died" is invisible to SPSS.
- Consistent dates: format the whole column as a date; calculate derived values such as length of stay in their own columns.
- Keep three sheets: Data, Codebook, and Notes (queries, corrections and their dates).
8Data validation drop-downs in Excel
Excel can refuse wrong entries at the moment you type them, which is far cheaper than finding them later.
- Select the whole data range of a coded column (e.g. the
sexcolumn below the heading). - Go to Data β Data Validation.
- Under Allow, choose List and type the codes in Source, e.g.
1,2,9. A drop-down arrow now appears in each cell. - For numeric columns, choose Whole number or Decimal and set a minimum and maximum (for example, age within your inclusion range).
- On the Input Message tab, add a reminder such as "1 = Male, 2 = Female, 9 = Missing".
- On the Error Alert tab, keep the style as Stop so invalid values cannot be saved.
If you add validation after some data are already entered, use Data Validation β Circle Invalid Data to highlight existing entries that break the rules.
Once columns are final, save a blank template and do not rename or insert columns mid-study without updating the codebook.
9Double entry and cleaning checks before SPSS import
Double data entry
The most reliable way to catch typing errors is to enter the proformas twice, ideally by two different people or by you on two different days, into two identical sheets (Entry1 and Entry2). On a third sheet, compare them cell by cell with a formula such as =IF(Entry1!B2=Entry2!B2,"","CHECK") copied across the whole range. Resolve every "CHECK" from the paper proforma, never by guessing. Free software such as EpiData also supports double entry. If full double entry is not feasible, at least re-check a random sample of forms.
Cleaning checklist
- Duplicates: use Conditional Formatting β Highlight Duplicate Values on
study_id. - Range checks: apply a filter on each column and look at the smallest and largest values; use
=MIN(),=MAX()and=COUNTIF()on a summary sheet. - Code checks: every coded column should contain only its allowed codes.
=COUNTIF(D:D,1)+COUNTIF(D:D,2)+COUNTIF(D:D,9)should equal the number of participants. - Logic checks: a male coded as pregnant, a discharge date before admission, a follow-up value for a patient who died earlier, a "No" for diabetes but a value in "duration of diabetes".
- Missing data: count blanks per column with
=COUNTBLANK(). High missingness in a key variable needs a conversation with your guide now, not at the viva.
Importing into SPSS
Save a dated cleaned copy and keep the raw version untouched. In SPSS, import the Excel file (File β Import Data β Excel in recent versions) with variable names read from the first row. In Variable View, add labels, value labels, the measure (scale, ordinal, nominal) and declare 9 or 999 as missing so they are not averaged into results. Our post on using SPSS in medical science covers the next steps, and statistical analysis for your thesis explains which tests suit which variable types.
Send your statistician or guide three things together: the cleaned master chart, the codebook, and your objectives. A master chart without a codebook is a puzzle, not a dataset.
10Common mistakes to avoid
| Do | Don't |
|---|---|
| Design the proforma from your objectives and dummy tables | Copy a senior's proforma and add fields as you go |
| Print codes on the form and keep a codebook | Decide codes while typing into Excel |
| Enter data regularly, every week | Enter all proformas in the last month |
| Keep a dated raw copy and a separate cleaned copy | Overwrite the only file you have |
Also pilot the proforma on a few patients before the study begins. Pilot use almost always reveals a missing option, an unclear item or a field nobody can fill.
11Getting help with your proforma and master chart
A carefully planned proforma and master chart make your results and discussion chapters far easier to write, and they make your analysis defensible at the viva. If you would like your draft proforma, codebook or master chart reviewed before you start data collection or before SPSS analysis, the PubMedico team can help; message us on WhatsApp +91 78787 33004.
β Frequently Asked Questions
Quick answers to common questions on this topic
In Indian thesis practice the two terms are used for the same thing: the structured form on which you record each participant's data. Clinical trials usually say case record form or case report form, while departments often say proforma. What matters is that it is approved with your protocol and that every item maps to your objectives and to a column in the master chart.
It is safer to put only a study ID on the proforma and master chart and keep names and hospital numbers in a separate linking log that only you and your guide can access. Your Institutional Ethics Committee may have its own requirements, so follow what your approved protocol says about confidentiality and data storage.
Use a code that can never be a real value for that variable. For single-digit coded items, 9 is common. For numeric variables such as age or haemoglobin, either leave the cell blank or use something impossible like 999. Whatever you choose, record it in the codebook and declare it as a missing value in SPSS so it is not included in calculations.
Some residents enter data directly into a spreadsheet or an electronic form during the patient encounter. This can work if validation rules are in place and backups are regular, but many ethics committees and guides still expect a signed source document. Check what your department and approved protocol require before dropping the paper form.
It is not always mandatory, but it is the most reliable way to catch typing errors. If you cannot enter everything twice, re-check at least a random sample of proformas against the master chart, run range, code and logic checks, and keep a notes sheet recording every correction you make and why.
π Medical Thesis Help in Your City
PubMedico works with MD, MS, DNB, MDS, PhD and MSc Nursing scholars across India. Find thesis writing, statistical analysis and publication support near your college:
β¦and 38 more cities across India. See all locations on the home page β