Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ####################
- #
- # Travail TD1
- # Realise par: Caroline Beauchamp
- # Remise: 09/10/2018
- #
- ####################
- # importation du CSV contenant les donnees
- import csv # importation du module CSV
- data = [] # =creation du tableau de donnees
- # lecture du fichier, a noter que le "path" doit etre modifie selon lemplacement du fichier CSV
- with open('C:\\Users\\mydar\\Downloads\\census_data_1.csv', 'rb') as csvfile:
- csvreader = csv.reader(csvfile, delimiter=';')
- for row in csvreader:
- data.append(row) # ajout des lignes du csv dans data
- del data[0] # pour enlever l entete de liste
- # attribution des variables
- pop2004 = []
- pop2013 = []
- pays_POP_croissance = "null"
- diff_popC = 0 # type: int
- diff_pop_MAX = 0 # type: int
- diff_P_popC = 0 # type: float
- diff_P_pop_MAX = 0 # type: float
- pays_P_POP_croissance = "null"
- pays_POP_decroissance = "null"
- diff_popD = 0 # type: int
- diff_pop_MIN = 9999999999. # type: int
- diff_P_popD = 0 # type: float
- diff_P_pop_MIN = 9999999999. # type: float
- pays_P_POP_decroissance = "null"
- hommesPlus = []
- count_homme = 0
- # en conservant tt les valeur on peut reutiliser popAN
- for i in data:
- if i[2] == '2004':
- pop2004.append(i)
- elif i[2] == '2013':
- pop2013.append(i)
- for x in pop2004:
- for j in pop2013:
- if x[1] == j[1] and x[4] != '(NA)':
- diff_popC = (int(j[4])) - (int(x[4]))
- if (diff_popC) > (diff_pop_MAX):
- diff_pop_MAX = diff_popC
- pays_POP_croissance = x[1]
- print pays_POP_croissance
- # q2 diff en pourcentage
- for x in pop2004:
- for j in pop2013:
- if x[1] == j[1] and x[4] != '(NA)':
- diff_P_popC = (((float(j[4])) - (float(x[4]))) / (float(x[4]))) * 100
- if (diff_P_popC) > (diff_P_pop_MAX):
- diff_P_pop_MAX = diff_P_popC
- pays_P_POP_croissance = x[1]
- print pays_P_POP_croissance, diff_P_pop_MAX
- # q3
- for x in pop2004:
- for j in pop2013:
- if x[1] == j[1] and x[4] != '(NA)':
- diff_popD = (int(j[4])) - (int(x[4]))
- if (diff_popD) < (diff_pop_MIN):
- diff_pop_MIN = diff_popD
- pays_POP_decroissance = x[1]
- print pays_POP_decroissance # ecrire belle phrase
- # q4
- for x in pop2004:
- for j in pop2013:
- if x[1] == j[1] and x[4] != '(NA)':
- diff_P_popD = (((float(j[4])) - (float(x[4]))) / (float(x[4]))) * 100
- if (diff_P_popD) < (diff_P_pop_MIN):
- diff_P_pop_MIN = diff_P_popD
- pays_P_POP_decroissance = x[1]
- print pays_P_POP_decroissance, diff_P_pop_MIN # ecrire belle phrase
- # q5
- annee = [] # creation de liste dannee pck peut varier si on change de file
- for i in data:
- if i[2] not in annee:
- annee.append(i[2])
- for i in data:
- if i[5] > i[6] and i[5] != '(NA)' and i[6] != '(NA)' and all(
- annee):
- if i[1] not in hommesPlus:
- hommesPlus.append(i[1]) # si on veut aller consulter la liste des pays, appeler hommesPlus
- count_homme += 1
- print count_homme # belle phrase
- # q6
- count = 1
- list_pays = []
- pop2013.sort(key=lambda x:(int(x[4])))
- for i in data:
- if count < 11:
- list_pays.append(pop2013[-count])
- count += 1
- for x in list_pays:
- print x[1]
- # q7
- popMondiale = {}
- somme = 0 # type: int
- value_croissance = 0 # type: int
- annee_plus = 0 # type: int
- tempMonde = 0.00# type: float
- ratioMonde = 0.00 # type: float
- for i in annee:
- popMondiale[i] = None
- for x in data:
- for y in popMondiale:
- if popMondiale[y] == popMondiale[x[2]] and x[4] != '(NA)':
- somme += int(x[4])
- popMondiale[y] = float(somme)
- for y in popMondiale:
- if (float(popMondiale[y])) > (float(popMondiale[y-1])):
- tempMonde = (((float(popMondiale[y]) - (float(popMondiale[y-1]))) / (float(popMondiale[y-1]))))*100
- if tempMonde > ratioMonde:
- ratioMonde = tempMonde
- anneeMonde = popMondiale[y]
- print anneeMonde, ratioMonde
- #q8
- data_NonDispo = []
- for i in data:
- if i[4] == '(NA)':
- data_NonDispo.append(i)
- for i in data_NonDispo:
- print i[1], i[2]
- #q9
- ratioFM = 0.00
- tempRatio = 0.00
- paysFM = "null"
- for i in data:
- if i[6] > i[5] and i[5] != '(NA)' and i[6] != '(NA)' and all(annee):
- tempRatio = (float(i[6]))/(float(i[5]))
- if tempRatio > ratioFM:
- ratioFM = tempRatio
- paysFM = i[1]
- print paysFM, ratioFM
Advertisement
Add Comment
Please, Sign In to add comment