Permitir que todas las funciones de columna acepten argumentos Column("Name") para simplificar la creación de fórmulas de columna desde JSL.¿Qué inspiró esta petición en la lista de deseos?
La interfaz de usuario de JMP me ha acostumbrado a seleccionar columnas y arrastrarlas a cuadros, incluido el editor de fórmulas. En segundo plano, esos cuadros de lista de columnas generan cadenas que corresponden a los nombres de las columnas, pero así no es como se muestran las cosas en los cuadros de diálogo; estoy arrastrando las columnas.
pauldeen_0-1789654679720.pngpauldeen_0-1789654679720.pngpauldeen_0-1789654679720.png
Este mismo comportamiento no funciona en la programación de scripts:
dt = Open( "$SAMPLE_DATA/Cars.jmp" );
ColList = {};
For(i=1, i<=NCols(), i++,
If(Column(i)<
<GETDATATYPE></GETDATATYPE>
<P>Este ejemplo genera una lista no válida de objetos Column("Name") que la función Mean() no puede procesar. Esto dificulta mucho más el trabajo con fórmulas de columna para un programador principiante.</P> <P>Consulta esta discusión: <A href="https://community.jmp.com/t5/Discussions/How-to-create-an-average-column-with-JSL-based-on-random-columns/m-p/968140#M110445" target="_blank">https://community.jmp.com/t5/Discussions/How-to-create-an-average-column-with-JSL-based-on-random-columns/mp/968140#M110445</A></P> <P>Consulte el caso de soporte: 00345202</P> <P><STRONG>¿Qué mejora le gustaría ver?</STRONG></P> <P>Extienda todas las funciones de fórmula de columna para que acepten objetos de tipo Columna("Nombre") y conviértalos internamente a un tipo de columna indexable de estilo :"Nombre"n. De esta manera, aunque técnicamente sea un objeto diferente, coincide con el estilo de la interfaz de usuario al arrastrar y soltar columnas.</P> <P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="pauldeen_1-1789654714335.png" style="width: 400px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="pauldeen_1-1789654714335.png" style="width: 155px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="pauldeen_1-1789654714335.png" style="width: 155px;"><span class="lia-inline-image-display-wrapper" image-alt="pauldeen_1-1789654714335.png" style="width: 155px;"><img src="https://us.v-cdn.net/6038925/uploads/images/117467i4343BA562F3D604F/pauldeen_1-1789654714335.png" role="button" title="pauldeen_1-1789654714335.png" alt="pauldeen_1-1789654714335.png" /></span><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">pauldeen_1-1789654714335.png</SPAN></SPAN><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">pauldeen_1-1789654714335.png</SPAN></SPAN><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">pauldeen_1-1789654714335.png</SPAN></SPAN></P> <P>Todas las funciones que se enumeran aquí deben ampliarse para aceptar el tipo column().</P> <P><STRONG>¿Por qué es importante esta idea?</STRONG></P> <P>Esto hace que JSL y la interfaz de usuario funcionen lógicamente de la misma manera, lo que reduce las barreras de entrada para los nuevos programadores.</P> <BR /> <BR />
Re: Permitir que todas las funciones de columna acepten argumentos Column("Name") para simplificar la creación de fórmulas de columna desde JSL.Aquí tenéis una publicación de la comunidad sobre las diferencias entre Columna y Como Columna:
Column() vs As Column() vs datable:column vs dt:As name("column")
Piensa en Columna() como el objeto que tiene propiedades como color de valor, especificaciones, etc. Como Column() significa: dame el valor de la fila actual; esto es lo que se necesita en las fórmulas.
Las fórmulas en realidad necesitan Como Columna() , no columna().
¿Le parece bien una solución alternativa que utilice Como Columna() en lugar de Columna() ?
dt = Open( "$SAMPLE_DATA/Cars.jmp" );
ColList = {};
For(i=1, i<=NCols(), i++,
If(Column(i)<
<GETDATATYPE></GETDATATYPE>
Re: Permitir que todas las funciones de columna acepten argumentos Column("Name") para simplificar la creación de fórmulas de columna desde JSL.A veces, se utiliza la columna () en las fórmulas.
Por ejemplo, si quieres comprobar si un valor está dentro de las especificaciones, entonces se necesita una estructura bastante compleja para solicitar a la columna() [la que tiene las propiedades de columna] la especificación y comparar el valor de la fila actual ( como columna() ) con esta especificación.
Si se utiliza columna() como alternativa a como columna() , dichas funciones ya no funcionarán.
Por otro lado, dado que la pregunta está en las especificaciones, espero que JMP 2027 proporcione una función auxiliar para facilitar dichos cálculos.
:folded_hands: está en especificación (valor)