[Numpy][vstack] ajout d'une ligne - Problème
Bonjour à tous,
Je lis un tableau excel en utilisant xlrd et je remplis un tableau K99 de la façon suivante:
Code:
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)) |
Tout se passe pour le mieux pour les premières valeurs. Mon tableau K99 se remplit normalement.
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 :
Code:
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] |
la ligne dans K99:
Code:
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']] |
Quelqu'un a une idée ?
Changement de format dans this_row à effectué ?
Merci d'avance