La fonction a 2 paramètres mais 0 a été donnéSalut tout le monde,
J'essaie de passer une fonction à l'espace mémoire local de la fonction Parallel Assign
Cela ne fonctionne pas car JMP me dit que F a 2 paramètres mais 0 a été donné. Comment puis-je réparer cela?
Re: la fonction a 2 paramètres mais 0 a été donnéJMP transmet les arguments aux fonctions par valeur. Si je spécifie un argument en tant que variable (par exemple, la variable stockant la fonction utilisateur que vous avez définie), cela ne fonctionnera pas. Par exemple,
Names Default to Here( 1 );
f1 = Function( { x }, 2*x );
f2 = Function( { f, x }, 2 * f( x ) );
f2( f1, 3 );
J'ai la même erreur.
Je ne sais pas ce que vous essayez de faire, mais cela pourrait fonctionner si vous utilisez des expressions au lieu des fonctions utilisateur.
Re: la fonction a 2 paramètres mais 0 a été donnéJe réponds à une question qui pourrait ou non être la question que vous posez: je pense que vous avez écrit quelque chose comme ceci:
f=function(...);
parallel assign({ g = f }, ... )qui essaiera d'évaluer le côté droit de g = f et produira l'erreur que vous mentionnez.
Quelque chose comme ça fonctionnera:
parallel assign( { g = function(...) }, ... )voir https://community.jmp.com/t5/Discussions/How-to-pass-a-function-to-Parallel-Assign/mp/230728