Skip to content

Commit e090bf4

Browse files
authored
Merge pull request #803 from cmu-delphi/release/delphi-epidata-0.3.6
Release Delphi Epidata 0.3.6
2 parents cfa90a2 + 17caf17 commit e090bf4

File tree

17 files changed

+440
-303
lines changed

17 files changed

+440
-303
lines changed

.bumpversion.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[bumpversion]
2-
current_version = 0.3.5
2+
current_version = 0.3.6
33
commit = False
44
tag = False
55

docs/api/covidcast-signals/fb-survey.md

Lines changed: 152 additions & 184 deletions
Large diffs are not rendered by default.

docs/api/covidcast_licensing.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@ We request you attribute our data as follows:
2222
> Data from Delphi COVIDcast. Obtained via the Delphi Epidata API.
2323
> <https://cmu-delphi.github.io/delphi-epidata/api/covidcast.html>
2424
25+
Academic publications may cite our paper:
26+
27+
> Alex Reinhart, Logan Brooks, Maria Jahja, Aaron Rumack, Jingjing Tang, et al.
28+
> (2021). "An open repository of real-time COVID-19 indicators". *Proceedings of
29+
> the National Academy of Sciences* 118 (51) e2111452118.
30+
> <https://doi.org/10.1073/pnas.2111452118>
31+
2532
### Creative Commons: Attribution
2633

2734
These data sources are provided under the terms of the [Creative Commons
@@ -32,7 +39,7 @@ Attribution license](https://creativecommons.org/licenses/by/4.0/):
3239
* [Indicator Combination](covidcast-signals/indicator-combination-inactive.md): signals
3340
with names beginning `nmf_*`
3441
* [Quidel](covidcast-signals/quidel.md)
35-
* [Symptom Surveys](covidcast-signals/fb-survey.md)
42+
* [COVID-19 Trends and Impact Survey](covidcast-signals/fb-survey.md)
3643

3744
You may use this data for any purpose, provided you attribute us as the original
3845
source, as shown above.

docs/symptom-survey/codebook.csv

Lines changed: 117 additions & 0 deletions
Large diffs are not rendered by default.

docs/symptom-survey/coding.md

Lines changed: 105 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,40 @@ Beginning in Wave 11, the `module` column indicates which module the respondent
5656
was randomly assigned to. See the [survey modules and randomization](modules.md)
5757
information for more details.
5858

59-
Coding details for each survey wave follow.
59+
### Privacy Restrictions
6060

61+
To prevent respondents from being identifiable in the response data, responses
62+
with ZIP codes with populations of 100 or fewer have their location set to `NA`.
63+
This affects item A3 in the individual response files. (This change was
64+
implemented with the introduction of Wave 4. Previously, all ZIPs were
65+
reported.)
66+
67+
Invalid ZIP codes are preserved unchanged, and these rows are reported in the
68+
individual response files with their invalid ZIPs.
69+
70+
### Race and Ethnicity
71+
72+
Beginning in wave 4, items D6 and D7 ask respondents for race and ethnicity.
73+
These columns are **not** available in the microdata files due to
74+
reidentification concerns. Public contingency tables that aggregate by race and
75+
other demographic variables [are available](contingency-tables.md).
76+
77+
Users with a specific need for these variables in microdata should contact us at
78+
<[email protected]> to discuss options for obtaining them,
79+
as access can be provided under some restrictions.
80+
81+
In the contingency tables, and in the microdata files for users who have gained
82+
permission to access this data, the `raceethnicity` column is coded based on the
83+
following rules:
84+
85+
* If the respondent answers "Yes" to item D6, they are coded as Hispanic,
86+
regardless of their answer to D7. If the respondent answers "No" to D6, the
87+
following rules apply.
88+
* Respondents who selected more than one racial group in D7, or who selected
89+
"Some other race", are coded as "NonHispanicMultipleOther".
90+
* Respondents who selected only one racial group in D7 are coded according to
91+
that race, such as "NonHispanicAsian" or
92+
"NonHispanicAmericanIndianAlaskaNative".
6193

6294
## Comprehensive Codebook
6395

@@ -91,23 +123,6 @@ Available columns:
91123
* `group_of_respondents_item_was_shown_to`: Module-based subset of respondents item was asked of. One of "all" (if item was included in the [Daily Core](modules.md) and asked of all respondents), "Module A", or "Module B".
92124

93125

94-
## Privacy Restrictions
95-
96-
To prevent respondents from being identifiable in the response data, responses
97-
with ZIP codes with populations of 100 or fewer have their location set to `NA`.
98-
This affects item A3 in the individual response files. (This change was
99-
implemented with the introduction of Wave 4. Previously, all ZIPs were
100-
reported.)
101-
102-
Invalid ZIP codes are preserved unchanged, and these rows are reported in the
103-
individual response files with their invalid ZIPs.
104-
105-
Additionally, beginning in wave 4, items D6 and D7 ask respondents for race and
106-
ethnicity. These columns are **not** available in the microdata files due to
107-
reidentification concerns. Users with a specific need for these variables should
108-
contact us at <[email protected]> to discuss options for
109-
obtaining them. However, contingency tables that aggregate by race and other
110-
demographic variables [are available](contingency-tables.md).
111126

112127

113128
## Wave 1
@@ -471,7 +486,7 @@ new items were meant to capture reasons for vaccine hesitancy among respondents.
471486

472487
### New Items
473488

474-
* Item V2a ask respondents that have received a COVID-19 vaccine and indicated
489+
* Item V2a asks respondents that have received a COVID-19 vaccine and indicated
475490
that they have not had 2 doses of the vaccine whether they intend to get the
476491
required doses.
477492
* Items V5a-V5d and V6 were added to capture reasons for respondents not
@@ -775,6 +790,11 @@ are not anticipated to change the respondent’s answer.
775790
might become seriously ill from CVOID-19?”) was removed.
776791
* Item C17a (“Have you had a seasonal flu vaccination since July 1, 2020?”) was
777792
removed.
793+
* On November 8, 2021, item V2 “How many vaccinations have you received?” was
794+
removed from Wave 11, as the response options did not allow for respondents to
795+
report booster shots and additional doses. Booster doses were becoming more
796+
common at this time, making the lack of booster response options jarring to
797+
respondents.
778798

779799
### Notes
780800

@@ -789,36 +809,43 @@ are not anticipated to change the respondent’s answer.
789809

790810
## Wave 12
791811

792-
Wave 12 was deployed on October 7, 2021. Deployment is in two phases:
812+
Wave 12 was deployed on December 19, 2021, after an experimental phase in
813+
October:
793814

794-
* Initially the survey was given only to 15% of survey respondents, the
795-
remainder receiving Wave 11. This phase lasted until October 22. This phase
796-
was used to conduct three experiments with (1) demographic module placement,
797-
(2) vaccination uptake question, and (3) survey invitation text. Details of
798-
these experiments can be found [below](#experiments). In data files, this is
799-
marked as wave "12.5" to distinguish from the final version.
800-
* After results of the experiments are analyzed, a final version will be
801-
deployed using only one demographic module placement and one vaccine uptake
802-
question. This will be marked as wave 12 in the data files.
815+
* From October 7 to October 22, 2021, an experimental Wave 12 was given only to
816+
15% of survey respondents, the remainder receiving Wave 11. This phase was
817+
used to conduct three experiments with (1) demographic module placement, (2)
818+
vaccination uptake question, and (3) survey invitation text. Details of these
819+
experiments can be found [below](#experiments). In data files, this is marked
820+
as wave "12.5" to distinguish from the final version. Data from the
821+
experimental wave 12 was not included in the aggregates published in the
822+
COVIDcast API or in our [contingency tables](contingency-tables.md).
823+
* After results of the experiments were analyzed, the final version was deployed
824+
on December 19, 2021. In data files, this is marked as wave 12.
803825

804826
Wave 12 is available in English and the languages introduced in Wave 3.
805827

806828
Files:
807829
* [Wave 12 text and coding](waves/CMU Survey Wave 12.pdf) (PDF)
808830
* [Wave 12 text and coding](waves/CMU Survey Wave 12.docx) (Word)
809831

810-
Besides the experiments, Wave 12 revises the schooling module of the survey
832+
Besides the experiments, Wave 12 revised the schooling module of the survey
811833
instrument and adds questions regarding parents’ intention to vaccinate their
812-
children (under age 18). Please review the changes carefully when you use
834+
children (under age 18). These schooling items are part of [Module B](modules.md)
835+
of the survey. Please review the changes carefully when you use
813836
responses from multiple waves of this survey.
814837

838+
### Demographic Module Placement
839+
840+
In the prior waves of CTIS, respondent demographics were collected towards the
841+
end of the survey. These questions are now asked after the vaccine module of the
842+
survey. This placement was chosen after the [order experiments described
843+
below](#experiments) found that this ordering improved response rates to the
844+
demographic items. We expect this will aid users who need demographic data for
845+
their survey analyses.
846+
815847
### New Items
816848

817-
* Item V1alt asks respondents who they personally know has already received a
818-
COVID-19 vaccine. Response options include themselves, household members, and
819-
others. This is an alternate form of the item capturing vaccine uptake, and is
820-
part of the vaccination uptake question experiment described
821-
[below](#experiments).
822849
* Item P1 asks if the respondent is a parent or legal guardian of a child under
823850
age 18.
824851
* Item P2 asks respondents the age group of their oldest child. This replaces
@@ -832,16 +859,18 @@ responses from multiple waves of this survey.
832859
* Item P6 asks respondent about the preventative measures that apply if their
833860
oldest child is attending any in-person classes. These response options are a
834861
subset of response options from E3 with several new additions.
862+
* In the experimental phase, item V1alt asked respondents who they personally
863+
know has already received a COVID-19 vaccine. Response options include
864+
themselves, household members, and others. This is an alternate form of item
865+
V1 capturing vaccine uptake, and is part of the vaccination uptake question
866+
experiment described [below](#experiments). In the final version of Wave 12,
867+
item V1alt is not used and item V1 remains unchanged.
835868

836869
### Changed Items
837870

838871
* Item B13a asks respondents “Have you ever had coronavirus (COVID-19)?” and
839872
replaces item B13 “As far as you know, have you ever had coronavirus
840873
(COVID-19)?” for ease of translation.
841-
* The vaccination uptake question experiment uses questions V1 and V1alt.
842-
Subsequently, questions that use V1 in the display logic have been updated to
843-
also include respondents who are asked V1alt. The display logic has been
844-
updated for the following questions: V2, V11a, V3a, V5a, V12a, V16, and V9
845874
* Item V5a, V5b and V5c have the following revisions to response options:
846875
* The response option “I don’t like vaccines” was revised to “I don’t like
847876
vaccines generally” to distinguish from a specific dislike of COVID-19
@@ -855,6 +884,11 @@ responses from multiple waves of this survey.
855884
added: “The available appointment locations did not work for me” and “Other”
856885
* Item V15b has two new response options: “The available appointment locations
857886
did not work for me” and “Other”.
887+
* The vaccination uptake question experiment, part of the experimental version
888+
of Wave 12, used questions V1 and V1alt. During the experiment, questions that
889+
use V1 in the display logic were updated to also include respondents who are
890+
asked V1alt. The display logic was updated for the following questions: V2,
891+
V11a, V3a, V5a, V12a, V16, and V9.
858892

859893
### Removed Items
860894

@@ -871,41 +905,45 @@ responses from multiple waves of this survey.
871905

872906
Wave 12 was initially launched to 15% of respondents to collect data for the
873907
experiments described below. (The remaining 85% continued to receive Wave 11.)
874-
After the experiments have been conducted and the data analyzed; the CTIS team
875-
will finalize the Wave 12 instrument to be distributed to the entire sample.
876-
Wave 12 will consist of three experiments with (1) demographic module placement,
877-
(2) vaccination uptake question, and (3) survey invitation text.
908+
This experiment was run from October 7 to October 22, 2021. After the
909+
experiments were conducted and the data analyzed, the CTIS team finalized the
910+
Wave 12 instrument to be distributed to the entire sample. This finalized
911+
version was deployed on December 19, 2021.
912+
913+
The Wave 12 trial phase consisted of three experiments with (1) demographic
914+
module placement, (2) vaccination uptake question, and (3) survey invitation
915+
text.
878916

879917
#### Demographic Module Placement and Vaccine Uptake Question
880918

881-
The 15% of respondents who receive the experimental Wave 12 will be divided into
919+
The 15% of respondents who received the experimental Wave 12 were divided into
882920
three groups:
883921

884-
* Group 1 (5% of respondents) will see the demographics questions after the
885-
symptom module, which concludes with question B2b “For how many days have you
886-
had at least one new or unusual symptom?” This group of respondents will see
887-
the Wave 11 version of the vaccine uptake question (V1).
888-
* Group 2 (5% of respondents) will see the demographics questions after the
889-
COVID vaccine module, which concludes with question V9 “How concerned are you
890-
that you would experience a side effect from a COVID-19 vaccination?” This
891-
group of respondents will see the Wave 11 version of the vaccine uptake
892-
question (V1).
893-
* Group 3 (5% of respondents) will see the experimental form of the vaccination
922+
* Group 1 (5% of respondents) saw the demographics questions after the symptom
923+
module, which concludes with question B2b “For how many days have you had at
924+
least one new or unusual symptom?” This group of respondents saw the Wave 11
925+
version of the vaccine uptake question (V1).
926+
* Group 2 (5% of respondents) saw the demographics questions after the COVID
927+
vaccine module, which concludes with question V9 “How concerned are you that
928+
you would experience a side effect from a COVID-19 vaccination?” This group of
929+
respondents saw the Wave 11 version of the vaccine uptake question (V1).
930+
* Group 3 (5% of respondents) saw the experimental form of the vaccination
894931
uptake question (V1alt), which asks respondents “Do you personally know anyone
895932
who has received the COVID-19 vaccine already?” Response options include
896-
themselves, household members, and others. These respondents will not receive
897-
the previous vaccine uptake question, V1. They will see the demographic
898-
questions in the Wave 11 placement, at the end of Module A/B and before the
899-
occupation questions.
933+
themselves, household members, and others. These respondents did not receive
934+
the previous vaccine uptake question, V1. They saw the demographic questions
935+
in the Wave 11 placement, at the end of Module A/B and before the occupation
936+
questions.
900937

901-
A new column `w12_treatment` in the microdata files will indicate which of the
902-
three groups above each respondent was assigned to.
938+
A new column `w12_treatment` in the microdata files indicates which of the three
939+
groups above each respondent was assigned to.
903940

904941
#### Survey Invitation Text
905942

906-
Our partners at Facebook will also be conducting an experiment among those
907-
allocated to receive Wave 11. Among those participants, 6% will receive will
908-
receive one of six different invitations to the survey on their News Feed. This
909-
will be an internal Facebook experiment conducted with the goal of improving
910-
response rates and exploring additional non-response bias in the weighting
911-
process. More details will be provided when the survey invitation is finalized.
943+
During the Wave 12 experiment period, our partners at Facebook conducted an
944+
experiment among those respondents allocated to receive Wave 11. Among those
945+
participants, 6% will receive will receive one of six different invitations to
946+
the survey on their News Feed. This will be an internal Facebook experiment
947+
conducted with the goal of improving response rates and exploring additional
948+
non-response bias in the weighting process. More details will be provided when
949+
the survey invitation is finalized.

docs/symptom-survey/contingency-tables.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ general public.
2525
Please see our survey [credits](index.md#credits) and [citation information](index.md#citing-the-survey)
2626
for information on how to cite this data if you use it in a publication.
2727

28-
Important updates for data users, including corrections to data or updates on
29-
data processing delays, are posted as `OUTAGES.txt` in the directory where the
30-
data is hosted.
28+
Our [Data and Sampling Errors](problems.md) documentation lists important
29+
updates for data users, including corrections to data or updates on data
30+
processing delays.
3131

3232
## Table of contents
3333
{: .no_toc .text-delta}

docs/symptom-survey/index.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,15 +65,16 @@ the survey in publications based on the data. Specifically, we ask that you:
6565

6666
1. Include the acknowledgment "This research is based on survey results from
6767
Carnegie Mellon University’s Delphi Group."
68-
2. Cite this web page for details about the survey. For example, you may cite it
69-
as
68+
2. Cite our paper describing the survey:
7069

71-
> Delphi Group (2021). COVID-19 Trends and Impact Survey.
72-
> <https://cmu-delphi.github.io/delphi-epidata/symptom-survey/>
70+
> Joshua A. Salomon, Alex Reinhart, Alyssa Bilinski, Eu Jing Chua, Wichada
71+
> La Motte-Kerr, Minttu M. Rönn, Marissa Reitsma, Katherine Ann Morris,
72+
> Sarah LaRocca, Tamar Farag, Frauke Kreuter, Roni Rosenfeld, and Ryan J.
73+
> Tibshirani (2021). "The US COVID-19 Trends and Impact Survey: Continuous
74+
> real-time measurement of COVID-19 symptoms, risks, protective behaviors,
75+
> testing, and vaccination", *Proceedings of the National Academy of
76+
> Sciences* 118 (51) e2111454118. <https://doi.org/10.1073/pnas.2111454118>
7377
74-
A journal article describing the survey and its methods is currently in
75-
preparation, and we will update this page when it is available so that you
76-
can cite it instead.
7778
3. The data use agreement requires that if you disclose survey microdata, Delphi
7879
must agree on the aggregation method that you will use to ensure reported
7980
estimates do not disclose any individual identifiable information, including

docs/symptom-survey/problems.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,12 @@ interpretation of results. All problems will be logged here.
1717
1. TOC
1818
{:toc}
1919

20+
## Temporary Suspension (December 16-17, 2021)
21+
22+
Due to a temporary problem affecting Facebook's systems, survey invitations were
23+
suspended between 11:39am PT on December 16, 2021 and 1:20am PT on December
24+
17, 2021. Invitations resumed as usual once the problem was resolved.
25+
2026
## Incorrect Wave Sampling (June-August, 2021)
2127

2228
A sampling error caused a portion of our respondents to be accidentally sent the

src/client/delphi_epidata.R

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Epidata <- (function() {
1515
# API base url
1616
BASE_URL <- 'https://delphi.cmu.edu/epidata/api.php'
1717

18-
client_version <- '0.3.5'
18+
client_version <- '0.3.6'
1919

2020
# Helper function to cast values and/or ranges to strings
2121
.listitem <- function(value) {

src/client/delphi_epidata.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
}
2323
})(this, function (exports, fetchImpl, jQuery) {
2424
const BASE_URL = "https://delphi.cmu.edu/epidata/";
25-
const client_version = "0.3.5";
25+
const client_version = "0.3.6";
2626

2727
// Helper function to cast values and/or ranges to strings
2828
function _listitem(value) {

src/client/packaging/npm/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "delphi_epidata",
33
"description": "Delphi Epidata API Client",
44
"authors": "Delphi Group",
5-
"version": "0.3.5",
5+
"version": "0.3.6",
66
"license": "MIT",
77
"homepage": "https://github.com/cmu-delphi/delphi-epidata",
88
"bugs": {
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
from .delphi_epidata import Epidata
22

33
name = 'delphi_epidata'
4-
__version__ = '0.3.5'
4+
__version__ = '0.3.6'

src/client/packaging/pypi/setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
setuptools.setup(
77
name="delphi_epidata",
8-
version="0.3.5",
8+
version="0.3.6",
99
author="David Farrow",
1010
author_email="[email protected]",
1111
description="A programmatic interface to Delphi's Epidata API.",

src/server/_config.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
load_dotenv()
77

8-
VERSION = "0.3.5"
8+
VERSION = "0.3.6"
99

1010
MAX_RESULTS = int(10e6)
1111
MAX_COMPATIBILITY_RESULTS = int(3650)

0 commit comments

Comments
 (0)