from lib import csv_io
from lib import json_io

dengue = csv_io.read_csv('../data/dengue_small_region.csv')
population = csv_io.read_csv('../data/population.csv')

data = {}
elderData = {}
header = dengue[0]
dengue = dengue[1:]
for case in dengue:
    if case[-3] not in data:
        data[case[-3]] = 0
        elderData[case[-3]] = 0
    data[case[-3]] += 1
    if case[2][0] == '6' or case[2][0] == '7':
        elderData[case[-3]] += 1

header = [population[1][4]] + ['病例人數', '長者人數', '總百分比', '長者百分比']
population = population[2:]
new_data = {}
max_t = 0
max_e = 0
for region in population:
    code = region[2]
    people = region[4]
    region = [region[4]]
    if code in data:
        total = data[code]
        elder = elderData[code]
        region.append(total)
#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-
import requests
import csv
from datetime import datetime
from datetime import timedelta
from datetime import date
from geopy.distance import vincenty
from lib import json_io
from lib import csv_io

if __name__ == '__main__':
    data = csv_io.read_csv('./2015_dengue.csv')
    data = data[1:]

    count = 0
    new_data = []
    current_date = data[0][0]
    for row in data:
        event_date = row[0]
        if current_date == event_date:
            count += 1
        else:
            new_data.append({'date': current_date, 'value': count})
            count = 1
            current_date = event_date

    new_data.append({'date': current_date, 'value': count})
    json_io.write_json('../../data/2015_kao_bar.json', new_data)
Beispiel #3
0
from lib import csv_io
from lib import json_io

files = {
    'Vietnam': './data/Database- VN - Project VN 2.csv',
    'South Korea': './data/Database- SK - Project SK 2.csv'
}

stats = {}
output = []
for c, path in files.items():
    stats[c] = {}
    data = csv_io.read_csv(path)

    for row in data[1:]:
        if not row[4] or not row[6]:
            continue
        # "Financier's countries"
        if row[4] not in stats[c]:
            stats[c][row[4]] = 0
        stats[c][row[4]] += float(row[6])

for target, sourceObj in stats.items():
    for source_name, v in sourceObj.items():
        if source_name != target:
            if source_name == 'south Korea':
                source_name = 'South Korea'
            output.append({
                'source': source_name,
                'target': target,
                'value': round(v, 0)
Beispiel #4
0

def filter_data(input_):
    data = []
    for item in input_:
        data.append([item[4], item[8], item[9]])
    return data


if __name__ == '__main__':
    url = 'http://denguefever.csie.ncku.edu.tw/file/drug_all.csv'
    data = csv_io.req_csv(url, 'utf-8')
    data = filter_data(data)

    data = data[1:]
    dengue_data = csv_io.read_csv('../data/data.csv')
    tmp = dengue_data[-1][1]
    now = datetime.strptime(tmp, '%Y/%m/%d').date()

    header = ['日期', 'Latitude', 'Longitude']
    output_data = []
    for row in data:
        d = '2015年' + row[0]
        event_date = datetime.strptime(d, '%Y年%m月%d日').date()
        if event_date > now:
            break
        delta = now - event_date
        row[-1], row[-2] = float(row[-1]), float(row[-2])
        if delta.days < 7:
            output_data.append(row)
    output_data.insert(0, header)
from lib import csv_io
from lib import json_io
from datetime import datetime
from datetime import timedelta
from datetime import date

dengue = csv_io.read_csv('../data/tainan_population.csv')
header = dengue[0]
dengue = dengue[1:]

data = {}
for row in dengue:
    row[1] = row[1].replace(' ', '')
    if row[1] not in data:
        data[row[1]] = {}

    for i in range(7, len(row)):
        d = str(header[i])
        age = d.replace('歲', '').replace('-', '').replace('男', '').replace('女', '').replace('以上', '')
        age = int(age)
        number = int(row[i])
        if age < 20:
            if '0-20' in data[row[1]]:
                data[row[1]]['0-20'] += number
            else:
                data[row[1]]['0-20'] = number
        elif age < 40:
            if '20-40' in data[row[1]]:
                data[row[1]]['20-40'] += number
            else:
                data[row[1]]['20-40'] = number
Beispiel #6
0
from lib import csv_io
from datetime import datetime

data = csv_io.read_csv('./sheet.csv')
new = [['日期', '里別', 'Latitude', 'Longitude']]
data = data[1:]
for item in data:
    item[6] = datetime.strptime('2015/' + item[6], '%Y/%m/%d').date()

data = sorted(data, key=lambda x: x[6])

for item in data:
    if item[-3] == '陽性':
        item[6] = item[6].strftime('%Y/%m/%d')
        new.append([item[6], item[3], item[-2], item[-1]])
csv_io.write_csv('dengue.csv', new)
from lib import csv_io
from lib import json_io
from datetime import datetime
from datetime import timedelta
from datetime import date

dengue = csv_io.read_csv('../data/dengue_small_region.csv')
dengue = dengue[1:]

data = {}
for row in dengue:
    if row[-5] not in data:
        data[row[-5]] = {}
    age = row[2].replace('+', '').split('-')

    if len(age) == 2:
        age1, age2 = age
        age1 = int(age1)
        age2 = int(age2)
        if 0 <= age1 and age2 < 20:
            if '0-20' in data[row[-5]]:
                data[row[-5]]['0-20'] += 1
            else:
                data[row[-5]]['0-20'] = 1
        elif age2 <= 40:
            if '20-40' in data[row[-5]]:
                data[row[-5]]['20-40'] += 1
            else:
                data[row[-5]]['20-40'] = 1
        elif age2 <= 60:
            if '20-40' in data[row[-5]]:
# -*- coding: utf-8 -*-
import requests
import csv
import sys
from lib import csv_io


def write_csv(file_name, content):
    """write csv"""
    with open(file_name, 'w') as output_file:
        writer = csv.writer(output_file)
        writer.writerows(content)


if __name__ == '__main__':
    data = csv_io.read_csv('../data/dengue_all.csv')
    urls = [
        'http://data.tainan.gov.tw/dataset/3ad9da64-0c29-4299-b769-320b57a09be8/resource/7bf16e0a-2445-4ccf-a0a0-ae06a8fda4ac/download/z104104121207.csv',
        'http://data.tainan.gov.tw/dataset/3ad9da64-0c29-4299-b769-320b57a09be8/resource/d4af5055-3d2c-420f-ad12-373cfae430d3/download/z104104121208.csv'
    ]

    for u in urls:
        print(urls)
        data += csv_io.req_csv(u, 'utf-8')[1:]

    #data = csv_io.read_csv('../data/dengue_all.csv')
    for item in data:
        if not item[0]:
            del item
            continue
        if len(item) < 7: