Re: Problème de plage d'indices lors de l'augmentation de la boucle forSalut,
Je pense que votre problème est que N Cols (dt) augmente après chaque itération de votre boucle. Par conséquent, votre valeur d'index "i" dépasse le nombre d'éléments dans votre liste de collist.
Je suggère de capturer le nombre de colonnes dans dt en dehors de la boucle et de l'utiliser comme limite fixe.
path = "my file path with filename.jmp";
dt= open(path);
collist = dt <<GET column="" names=""></GET>
Il convient de noter que je ne sais pas pourquoi la boucle inverse fonctionne. Vous devriez rencontrer un problème similaire avec votre variable collist.
Faites-nous savoir si cela résout votre problème.
Meilleur,
TS
Re: Problème de plage d'indices lors de l'augmentation de la boucle forLes coups,
Oui, l'erreur disparaît. Cependant, j'utilise toujours i<= N Cols (dt) et aucun problème. Je ne comprends pas pourquoi dans cette situation la même méthode a échoué?
Re: Problème de plage d'indices lors de l'augmentation de la boucle for@Thierry_S la boucle inverse capture ncols(dt) au début de la boucle, exactement une fois.
@dadawasozo
- la boucle inverse n'est pas tout à fait la même car elle utilise >colnumber+1 et devrait probablement être >=colnumber+1 pour correspondre à la boucle avant qui ne fonctionne pas.
- Dans la boucle avant, ncols(dt) est réévalué à chaque fois qu'il boucle et continue de grossir, mais collist ne grossit pas, donc finalement l'indice échoue.
J'aime @Thierry_S solution.
Problème de plage d'indices lors de l'augmentation de la boucle forJ'ai eu l'erreur "Subscript Range in access or evaluation of 'collist[ /*###*/i]' , collist[/*###*/i]" lors de la création d'une simple nouvelle colonne () avec augmentation de la boucle for. J'ai pu le résoudre en utilisant la diminution de la boucle for. Cependant, je veux avoir créé une colonne ordonnée pour suivre l'augmentation de la boucle. Je ne comprends pas ce qui cause l'erreur lors de l'utilisation de la boucle for croissante ici. Quelqu'un peut-il suggérer comment je peux utiliser l'augmentation de la boucle ici? si possible, quelqu'un peut-il expliquer pourquoi l'erreur se produira lors de l'augmentation de la boucle for?
path = "my file path with filename.jmp";
dt= open(path);
collist = dt <<GET column="" names="">colnumber+1,i--, fixed issue but created column order inverted
dt <<NEW column=""></NEW></GET>
Automatisation et scriptÉtudes de consommation et de marchéAccès aux donnéesIngénierie de la qualité et des procédés