data.frame of cyber security breaches involving
health care records of 500 or more humans reported to
the U.S. Department of Health and Human Services (HHS)
as of June 27, 2014.
Usage
data(breaches)
Format
A data.frame with 1055 observations on the
following 24 variables:
Number
integer record number in the HHS data base
Name_of_Covered_Entity
factor giving the name of the entity
experiencing the breach
State
Factor giving the 2-letter code of the state where
the breach occurred. This has 52 levels for the 50
states plus the District of Columbia (DC) and
Puerto Rico (PR).
Business_Associate_Involved
Factor giving the name of a subcontractor (or blank)
associated with the breach.
Individuals_Affected
integer number of humans whose records
were compromised in the breach. This is 500 or greater;
U.S. law requires reports of breaches involving 500 or
more records but not of breaches involving fewer.
Date_of_Breach
character vector giving the date or date
range of the breach. Recodes as Dates in
breach_start and breach_end.
Type_of_Breach
factor with 29 levels giving the type of
breach (e.g., "Theft" vs., "Unauthorized
Access/Disclosure", etc.)
Location_of_Breached_Information
factor with 41 levels coding the
location from which the breach occurred (e.g., "Paper",
"Laptop", etc.)
Date_Posted_or_Updated
Date the information was posted to the HHS
data base or last updated.
Summary
character vector of a summary of the
incident.
breach_start
Date of the start of the incident = first
date given in Date_of_Breach above.
breach_endDate of the end of the incident or NA if
only one date is given in Date_of_Breach above.
yearinteger giving the year of the breach
Details
The data primarily consists of breaches that occurred from 2010
through early 2014 when the extract was taken. However, a few
breaches are recorded including 1 from 1997, 8 from 2002-2007,
13 from 2008 and 56 from 2009. The numbers of breaches from 2010
- 2014 are 211, 229, 227, 254 and 56, respectively. (A chi-square
test for equality of the counts from 2010 through 2013 is 4.11,
which with 3 degrees of freedom has a significance probability of
0.25. Thus, even though the lowest number is the first and the
largest count is the last, the apparent trend is not
statistically significant under the usual assumption of
independent Poisson trials.)
HHSCyberSecurityBreaches for a version of
these data downloaded more recently. This newer version
includes changes in reporting and in the variables included
in the data.frame.
Examples
data(breaches)
quantile(breaches$Individuals_Affected)
# confirm that the smallest number is 500
# -- and the largest is 4.9e6
# ... and there are no NAs
dDays <- with(breaches, breach_end - breach_start)
quantile(dDays, na.rm=TRUE)
# confirm that breach_end is NA or is later than
# breach_start
Results
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(Ecdat)
Loading required package: Ecfun
Attaching package: 'Ecfun'
The following object is masked from 'package:base':
sign
Attaching package: 'Ecdat'
The following object is masked from 'package:datasets':
Orange
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/Ecdat/breaches.Rd_%03d_medium.png", width=480, height=480)
> ### Name: breaches
> ### Title: Cyber Security Breaches
> ### Aliases: breaches
> ### Keywords: datasets
>
> ### ** Examples
>
> data(breaches)
> quantile(breaches$Individuals_Affected)
0% 25% 50% 75% 100%
500 1000 2300 6941 4900000
> # confirm that the smallest number is 500
> # -- and the largest is 4.9e6
> # ... and there are no NAs
>
> dDays <- with(breaches, breach_end - breach_start)
> quantile(dDays, na.rm=TRUE)
Time differences in days
0% 25% 50% 75% 100%
1 8 50 207 2891
> # confirm that breach_end is NA or is later than
> # breach_start
>
>
>
>
>
> dev.off()
null device
1
>