Tengo un conjunto de datos llamado valor 2 que se ingresó como un carácter con las unidades al final. Algunos de ellos se ingresan como ml/min y otros como ul/s, y me gustaría separar los que están en ul/s en una columna completamente nueva. ¿Qué función debo usar para seleccionar las filas que contienen un determinado subconjunto de una cadena (iba a seleccionar las que contienen "ul/s" para ingresarlas en una nueva columna y luego eliminarlas de la columna de valor 2)? Pensé que la función "contener" haría lo que quiero, pero parece que hasta ahora no funciona.

current data table () << Select where (contains (:Value 2, "ul/s"))
Esta sería una forma de hacerlo usando la función contiene(). Otra forma de hacer esto sería usar Cols...Utilities...Text to Columns para separar la columna Valor 2 en varias columnas.
Si desea escribir un script, puede hacer esto:
dt = data table( "your datatable name" );
dt << new column( "Value 3", Character );
for each row(
dt:"Value 3"n = Char( If( Contains( :"Value 2"n, "ul/s" ) != 0, :Value 2, "" ) );
dt:"Value 2"n = Char( If( Contains( :"Value 3"n, "ul/s" ) != 0, "", :Value 2 ) );
);
Simplemente sustituya el nombre real de su tabla en la primera línea.
Sin embargo, si intentas trabajar con unidades mixtas y solo quieres que sean comparables, puedes intentar crear una nueva columna con una fórmula como esta:
Num( Regex( :Value 2, "[0-9]+" ) ) *
If( Contains( :Value 2, "ul/s" ) != 0, 60 / 1000, 1 )
Eso crea una columna donde los datos de ul/s se convierten a ml/min extrayendo el valor numérico (usando Regex) y luego aplicando un factor de conversión dependiendo de la cadena en la celda. La columna resultante está toda en ml/min.