Je suis un programmeur autodidacte assez novice utilisant Scilab. J'ai des fichiers .csv que je veux lire. Ce sont des valeurs textuelles et numériques mixtes, et ont un nombre variable de colonnes et de lignes. La partie du fichier qui m'intéresse a un nombre fixe de colonnes mais pas de lignes. Je peux sauter la première partie en utilisant l'argument en-tête mais j'ai aussi des cellules en bas dont je n'ai pas besoin. Un exemple de ce qu'il pourrait ressembler à:Est-il possible d'avoir une plage variable et des colonnes en utilisant csvRead dans Scilab 5.5.2
DATA,1,0,3,3960.4,3236,3373,-132
DATA,1,0,4,4544.5,3530,3588,-76
RANDOM TEXT,0
INFO,1,0,#+BHO0 _:WRF&-11,S%00-0-03-1
INFO,2,1,#*BHO0 _8WRF&-11,NAS%00-0-15-1
Je suis seulement intéressé par les lignes qui commencent par DATA. Si je tente d'exécuter csvRead sans enlever les lignes ci-dessous je reçois cette erreur:
Warning: Inconsistency found in the columns. At line 4993, found 2 columns
while the previous had 8.
J'ai actuellement un programme qui va lire le fichier et de le manipuler au besoin, mais je dois aller dans chaque fichier et supprimez le bas lignes Y a-t-il un moyen de contourner ceci?
Mon programme actuel ressemble à ceci:
D = uigetfile([".csv"],"path", "Choose a file name", %t);
filename = fullfile(D);
sub = ["DATA" "0"];
//Import data
data = csvRead(filename, ',', [], 'string', sub, [], [], 34);
edit(filename)
//determine # of rows
data_size = size(data);
limit = data_size(1);
Toutes les idées?
Merci beaucoup! Travaillé parfaitement! – user6437423