Epicalc: Epidemiological Calculator

Date 2023-02-09
Title Epidemiological calculator
Author Virasakdi Chongsuvivatwong
Maintainer Kittisakdi Choomalee
Depends R (>= 4.1.0), foreign, survival, MASS, nnet
Description Functions making R easy for epidemiological calculation.
License GPL (>= 2)
URL http://medipe.psu.ac.th/epicalc/

Update: 09022023
- fixed use function
- Import tbl object by use function
- add cutoff to display cut off point in lroc plot
- set lagvar default to -1
- conditional recode
- read xls and xlsx file


Analysis of epidemiological data using R and Epicalc

Author: Virasakdi Chongsuvivatwong, Epidemiology Unit, Prince of Songkla University, THAILAND

English Version:
Indonesian Version (Alih Bahasa : Zurnila Marli Kesuma):


‘epicalc’ has disappeared from CRAN. It has been archived by R-core team based on my request. The reason is that CRAN has set up a policy not to allow any package to do anything on .GlobalEnv while epicalc does that extensively.

While not readily available on CRAN for normal Windows users, ‘epicalc’ is still installable from our website.

Windows, On R console, type:

> install.packages("readxl")
> install.packages("epicalc", repos = "https://medipe.psu.ac.th/epicalc")

OS X/ Linux, On R console, type:

> install.packages("readxl")
> install.packages("epicalc", repos = "https://medipe.psu.ac.th/epicalc",type="source")

Then it is ready for

> library(epicalc)

Windows binary zip file: epicalc_3.6.0.1.zip


There are many non-database functions of epicalc, such as:
- ‘codebook’, ‘des’, ‘summ’,
- ‘tab1’, ‘tabpct’, ‘dotplot’, ‘pyramid’, ‘followup.plot’, ‘aggregate.plot’,
- ‘cc’, ‘cs’, ‘mhor’
- ‘n.for.survey’, ‘n.for.2p’ ….,
- ‘tableStack’,
- ‘logistic.display’,
- alphaBest.

While ‘epicalc’ is not on CRAN, these functions are available on CRAN in the new ‘epiDisplay’ package.
On the menu bar of R console, click ‘Packages’ and choose ‘install package(s)…’. Choose the mirror site and choose ‘epiDisplay’.
After successful installation, it is ready for

> library(epiDisplay)

Under epiDisplay, the database functions are not available such as
- ‘zap’
- ‘recode’
- ‘rename’
- ‘label.var’
- ‘pack’
- ‘unclassDataframe’ ? ‘keepData’
- ‘sortBy’

WHICH ONE IS BETTER? ‘epicalc’ or ‘epiDisplay’

For those who are familiar with epicalc, without these database functions, you need to get back to usual plain R functions. That will slow you down substantially, especially during the data cleaning and manipulation. I recommend that you should install epicalc from our website (as shown above) and don’t borther about ‘epiDisplay’ For R users who have never used epicalc and do not want to learn epicalc database functions, ‘epiDisplay’ is straightforward and should still be very useful in data exploration and result display.


Virasakdi Chongsuvivatwong
Epidemiology Unit, Prince of Songkla University
Thailand 90110
Email : cvirasak@medicine.psu.ac.th