April 29, 2026

CSV File Handling (Reading ADR datasets, writing reports)

CSV File Handling in Python for Pharmacy Students (ADR Dataset Analysis & Report Generation)

CSV (Comma-Separated Values) files are widely used to store structured data. In pharmaceutical sciences, CSV files are used for Adverse Drug Reaction (ADR) reports, clinical trial data, and patient records.


๐Ÿ”ท What is a CSV File?

A CSV file stores data in tabular form where values are separated by commas.

๐Ÿ’ก Key Insight: CSV files are simple, lightweight, and widely used for healthcare datasets.

๐Ÿ”ท Reading CSV Files in Python

We use the built-in csv module.

import csv

with open('adr_data.csv', 'r') as file:
    reader = csv.reader(file)
    for row in reader:
        print(row)

๐Ÿ”ท Reading CSV as Dictionary

import csv

with open('adr_data.csv', 'r') as file:
    reader = csv.DictReader(file)
    for row in reader:
        print(row['Drug'], row['Reaction'])

Helps access data using column names.


๐Ÿ”ท Writing CSV Files

import csv

with open('report.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    writer.writerow(["Patient", "Drug", "Reaction"])
    writer.writerow(["John", "Aspirin", "Nausea"])

๐Ÿ’Š ADR Dataset Example

import csv

with open('adr_data.csv', 'r') as file:
    reader = csv.DictReader(file)
    
    for row in reader:
        if row['Reaction'] == "Severe":
            print("Alert:", row['Drug'])

Used for detecting serious adverse drug reactions.


๐Ÿ’Š Generating Report

import csv

data = [
    ["Patient", "Dose", "Status"],
    ["Alice", 500, "Safe"],
    ["Bob", 700, "High"]
]

with open('dose_report.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    writer.writerows(data)

๐Ÿง  Memory Tricks

  • csv.reader โ†’ Read file
  • DictReader โ†’ Use column names
  • csv.writer โ†’ Write file

๐Ÿงช Practice Exercise

Create a CSV file and:

  • Store patient drug data
  • Read and print data
  • Filter severe reactions

๐Ÿงช Mini Project

Build ADR Alert System:

import csv

with open('adr_data.csv', 'r') as file:
    reader = csv.DictReader(file)
    
    for row in reader:
        if row['Reaction'] == "Severe":
            print("โš  Alert for drug:", row['Drug'])

๐Ÿ“ MCQs

  1. CSV stands for:
    a) Computer System Values
    b) Comma Separated Values
    c) Column Stored Variables
    d) None
    Answer: b

  2. Which module is used for CSV?
    a) numpy
    b) pandas
    c) csv
    d) os
    Answer: c

  3. DictReader is used for:
    a) Writing file
    b) Reading file with keys
    c) Deleting file
    d) Sorting data
    Answer: b

โ“ FAQs

Why are CSV files used in pharmacy?

They store structured data like ADR reports and clinical datasets.

What is advantage of DictReader?

It allows accessing data using column names.


๐Ÿ“ฅ Download ADR Dataset for Practice

Analyze real-world adverse drug reaction data.


โžก Next Topic: Understanding Healthcare Datasets โ†’

Recommemded readings

  1. Lists, Tuples & Dictionaries (with pharma data examples)
  2. Indexing, Slicing & Operations (Extracting patient/drug data)
  3. NumPy Arrays (Dose calculations, concentration arrays)
  4. CSV File Handling (Reading ADR datasets, writing reports) : Current page
  5. Understanding Healthcare Datasets (Structure, columns, patient data interpretation)
  6. Data Access & Manipulation (Filter, select, basic operations)

Question Bank Unit 3: Data Structures & File Handling

For more details: Basics of Python Programming for Pharmaceutical Sciences