Saltar navegación

Documentación de FlexPro 2025

Asignación indexada

Asigna un nuevo valor a una sección de un conjunto de datos o sustituye una subcadena o un único carácter de una cadena.

Sintaxis

Término Índice1[Índice2] = Expresión

donde Índice1 representa las siguientes variantes:

[]

o

[Índice]

o

[desde, hasta]

o

[[ ]]

o

[[ÍndiceDeValores]]

o

[[ValorDesde, ValorHasta]]

e Index2representa las siguientes variantes:

[Índice]

o

[desde, hasta]

o

[[ÍndiceDeValores]]

o

[[ValorDesde, ValorHasta]]

La sintaxis de la asignación indexada consta de los siguientes elementos:

Parte

Descripción

Término

Expresión que designa una variable, un componente o un elemento de una lista. La asignación indexada sustituye parte de los datos en el destino determinado de esta forma.

Índice

Especifica el(los) número(s) del(de los) valor(es) a indexar. Puede ser un valor escalar entero o una serie de datos con valores enteros.

desde

Especifica el índice del primer valor de un rango a indexar. Debe ser un valor escalar entero.

hasta

Especifica el índice del último valor de un rango a indexar. Debe ser un valor escalar entero.

ÍndiceDeValores

Especifica los valores X o Z del valor o valores o señales a indexar. Puede ser un valor escalar numérico, una serie de datos con valores numéricos o del tipo de datos Empty.

ValorDesde

Especifica el valor X o Z del primer valor o señal de un rango a indexar. Debe ser un valor escalar numérico o del tipo de dato Vacío.

ValorHasta

Especifica el valor X o Z del último valor o señal de un rango a indexar. Debe ser un valor escalar numérico o del tipo de dato Vacío.

Expresión

Cualquier expresión, con un valor escalar u otra estructura de datos, que luego debe coincidir exactamente con la sección indexada. Dependiendo del índice, Expresión debe ser un valor único, una serie de datos o una matriz de datos. Si se especifica un valor escalar, se asigna a todos los elementos indexados del registro de datos.

Notas

El Índice escrito entre paréntesis simples permite direccionar los datos a modificar a través de sus índices. Si aplica la asignación indexada a una Señal, una serie de señales o una CurvaEspacial, solo se considera el componente Y, a menos que se dirija explícitamente al componente X o Z con el operador de componente.

Los índices se cuentan empezando por cero. Los índices negativos cuentan desde el final, es decir, el índice -1 corresponde al último elemento, -2 al penúltimo y así sucesivamente. Con una matriz de datos bidimensional, se pueden especificar dos índices uno tras otro. El primer índice se refiere entonces a la serie de datos de la matriz de datos y el segundo índice opcional se refiere a los valores de la serie de datos extraídos con el primer índice. Si deja el primer índice vacío o introduce el Índice como valor de verdad TRUE, esto indexa todas las series de datos.

Como muestra la sintaxis, puede especificar el índice en tres variantes: Si introduce un valor escalar (índice de valor único) en el índice, éste elimina un elemento y el rango del resultado se reduce en uno. Si se especifica como Índice una serie de datos (índice de la serie de datos) o un rango desde, hasta (índice del rango), se extraen los elementos listados en la serie de datos o los elementos del rango. El rango del resultado corresponde al rango de la expresión a indexar.

Si Índice, desde o hasta es una variable, por lo que debe tener la dimensión SI 1 y se transforma a la unidad 1 antes de la indexación.

Con el ÍndiceDeValores escrito con corchetes dobles, la indexación no se realiza mediante índices, sino mediante valores X o Z. Por lo tanto, el conjunto de datos debe tener una estructura de datos compuesta. Las series de señales con un componente X bidimensional no son compatibles. Si los valores X o Z especificados no se dan exactamente en el conjunto de datos, se utilizan las posiciones de los valores que más se aproximan a los valores especificados. El operador de índice de valores utiliza la función SearchValue para determinar los índices correspondientes a los valores X o Z especificados. Los valores de coma flotante no válidos no están permitidos como índices de valores.

Si ÍndiceDeValor, ValorDesde o ValorHasta es una magnitud física, debe tener la misma dimensión SI que el componente correspondiente de Término y se transforma a su unidad antes de la indexación. Si solo se especifican valores numéricos sin unidad, éstos se interpretan como disponibles en la unidad correspondiente.

