Skip to content

Commit 12dcad9

Browse files
committed
Clean number fields from CSV
1 parent 6033d53 commit 12dcad9

File tree

3 files changed

+84
-78
lines changed

3 files changed

+84
-78
lines changed

studies/management/commands/load_studies.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -245,6 +245,8 @@ def process_studies(cls, df,
245245
continue
246246
# NOTE: StudyVariable will take care of splitting lists types.
247247
study_var_created = False
248+
if study_field.field_type in ['int', 'float']:
249+
value = str(value).replace(',', '')
248250
study_var = StudyVariable.objects.filter(study_field=study_field, value=str(value)).first()
249251
if study_var:
250252
study_var.studies.add(study)
Lines changed: 47 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,56 @@
11
{% extends "admin/change_form.html" %}
22

33
{% block breadcrumbs %}
4-
<div class="breadcrumbs">
5-
<a href="{% url 'admin:index' %}">Home</a>
6-
&rsaquo; <a href="{% url 'admin:app_list' app_label='studies' %}">Studies</a>
7-
&rsaquo; Import IDX Files
8-
</div>
4+
<div class="breadcrumbs">
5+
<a href="{% url 'admin:index' %}">Home</a>
6+
&rsaquo; <a href="{% url 'admin:app_list' app_label='studies' %}">Studies</a>
7+
&rsaquo; Import IDX Files
8+
</div>
99
{% endblock %}
1010

1111
{% block content %}
12-
<div class="row buffer">
13-
<div class="columns">
12+
<div class="row buffer">
1413
<div class="columns">
15-
<div>
16-
<h2 class="secondary-headline">IDX File Formatting</h2>
17-
<p>
18-
Each IDX file name must match the regular expression <code>r"^IDX_(\w*).csv"</code>,
19-
with the search pattern matching the code for an <b>already existing</b> domain.
20-
E.g. the IDX file for the domain with a code equal to LB would be named IDX_LB.csv.
21-
</p>
22-
<p>
23-
IDX files are parsed for columns with names with suffixes of domain name, code
24-
and category columns (e.g. LB domain columns are LBTEST, LBTESTCD and LBCAT):
25-
<ul class="inline-list">
26-
<li class="left">'{domain code}TEST' : The domain variable name</li>
27-
<li class="left">'{domain code}TESTCD' : The domain variable code</li>
28-
<li class="left">'{domain code}CAT' : The domain variable category code</li>
29-
</ul>
30-
</p>
31-
<p>
32-
Acceptable values for missing csv values are:
33-
<ul class="inline-list">
34-
<li class="left">NaN</li>
35-
<li class="left">None</li>
36-
<li class="left">9999</li>
37-
<li class="left">"." (a period character)</li>
38-
</ul>
39-
</p>
40-
</div>
41-
<h2 class="secondary-headline">Import IDX Files</h2>
42-
<p class="errornote">Processing of IDX files can take a while - please allow a few minutes for process to finish.</p>
43-
<form action="" method="post" enctype="multipart/form-data">
44-
{% csrf_token %}
45-
{{ form.as_p }}
46-
<div class="submit-row">
47-
<input class="default" type="submit" value="Submit" />
48-
<p class="deletelink-box">
49-
<a class="deletelink" href="{% url 'admin:studies_count_changelist' %}">Cancel</a>
50-
</p>
14+
<div class="columns">
15+
<div>
16+
<h2 class="secondary-headline">IDX File Formatting</h2>
17+
<p>
18+
Each IDX file name must match the regular expression <code>r"^IDX_(\w*).csv"</code>,
19+
with the search pattern matching the code for an <b>already existing</b> domain.
20+
E.g. the IDX file for the domain with a code equal to LB would be named IDX_LB.csv.
21+
</p>
22+
<p>
23+
IDX files are parsed for columns with names with suffixes of domain name, code
24+
and category columns (e.g. LB domain columns are LBTEST, LBTESTCD and LBCAT):
25+
<ul class="inline-list">
26+
<li class="left">'{domain code}TEST' : The domain variable name</li>
27+
<li class="left">'{domain code}TESTCD' : The domain variable code</li>
28+
<li class="left">'{domain code}CAT' : The domain variable category code</li>
29+
</ul>
30+
</p>
31+
<p>
32+
Acceptable values for missing csv values are:
33+
<ul class="inline-list">
34+
<li class="left">NaN</li>
35+
<li class="left">None</li>
36+
<li class="left">9999</li>
37+
<li class="left">"." (a period character)</li>
38+
</ul>
39+
</p>
40+
</div>
41+
<h2 class="secondary-headline">Import IDX Files</h2>
42+
<p class="errornote">Processing of IDX files can take a while - please allow a few minutes for the process
43+
to finish.</p>
44+
<form action="" method="post" enctype="multipart/form-data">
45+
{% csrf_token %}
46+
{{ form.as_p }}
47+
<div class="submit-row">
48+
<input class="default" type="submit" value="Submit"/>
49+
<p class="deletelink-box">
50+
<a class="deletelink" href="{% url 'admin:studies_count_changelist' %}">Cancel</a>
51+
</p>
52+
</div>
53+
</form>
5154
</div>
52-
</form>
53-
</div>
54-
</div>
55+
</div>
5556
{% endblock content %}
Lines changed: 35 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,43 @@
11
{% extends "admin/change_form.html" %}
22

33
{% block breadcrumbs %}
4-
<div class="breadcrumbs">
5-
<a href="{% url 'admin:index' %}">Home</a>
6-
&rsaquo; <a href="{% url 'admin:app_list' app_label='studies' %}">Studies</a>
7-
&rsaquo; <a href="{% url 'admin:studies_study_changelist' %}">Studies</a>
8-
&rsaquo; Import studies
9-
</div>
4+
<div class="breadcrumbs">
5+
<a href="{% url 'admin:index' %}">Home</a>
6+
&rsaquo; <a href="{% url 'admin:app_list' app_label='studies' %}">Studies</a>
7+
&rsaquo; <a href="{% url 'admin:studies_study_changelist' %}">Studies</a>
8+
&rsaquo; Import studies
9+
</div>
1010
{% endblock %}
1111

1212
{% block content %}
13-
<div class="row buffer">
14-
<div class="columns">
15-
<div>
16-
<h2 class="secondary-headline">Studies File Formatting</h2>
17-
<p>
18-
Acceptable values for missing csv values are:
19-
<ul class="inline-list">
20-
<li class="left">NaN</li>
21-
<li class="left">None</li>
22-
<li class="left">9999</li>
23-
<li class="left">"." (a period character)</li>
24-
</ul>
25-
</p>
26-
</div>
27-
<h2 class="secondary-headline">Import Studies</h2>
28-
<form action="" method="post" enctype="multipart/form-data">
29-
{% csrf_token %}
30-
{{ form.as_p }}
31-
<div class="submit-row">
32-
<input class="default" type="submit" value="Submit" />
33-
<p class="deletelink-box">
34-
<a class="deletelink" href="{% url 'admin:studies_study_changelist' %}">Cancel</a>
35-
</p>
13+
<div class="row buffer">
14+
<div class="columns">
15+
<div>
16+
<h2 class="secondary-headline">Studies File Formatting</h2>
17+
<p>
18+
Acceptable values for missing csv values are:
19+
<ul class="inline-list">
20+
<li class="left">NaN</li>
21+
<li class="left">None</li>
22+
<li class="left">9999</li>
23+
<li class="left">"." (a period character)</li>
24+
</ul>
25+
</p>
26+
</div>
27+
<h2 class="secondary-headline">Import Studies</h2>
28+
<p class="errornote">Processing of Study files can take a while - please allow a few minutes for the process
29+
to
30+
finish.</p>
31+
<form action="" method="post" enctype="multipart/form-data">
32+
{% csrf_token %}
33+
{{ form.as_p }}
34+
<div class="submit-row">
35+
<input class="default" type="submit" value="Submit"/>
36+
<p class="deletelink-box">
37+
<a class="deletelink" href="{% url 'admin:studies_study_changelist' %}">Cancel</a>
38+
</p>
39+
</div>
40+
</form>
3641
</div>
37-
</form>
38-
</div>
39-
</div>
42+
</div>
4043
{% endblock content %}

0 commit comments

Comments
 (0)