Bonjour à tous,
Je lis un tableau excel en utilisant xlrd et je remplis un tableau K99 de la façon suivante:
Tout se passe pour le mieux pour les premières valeurs. Mon tableau K99 se remplit normalement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 import xlrd3 as xlrd import numpy as np b = xlrd.open_workbook('données.xls') s=b.sheet_by_index(0) K99=[] for row in range(s.nrows): this_row = [] for col in range(s.ncols): this_row.append(s.cell_value(row,col)) if K99==[]: K99.append(this_row) elif K99!=[]: K99=np.vstack((K99, this_row))
Mais lorsque this_row contient des valeurs supérieur à la dizaine de million, np.vstack ajoute a K99 ces valeurs mais sans l'unité. Exemple :
Tableau excel : 42 116 156.00
valeur dans this_row:42 116 156.00
valeur dans K99 : 42 116 15
Embêtant !
Autre exemple tiré de mes données :
la valeur de this_row :
la ligne dans K99:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ['', 'x', 41014.0, 21666240.0, 21666440.0, 21666627.0, 21666779.0, 21666896.0, 21667068.0, 21667172.0, 21667322.0, 21667510.0, 21667844.0, 21668418.0, 21669223.0, 21669988.0, 21670835.0, 21671670.0, 21672451.0, 21672979.0, 21673533.0, 21674169.0, 21674949.0, 21675630.0, 21676496.0, 21677364.0, 21678166.0, 21678458.0]
Quelqu'un a une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 [['' 'x' '41014.0' '2166624' '2166644' '2166662' '2166677' '2166689' '2166706' '2166717' '2166732' '2166751' '2166784' '2166841' '2166922' '2166998' '2167083' '2167167' '2167245' '2167297' '2167353' '2167416' '2167494' '2167563' '2167649' '2167736' '2167816' '2167845']]
Changement de format dans this_row à effectué ?
Merci d'avance
Partager