El tipo de datos de Expresión se adapta al de Término anterior a la asignación, si es necesario.

Si Término y Expresión son magnitudes físicas, deben tener la misma dimensión SI y la unidad de Expresión se transformaa la unidad de Término antes de la asignación. Si solo Término es una magnitud física, se asume la misma unidad para Expresión. Si solo Expresión es una magnitud física, se muestra un mensaje de error si la gestión de la unidad se establece en Estricto. En caso contrario, se ignora la unidad.

Si Término es una lista, la operación de índice se ejecuta elemento a elemento y el resultado también es una lista. En este caso, Expresión, Índice1 e Índice2 también pueden especificarse como listas.

La asignación indexada a una cadena solo se permite para un valor escalar de cadena.

Nota  Al acceder a registros de datos bidimensionales, puede combinar el operador de índice de valores y el operador de índice(índice híbrido).

En la siguiente tabla se enumeran todas las combinaciones posibles, a excepción de los casos híbridos:

Estructura de datos

Operaciones autorizadas

SerieDeDatos[ValorEscalar] = ValorEscalar

Sobrescribe el valor con el número especificado en ValorEscalar en la serie de datos.

SerieDeDatos[desde, hasta] = SerieDeDatos o ValorEscalar

Sobrescribe los valores en el rango desde, hasta en la serie de datos.

SerieDeDatos[Serie] = SerieDeDatos o ValorEscalar

Sobrescribe los valores especificados en Serie en la serie de datos.

Señal[ValorEscalar] = ValorEscalar

Sobrescribe el valor con el número especificado en ValorEscalar en el componente Y de la señal.

Señal[desde, hasta] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores de señal en el rango desde, hasta.

Señal[Serie] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores de señal especificados en Serie.

CurvaEspacial[ValorEscalar] = ValorEscalar

Sobrescribe el valor con el número especificado en ValorEscalar en el componente Y de la curva espacial.

CurvaEspacial[desde, hasta] = CurvaEspacial, Señal, SerieDeDatos s o ValorEscalar

Sobrescribe los valores en el rango desde, hasta en la curva de sala.

CurvaEspacial[Serie] = CurvaEspacial, Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores especificados en Serie en la curva espacial.

MatrizDeDatos[ValorEscalar] = SerieDeDatos o ValorEscalar

Sobrescribe la columna con el número especificado en ValorEscalar en la matriz de datos.

MatrizDeDatos[desde, hasta] = MatrizDeDatos o ValorEscalar

Sobrescribe las columnas en el rango desde, hasta en la matriz de datos.

MatrizDeDatos[Serie] = MatrizDeDatos o ValorEscalar

Sobrescribe las columnas especificadas en Serie en la matriz de datos.

MatrizDeDatos[][ValorEscalar] = SerieDeDatos o ValorEscalar

Sobrescribe la fila con el número especificado en ValorEscalar en la matriz de datos.

MatrizDeDatos[][desde, hasta] = MatrizDeDatos o ValorEscalar

Sobrescribe las filas en el rango desde, hasta en la matriz de datos.

MatrizDeDatos[][Serie] = MatrizDeDatos o ValorEscalar

Sobrescribe las filas especificadas en Serie en la matriz de datos.

MatrizDeDatos[ValorEscalar1][ValorEscalar2] = ValorEscalar

Sobrescribe un valor en la columna especificada con ValorEscalar1 y la fila especificada con ValorEscalar2 en la matriz de datos.

MatrizDeDatos[ValorEscalar][desde, hasta] = SerieDeDatos o ValorEscalar

Sobrescribe los valores en el rango desde, hasta en la columna especificada en ValorEscalar en la matriz de datos.

MatrizDeDatos[ValorEscalar][Serie] = SerieDeDatos o ValorEscalar

Sobrescribe los valores especificados en Serie en la columna especificada en ValorEscalar en la matriz de datos.

MatrizDeDatos[desde, hasta][ValorEscalar] = SerieDeDatos o ValorEscalar

Sobrescribe el valor especificado en ValorEscalar en las columnas del rango desde, hasta en la matriz de datos.

MatrizDeDatos[desde1, hasta1][desde2, hasta2] = MatrizDeDatos o ValorEscalar

Sobrescribe las filas situadas en el intervalo desde2,hasta2 en las columnas situadas en el intervalo desde1, hasta1 en la matriz de datos.

MatrizDeDatos[desde, hasta][Serie] = MatrizDeDatos o ValorEscalar

Sobrescribe las filas listadas en Serie de las columnas en el rango desde, hasta de la matriz de datos.

MatrizDeDatos[Serie][ValorEscalar] = SerieDeDatos o ValorEscalar

Sobrescribe el valor especificado en ValorEscalar en las columnas enumeradas en Serie en la matriz de datos.

MatrizDeDatos[Serie][desde, hasta] = MatrizDeDatos o ValorEscalar

Sobrescribe las filas en el rango desde, hasta en las columnas listadas en Serie en la matriz de datos.

MatrizDeDatos[Serie1][Serie2] = MatrizDeDatos o ValorEscalar

Sobrescribe las filas de la Serie2 en las columnas de la Serie1 de la matriz de datos.

ValorEscalarSerieDeSeñales[ValorEscalar] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe la columna con el número especificado en ValorEscalar en la serie de señales.

SerieDeSeñales[desde, hasta] = Señal, MatrizDeDatos o ValorEscalar

Sobrescribe las columnas en el rango desde, hasta en la la serie de señales.

SerieDeSeñales[Serie] = Señal, MatrizDeDatos o ValorEscalar

Sobrescribe las columnas especificadas en Serie en la la serie de señales.

Señal serie[][ValorEscalar] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe la fila con el número especificado en ValorEscalar en la serie de señales.

SerieDeSeñales[][desde, hasta] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas en el rango desde, hasta en la serie de señales.

SerieDeSeñales[][Serie] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas especificadas en Serie en la serie de señales.

SerieDeSeñales[ValorEscalar1][ValorEscalar2] = ValorEscalar

Sobrescribe un valor en la columna especificada con ValorEscalar1 y la fila especificada con ValorEscalar2 en el componente Y de la serie de señales.

SerieDeSeñales[ValorEscalar][desde, hasta] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores en el rango desde, hasta en la columna especificada en ValorEscalar en la serie de señales.

SerieDeSeñales[ValorEscalar][Serie] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores especificados en Serie en la columna especificada en ValorEscalar en la serie de señales.

SerieDeSeñales[desde, hasta][ValorEscalar] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe el valor especificado en ValorEscalar en las columnas del intervalo desde, hasta en la serie de señales.

SerieDeSeñales[desde1, hasta1][desde2, hasta2] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas situadas en el intervalo desde2, hasta2 en las columnas situadas en el intervalo desde1, hasta1 en la serie de señales.

SerieDeSeñales[desde, hasta][Serie] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas listadas en Serie de las columnas en el rango desde, hasta de la serie de señales.

SerieDeSeñales[Serie][ValorEscalar] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe el valor especificado en ValorEscalar en las columnas enumeradas en Serie de la serie de señales.

SerieDeSeñales[Serie][desde, hasta] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas en el rango desde, hasta en las columnas listadas en Serie en la serie de señales.

SerieDeSeñales[Serie1][Serie2] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas enumeradas en Serie2 en las columnas enumeradas en Serie1 en la la serie de señales.

Señal[[ValorEscalar]] = ValorEscalar

Sobrescribe el valor Y con el valor X especificado en ValorEscalar en la señal.

Señal[[desde, hasta]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores Y en el rango X desde, hasta en la señal.

Señal[[serie]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores con los valores X especificados en Serie en la señal.

CurvaEspacial[[ValorEscalar]] = ValorEscalar

Sobrescribe el valor Y con el valor X especificado en ValorEscalar en la curva de habitación.

CurvaEspacial[[desde, hasta]] = CurvaEspacial, Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores en el rango X desde, hasta en la curva espacial.

CurvaEspacial[[Serie]] = CurvaEspacial, Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores con los valores X especificados en Serie en la curva espacial.

SerieDeSeñales[[ValorEscalar]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe la columna con el valor X especificado en ValorEscalar en la serie de señales.

SerieDeSeñales[[desde, hasta]] = Serie de señales, MatrizDeDatos o ValorEscalar

Sobrescribe las columnas con los valores X en el rango desde, hasta en la serie de señales.

SerieDeSeñales[[Serie]] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las columnas con los valores X especificados en Serie en la serie de señales.

Señal serie[[]][[ValorEscalar]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe la fila con el valor Z especificado en ValorEscalar en la serie de señales.

SerieDeSeñales[[]][[desde, hasta]] = Serie de señales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas con los valores Z en el rango desde, hasta en la serie de señales.

SerieDeSeñales[[]][[Serie]] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe las filas con los valores Z especificados en Serie en la serie de señales.

SerieDeSeñales[[ValorEscalar1]][[ValorEscalar2]] = ValorEscalar

Sobrescribe el valor Y en el valor X especificado en ValorEscalar1 y el valor Z especificado en ValorEscalar2 en la serie de señales.

Señal serie[[ValorEscalar]][[desde, hasta]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores con los valores X en el rango desde, hasta en la columna con el valor Z especificado en ValorEscalar en la serie de señales.

Señal serie[[ValorEscalar]][[Serie]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores con los valores Y especificados en Serie en la columna con el valor X especificado en ValorEscalar en la serie de señales.

Señal serie[[desde, hasta]][[ValorEscalar]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores con el valor X especificado en ValorEscalar en las columnas con los valores Z en el rango desde, hasta en la serie de señales.

SerieDeSeñales[[desde1, hasta1]][[desde2, hasta2]] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe los valores con los valores X en el rango desde2,hasta2 en las columnas con los valores Z en el rango desde1, hasta1 en la serie de señales.

SerieDeSeñales[[desde, hasta]][[Serie]] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe los valores con los valores X listados en Serie en las columnas con los valores Z en el rango desde, hasta en la serie de señales.

Señal serie[[Serie]][[ValorEscalar]] = Señal, SerieDeDatos o ValorEscalar

Sobrescribe los valores con el valor X especificado en ValorEscalar en las columnas con los valores Z listados en Serie en la serie de señales.

SerieDeSeñales[[Serie]][[desde, hasta]] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe los valores con los valores X en el rango desde, hasta en las columnas con los valores Z listados en Serie en la serie de señales.

SerieDeSeñales[[Serie1]][[Serie2]] = SerieDeSeñales, MatrizDeDatos o ValorEscalar

Sobrescribe los valores con los valores X listados en la Serie2 en las columnas con los valores Z listados en la Serie1 en la fila de señal.

Cadena[ValorEscalar] = valor entero único con código de caracteres

Sobrescribe el carácter con el número especificado en ValorEscalar en la cadena.

Cadena[desde, hasta] = Cadena

Sustituye la subcadena en el rango desde, hasta en la cadena. La cadena asignada puede ser más o menos larga.

Cadena[Serie] = Cadena

Sobrescribe los caracteres especificados en Serie en la cadena. La cadena asignada debe tener la misma longitud que la Serie.

Disponibilidad

FlexPro View, Basic, Professional, Developer Suite

Ejemplos

Lista[1n][0n, 99n] = ?

invalida los primeros 100 elementos de la serie de datos ubicada en el segundo elemento de la lista almacenada en la variable Lista.

Señal[-3n, -1n] = { 3.5, 4.8, 1.2 }

cambia los tres últimos valores de la componente Y de Señal.

Señal.X[0n] = 1

establece el primer valor X en Señal al valor 1.

Señal[[1.2 s, 5.4 s]] = 0

establece todos los valores Y en el rango X de 1.2 s a 5.4 s en la señal al valor 0.

Serie[{1n, 2n, -1n}] = ?

invalida el segundo, tercer y último valor de la Serie.

MatrizDeDatos[][0n] = Fila

sustituye la primera fila de MatrizDeDatos con los valores de la serie de datos Fila.

Cadena[1n] = "a"

sustituye el segundo carácter de Cadena por el carácter 'a'.

Cadena[-1n] = 97n

sustituye el último carácter de Cadena por el carácter 'a'.

Cadena[1n, 3n] = "abc"

sustituye tres caracteres en Cadena por la subcadena "abc".

Cadena[3n, 2n] = "abc"

inserta la cadena "abc" en la posición 3 de la Cadena.

Cadena[0n, -1n] = "abc"

sustituye a Cadena por la subcadena "abc".

 

Véase también

Operador de índice

Asignación