Skip to content
Snippets Groups Projects
Commit a00eaaef authored by Ivan Pavlovich's avatar Ivan Pavlovich
Browse files

Calculated number of published pubmed articles for ncds with keywords

parent e4a6a294
Branches
No related tags found
No related merge requests found
......@@ -8,10 +8,34 @@ sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "../../"
from variables.pubmed import NCDS_MESH_TERM, KEYWORDS_MESH_TERM, KEYWORDS_MESH_SUBHEADING, KEYWORDS_MESH_SITE_PROPOSITION, KEYWORDS_MESH_PROPOSITION
CATEGORIES = [
"KEYWORDS",
"SUBHEADINGS",
"SITE PROPOSITION",
"PROPOSITION"
]
INTERVALS = [
"day",
"week",
"month"
]
DATA_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), "./data"))
file_path = f"{DATA_DIR}/save_3_years.json"
def lower_keywords(mesh_terms):
res = []
for _, mesh_term in mesh_terms.items():
if isinstance(mesh_term, list):
res.append([part.lower() for part in mesh_term])
else:
res.append(mesh_term.lower())
return res
def get_date_indices(date, start_date):
delta_days = (date - start_date).days
day_index = delta_days
......@@ -37,26 +61,149 @@ def match_mesh_terms(article_mesh_terms, ncd, keyword):
else:
return False
def init_index(category, counts, ncd, article_date):
start_date = datetime(2022, 1, 1)
day_index, week_index, month_index = get_date_indices(article_date, start_date)
if day_index not in counts[ncd][category]["day"]:
counts[ncd][category]["day"][day_index] = []
if week_index not in counts[ncd][category]["week"]:
counts[ncd][category]["week"][week_index] = []
if month_index not in counts[ncd][category]["month"]:
counts[ncd][category]["month"][month_index] = []
def add_article(article, category, counts, ncd, article_date):
start_date = datetime(2022, 1, 1)
day_index, week_index, month_index = get_date_indices(article_date, start_date)
if article["PMID"] not in counts[ncd][category]["day"][day_index]:
counts[ncd][category]["day"][day_index].append(article["PMID"])
if article["PMID"] not in counts[ncd][category]["week"][week_index]:
counts[ncd][category]["week"][week_index].append(article["PMID"])
if article["PMID"] not in counts[ncd][category]["month"][month_index]:
counts[ncd][category]["month"][month_index].append(article["PMID"])
with open(file_path, "r", encoding="utf-8") as file:
data = json.load(file)
print(len(data))
ncds_mesh_terms = [mesh_term.lower() for ncd, mesh_term in NCDS_MESH_TERM.items()]
keywords_mesh_terms = [mesh_term.lower() for keyword, mesh_term in KEYWORDS_MESH_TERM.items()]
keywords_subheading_mesh_terms = keywords_mesh_terms + [mesh_term.lower() for mesh_term in KEYWORDS_MESH_SUBHEADING]
keywords_site_proposition_mesh_terms = keywords_subheading_mesh_terms + [mesh_term.lower() for mesh_term in KEYWORDS_MESH_SITE_PROPOSITION]
keywords_proposition_mesh_terms = keywords_site_proposition_mesh_terms + [mesh_term.lower() for mesh_term in KEYWORDS_MESH_PROPOSITION]
keywords_mesh_terms = lower_keywords(KEYWORDS_MESH_TERM)
keywords_subheading_mesh_terms = lower_keywords(KEYWORDS_MESH_SUBHEADING)
keywords_site_proposition_mesh_terms = lower_keywords(KEYWORDS_MESH_SITE_PROPOSITION)
keywords_proposition_mesh_terms = lower_keywords(KEYWORDS_MESH_PROPOSITION)
counts = {}
for ncd in ncds_mesh_terms:
counts[ncd] = {
"KEYWORDS" : {
"day": {},
"week": {},
"month": {}
},
"SUBHEADINGS" : {
"day": {},
"week": {},
"month": {}
},
"SITE PROPOSITION" : {
"day": {},
"week": {},
"month": {}
},
"PROPOSITION" : {
"day": {},
"week": {},
"month": {}
},
}
start_date = datetime(2022, 1, 1)
end_date = datetime(2024, 12, 31)
current_date = start_date
while(current_date < end_date):
day_index, week_index, month_index = get_date_indices(current_date, start_date)
for category in CATEGORIES:
counts[ncd][category]["day"][day_index] = []
counts[ncd][category]["week"][week_index] = []
counts[ncd][category]["month"][month_index] = []
current_date += timedelta(days=1)
counts["ALL"] = {
"KEYWORDS" : {
"day": {},
"week": {},
"month": {}
},
"SUBHEADINGS" : {
"day": {},
"week": {},
"month": {}
},
"SITE PROPOSITION" : {
"day": {},
"week": {},
"month": {}
},
"PROPOSITION" : {
"day": {},
"week": {},
"month": {}
},
}
start_date = datetime(2022, 1, 1)
end_date = datetime(2024, 12, 31)
current_date = start_date
while(current_date < end_date):
day_index, week_index, month_index = get_date_indices(current_date, start_date)
for category in CATEGORIES:
counts["ALL"][category]["day"][day_index] = []
counts["ALL"][category]["week"][week_index] = []
counts["ALL"][category]["month"][month_index] = []
current_date += timedelta(days=1)
for article in data:
mesh_terms = [mesh_term.lower() for mesh_term in article["MeshTerms"]]
article_date = datetime(int(article["Date"]["Year"]), int(article["Date"]["Month"]), int(article["Date"]["Day"]))
if "ALL" not in counts:
counts["ALL"] = {}
counts["ALL"] = {
"KEYWORDS" : {
"day": {},
"week": {},
"month": {}
},
"SUBHEADINGS" : {
"day": {},
"week": {},
"month": {}
},
"SITE PROPOSITION" : {
"day": {},
"week": {},
"month": {}
},
"PROPOSITION" : {
"day": {},
"week": {},
"month": {}
},
}
for ncd in ncds_mesh_terms:
if ncd not in counts:
......@@ -85,104 +232,92 @@ for article in data:
for keyword in keywords_mesh_terms:
if match_mesh_terms(mesh_terms, ncd, mesh_terms):
if match_mesh_terms(mesh_terms, ncd, keyword):
init_index("KEYWORDS", counts, ncd, article_date)
init_index("SUBHEADINGS", counts, ncd, article_date)
init_index("SITE PROPOSITION", counts, ncd, article_date)
init_index("PROPOSITION", counts, ncd, article_date)
article_date = datetime(int(article["Date"]["Year"]), int(article["Date"]["Month"]), int(article["Date"]["Day"]))
add_article(article, "KEYWORDS", counts, ncd, article_date)
add_article(article, "SUBHEADINGS", counts, ncd, article_date)
add_article(article, "SITE PROPOSITION", counts, ncd, article_date)
add_article(article, "PROPOSITION", counts, ncd, article_date)
day_index, week_index, month_index = get_date_indices(article_date, start_date)
init_index("KEYWORDS", counts, "ALL", article_date)
init_index("SUBHEADINGS", counts, "ALL", article_date)
init_index("SITE PROPOSITION", counts, "ALL", article_date)
init_index("PROPOSITION", counts, "ALL", article_date)
if day_index not in counts[ncd]["KEYWORDS"]["day"]:
counts[ncd]["KEYWORDS"]["day"][day_index] = []
if week_index not in counts[ncd]["KEYWORDS"]["week"]:
counts[ncd]["KEYWORDS"]["week"][week_index] = []
if month_index not in counts[ncd]["KEYWORDS"]["month"]:
counts[ncd]["KEYWORDS"]["month"][month_index] = []
if article["PMID"] not in counts[ncd]["KEYWORDS"]["day"][day_index]:
counts[ncd]["KEYWORDS"]["day"][day_index].append(article["PMID"])
if article["PMID"] not in counts[ncd]["KEYWORDS"]["week"][week_index]:
counts[ncd]["KEYWORDS"]["week"][week_index].append(article["PMID"])
if article["PMID"] not in counts[ncd]["KEYWORDS"]["month"][month_index]:
counts[ncd]["KEYWORDS"]["month"][month_index].append(article["PMID"])
add_article(article, "KEYWORDS", counts, "ALL", article_date)
add_article(article, "SUBHEADINGS", counts, "ALL", article_date)
add_article(article, "SITE PROPOSITION", counts, "ALL", article_date)
add_article(article, "PROPOSITION", counts, "ALL", article_date)
for keyword in keywords_subheading_mesh_terms:
if match_mesh_terms(mesh_terms, ncd, mesh_terms):
article_date = datetime(int(article["Date"]["Year"]), int(article["Date"]["Month"]), int(article["Date"]["Day"]))
day_index, week_index, month_index = get_date_indices(article_date, start_date)
if day_index not in counts[ncd]["SUBHEADINGS"]["day"]:
counts[ncd]["SUBHEADINGS"]["day"][day_index] = []
if week_index not in counts[ncd]["SUBHEADINGS"]["week"]:
counts[ncd]["SUBHEADINGS"]["week"][week_index] = []
if match_mesh_terms(mesh_terms, ncd, keyword):
init_index("SUBHEADINGS", counts, ncd, article_date)
init_index("SITE PROPOSITION", counts, ncd, article_date)
init_index("PROPOSITION", counts, ncd, article_date)
if month_index not in counts[ncd]["SUBHEADINGS"]["month"]:
counts[ncd]["SUBHEADINGS"]["month"][month_index] = []
add_article(article, "SUBHEADINGS", counts, ncd, article_date)
add_article(article, "SITE PROPOSITION", counts, ncd, article_date)
add_article(article, "PROPOSITION", counts, ncd, article_date)
if article["PMID"] not in counts[ncd]["SUBHEADINGS"]["day"][day_index]:
counts[ncd]["SUBHEADINGS"]["day"][day_index].append(article["PMID"])
init_index("SUBHEADINGS", counts, "ALL", article_date)
init_index("SITE PROPOSITION", counts, "ALL", article_date)
init_index("PROPOSITION", counts, "ALL", article_date)
if article["PMID"] not in counts[ncd]["SUBHEADINGS"]["week"][week_index]:
counts[ncd]["SUBHEADINGS"]["week"][week_index].append(article["PMID"])
if article["PMID"] not in counts[ncd]["SUBHEADINGS"]["month"][month_index]:
counts[ncd]["SUBHEADINGS"]["month"][month_index].append(article["PMID"])
add_article(article, "SUBHEADINGS", counts, "ALL", article_date)
add_article(article, "SITE PROPOSITION", counts, "ALL", article_date)
add_article(article, "PROPOSITION", counts, "ALL", article_date)
for keyword in keywords_site_proposition_mesh_terms:
if match_mesh_terms(mesh_terms, ncd, mesh_terms):
article_date = datetime(int(article["Date"]["Year"]), int(article["Date"]["Month"]), int(article["Date"]["Day"]))
day_index, week_index, month_index = get_date_indices(article_date, start_date)
if day_index not in counts[ncd]["SITE PROPOSITION"]["day"]:
counts[ncd]["SITE PROPOSITION"]["day"][day_index] = []
if match_mesh_terms(mesh_terms, ncd, keyword):
init_index("SITE PROPOSITION", counts, ncd, article_date)
init_index("PROPOSITION", counts, ncd, article_date)
if week_index not in counts[ncd]["SITE PROPOSITION"]["week"]:
counts[ncd]["SITE PROPOSITION"]["week"][week_index] = []
add_article(article, "SITE PROPOSITION", counts, ncd, article_date)
add_article(article, "PROPOSITION", counts, ncd, article_date)
if month_index not in counts[ncd]["SITE PROPOSITION"]["month"]:
counts[ncd]["SITE PROPOSITION"]["month"][month_index] = []
init_index("SITE PROPOSITION", counts, "ALL", article_date)
init_index("PROPOSITION", counts, "ALL", article_date)
if article["PMID"] not in counts[ncd]["SITE PROPOSITION"]["day"][day_index]:
counts[ncd]["SITE PROPOSITION"]["day"][day_index].append(article["PMID"])
if article["PMID"] not in counts[ncd]["SITE PROPOSITION"]["week"][week_index]:
counts[ncd]["SITE PROPOSITION"]["week"][week_index].append(article["PMID"])
if article["PMID"] not in counts[ncd]["SITE PROPOSITION"]["month"][month_index]:
counts[ncd]["SITE PROPOSITION"]["month"][month_index].append(article["PMID"])
add_article(article, "SITE PROPOSITION", counts, "ALL", article_date)
add_article(article, "PROPOSITION", counts, "ALL", article_date)
for keyword in keywords_proposition_mesh_terms:
if match_mesh_terms(mesh_terms, ncd, mesh_terms):
if match_mesh_terms(mesh_terms, ncd, keyword):
init_index("PROPOSITION", counts, ncd, article_date)
article_date = datetime(int(article["Date"]["Year"]), int(article["Date"]["Month"]), int(article["Date"]["Day"]))
add_article(article, "PROPOSITION", counts, ncd, article_date)
day_index, week_index, month_index = get_date_indices(article_date, start_date)
init_index("PROPOSITION", counts, "ALL", article_date)
if day_index not in counts[ncd]["PROPOSITION"]["day"]:
counts[ncd]["PROPOSITION"]["day"][day_index] = []
add_article(article, "PROPOSITION", counts, "ALL", article_date)
if week_index not in counts[ncd]["PROPOSITION"]["week"]:
counts[ncd]["PROPOSITION"]["week"][week_index] = []
for ncd in ncds_mesh_terms:
for category in CATEGORIES:
for interval in INTERVALS:
counts[ncd][category][interval] = [len(tmp) for key, tmp in counts[ncd][category][interval].items()]
if month_index not in counts[ncd]["PROPOSITION"]["month"]:
counts[ncd]["PROPOSITION"]["month"][month_index] = []
counts[ncd][category][interval] = {
"min": min(counts[ncd][category][interval]),
"max": max(counts[ncd][category][interval]),
"mean": statistics.mean(counts[ncd][category][interval])
}
if article["PMID"] not in counts[ncd]["PROPOSITION"]["day"][day_index]:
counts[ncd]["PROPOSITION"]["day"][day_index].append(article["PMID"])
for category in CATEGORIES:
for interval in INTERVALS:
counts["ALL"][category][interval] = [len(tmp) for key, tmp in counts["ALL"][category][interval].items()]
if article["PMID"] not in counts[ncd]["PROPOSITION"]["week"][week_index]:
counts[ncd]["PROPOSITION"]["week"][week_index].append(article["PMID"])
counts["ALL"][category][interval] = {
"min": min(counts["ALL"][category][interval]),
"max": max(counts["ALL"][category][interval]),
"mean": statistics.mean(counts["ALL"][category][interval])
}
if article["PMID"] not in counts[ncd]["PROPOSITION"]["month"][month_index]:
counts[ncd]["PROPOSITION"]["month"][month_index].append(article["PMID"])
with open(f"{DATA_DIR}/locale_articles_count.json", "w") as json_file:
json.dump(counts, json_file, indent=4)
\ No newline at end of file
{
"noncommunicable diseases": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 3,
"mean": 0.20639269406392693
},
"week": {
"min": 0,
"max": 6,
"mean": 1.4394904458598725
},
"month": {
"min": 2,
"max": 12,
"mean": 6.277777777777778
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 3,
"mean": 0.20639269406392693
},
"week": {
"min": 0,
"max": 6,
"mean": 1.4394904458598725
},
"month": {
"min": 2,
"max": 12,
"mean": 6.277777777777778
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 3,
"mean": 0.2328767123287671
},
"week": {
"min": 0,
"max": 6,
"mean": 1.624203821656051
},
"month": {
"min": 2,
"max": 14,
"mean": 7.083333333333333
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 4,
"mean": 0.34885844748858447
},
"week": {
"min": 0,
"max": 8,
"mean": 2.43312101910828
},
"month": {
"min": 4,
"max": 17,
"mean": 10.61111111111111
}
}
},
"diabetes mellitus": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 5,
"mean": 0.7497725204731575
},
"week": {
"min": 1,
"max": 11,
"mean": 5.248407643312102
},
"month": {
"min": 3,
"max": 31,
"mean": 22.27027027027027
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 5,
"mean": 0.7497725204731575
},
"week": {
"min": 1,
"max": 11,
"mean": 5.248407643312102
},
"month": {
"min": 3,
"max": 31,
"mean": 22.27027027027027
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 8,
"mean": 1.0454959053685169
},
"week": {
"min": 2,
"max": 15,
"mean": 7.318471337579618
},
"month": {
"min": 3,
"max": 44,
"mean": 31.054054054054053
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 10,
"mean": 1.4249317561419472
},
"week": {
"min": 3,
"max": 20,
"mean": 9.97452229299363
},
"month": {
"min": 5,
"max": 57,
"mean": 42.32432432432432
}
}
},
"neoplasms": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 16,
"mean": 2.692447679708826
},
"week": {
"min": 2,
"max": 33,
"mean": 18.727848101265824
},
"month": {
"min": 14,
"max": 101,
"mean": 79.97297297297297
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 16,
"mean": 2.692447679708826
},
"week": {
"min": 2,
"max": 33,
"mean": 18.727848101265824
},
"month": {
"min": 14,
"max": 101,
"mean": 79.97297297297297
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 16,
"mean": 2.735213830755232
},
"week": {
"min": 2,
"max": 33,
"mean": 19.025316455696203
},
"month": {
"min": 14,
"max": 101,
"mean": 81.24324324324324
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 21,
"mean": 3.5281818181818183
},
"week": {
"min": 2,
"max": 43,
"mean": 24.563291139240505
},
"month": {
"min": 17,
"max": 127,
"mean": 104.89189189189189
}
}
},
"respiratory tract diseases": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 1,
"mean": 0.02281021897810219
},
"week": {
"min": 0,
"max": 2,
"mean": 0.15822784810126583
},
"month": {
"min": 0,
"max": 3,
"mean": 0.6756756756756757
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 1,
"mean": 0.02281021897810219
},
"week": {
"min": 0,
"max": 2,
"mean": 0.15822784810126583
},
"month": {
"min": 0,
"max": 3,
"mean": 0.6756756756756757
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 1,
"mean": 0.02281021897810219
},
"week": {
"min": 0,
"max": 2,
"mean": 0.15822784810126583
},
"month": {
"min": 0,
"max": 3,
"mean": 0.6756756756756757
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 1,
"mean": 0.0364963503649635
},
"week": {
"min": 0,
"max": 2,
"mean": 0.25316455696202533
},
"month": {
"min": 0,
"max": 3,
"mean": 1.0810810810810811
}
}
},
"cardiovascular diseases": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 5,
"mean": 0.6584699453551912
},
"week": {
"min": 0,
"max": 13,
"mean": 4.575949367088608
},
"month": {
"min": 3,
"max": 40,
"mean": 19.54054054054054
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 5,
"mean": 0.6584699453551912
},
"week": {
"min": 0,
"max": 13,
"mean": 4.575949367088608
},
"month": {
"min": 3,
"max": 40,
"mean": 19.54054054054054
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 5,
"mean": 0.6930783242258652
},
"week": {
"min": 0,
"max": 13,
"mean": 4.8164556962025316
},
"month": {
"min": 3,
"max": 42,
"mean": 20.56756756756757
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 8,
"mean": 1.1474067333939946
},
"week": {
"min": 1,
"max": 24,
"mean": 7.981012658227848
},
"month": {
"min": 5,
"max": 58,
"mean": 34.08108108108108
}
}
},
"mental health": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 8,
"mean": 1.1856232939035487
},
"week": {
"min": 1,
"max": 21,
"mean": 8.246835443037975
},
"month": {
"min": 4,
"max": 52,
"mean": 35.21621621621622
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 8,
"mean": 1.1856232939035487
},
"week": {
"min": 1,
"max": 21,
"mean": 8.246835443037975
},
"month": {
"min": 4,
"max": 52,
"mean": 35.21621621621622
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 8,
"mean": 1.2438580527752503
},
"week": {
"min": 1,
"max": 22,
"mean": 8.651898734177216
},
"month": {
"min": 4,
"max": 55,
"mean": 36.945945945945944
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 11,
"mean": 2.1618181818181816
},
"week": {
"min": 1,
"max": 32,
"mean": 15.050632911392405
},
"month": {
"min": 8,
"max": 84,
"mean": 64.27027027027027
}
}
},
"diabetes mellitus, type 1": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 3,
"mean": 0.3072014585232452
},
"week": {
"min": 0,
"max": 8,
"mean": 2.132911392405063
},
"month": {
"min": 3,
"max": 19,
"mean": 9.108108108108109
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 3,
"mean": 0.3072014585232452
},
"week": {
"min": 0,
"max": 8,
"mean": 2.132911392405063
},
"month": {
"min": 3,
"max": 19,
"mean": 9.108108108108109
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 13,
"mean": 1.5141037306642402
},
"week": {
"min": 3,
"max": 30,
"mean": 10.531645569620252
},
"month": {
"min": 5,
"max": 66,
"mean": 44.972972972972975
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 13,
"mean": 1.5941765241128298
},
"week": {
"min": 3,
"max": 30,
"mean": 11.08860759493671
},
"month": {
"min": 5,
"max": 68,
"mean": 47.351351351351354
}
}
},
"diabetes mellitus, type 2": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 7,
"mean": 0.9763421292083713
},
"week": {
"min": 0,
"max": 14,
"mean": 6.791139240506329
},
"month": {
"min": 6,
"max": 45,
"mean": 29
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 7,
"mean": 0.9763421292083713
},
"week": {
"min": 0,
"max": 14,
"mean": 6.791139240506329
},
"month": {
"min": 6,
"max": 45,
"mean": 29
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 10,
"mean": 1.520909090909091
},
"week": {
"min": 1,
"max": 23,
"mean": 10.58860759493671
},
"month": {
"min": 8,
"max": 61,
"mean": 45.21621621621622
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 14,
"mean": 2.099090909090909
},
"week": {
"min": 2,
"max": 28,
"mean": 14.613924050632912
},
"month": {
"min": 10,
"max": 84,
"mean": 62.4054054054054
}
}
},
"ALL": {
"KEYWORDS": {
"day": {
"min": 0,
"max": 39,
"mean": 6.54
},
"week": {
"min": 8,
"max": 69,
"mean": 45.53164556962025
},
"month": {
"min": 31,
"max": 262,
"mean": 194.43243243243242
}
},
"SUBHEADINGS": {
"day": {
"min": 0,
"max": 39,
"mean": 6.54
},
"week": {
"min": 8,
"max": 69,
"mean": 45.53164556962025
},
"month": {
"min": 31,
"max": 262,
"mean": 194.43243243243242
}
},
"SITE PROPOSITION": {
"day": {
"min": 0,
"max": 47,
"mean": 8.478181818181818
},
"week": {
"min": 8,
"max": 93,
"mean": 59.0253164556962
},
"month": {
"min": 34,
"max": 310,
"mean": 252.05405405405406
}
},
"PROPOSITION": {
"day": {
"min": 0,
"max": 67,
"mean": 11.658181818181818
},
"week": {
"min": 9,
"max": 124,
"mean": 81.16455696202532
},
"month": {
"min": 46,
"max": 431,
"mean": 346.5945945945946
}
}
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment