Referencia de funciones de Tableau Prep

Las funciones de cálculo de Tableau Prep le permiten utilizar campos calculados para crear nuevos datos utilizando los datos que ya existen en su fuente de datos.

Funciones numéricas

SintaxisDescripción
ABS(number)Indica el valor absoluto del número dado.

Ejemplos:

ABS(-7) = 7

ABS([Budget Variance])

Indica el valor absoluto para todos los números en el campo Discordancia de presupuesto.
ACOS(number)Indica el arco coseno del número dado. El resultado está en radianes.

Ejemplo:

ACOS(-1) = 3.14159265358979

ASIN(number)Indica el arco seno de un número dado. El resultado está en radianes.

Ejemplo:

ASIN(1) = 1.5707963267949

ATAN(number)Indica el arco tangente de un número dado. El resultado está en radianes.

Ejemplo:

ATAN(180) = 1.5652408283942

ATAN2(y number, x number)Indica el arco tangente de dos números dados (x e y). El resultado está en radianes.

Ejemplo:

ATAN2(2, 1) = 1.10714871779409

CEILING(number)Redondea un número al entero más cercano de valor igual o superior.

Ejemplo:

CEILING(3.1415) = 4

COS(number)Indica el coseno de un ángulo. Especifique el ángulo en radianes.

Ejemplo:

COS(PI( ) /4) = 0.707106781186548

COT(angle)Indica la cotangente de un ángulo. Especifique el ángulo en radianes.

Ejemplo:

COT(PI( ) /4) = 1

DIV(integer1, integer2)Indica la parte entera de una operación de división en la que integer1 se divide entre integer2.

Ejemplo:

DIV(11,2) = 5

EXP(number)Indica y eleva la potencia del número dado.

Ejemplos:

EXP(2) = 7.389 EXP(-[Growth Rate]*[Time])

FLOOR(number)Redondea un número al entero más cercano de valor igual o inferior.

Ejemplo:

FLOOR(3.1415) = 3

HEXBINX(number, number)Asigna unas coordenadas x, y a la coordenada x de la agrupación hexagonal más cercana. Las agrupaciones tienen una longitud lateral de 1, por lo que es necesario escalar las entradas correctamente.

Ejemplo:

HEXBINX([Longitude], [Latitude])

HEXBINY(number, number)Asigna unas coordenadas x, y a la coordenada y de la agrupación hexagonal más cercana. Las agrupaciones tienen una longitud lateral de 1, por lo que es necesario escalar las entradas correctamente.

Ejemplo:

HEXBINY([Longitude], [Latitude])

LN(number)

Indica el logaritmo natural de un número. Devuelve NULL si el número es inferior o igual a 0.

Ejemplo:

LN(EXP(5)) = 5

LOG(number [, base])

Indica el logaritmo de un número para la base dada. Si se omite el valor base, se usa la base 10.

Ejemplo:

LOG(256, 2) = 8

MAX(number, number)Indica el máximo de dos argumentos, los cuales deben ser del mismo tipo. Devuelve NULL si algún argumento es NULL. MAX se puede aplicar también a un solo campo en un cálculo agregado.

Ejemplos:

MAX(4,7)
MAX(Sales,Profit)
MAX([First Name],[Last Name])

MIN(number, number)Indica el mínimo de dos argumentos, los cuales deben ser del mismo tipo. Devuelve NULL si algún argumento es NULL. MIN se puede aplicar también a un solo campo en un cálculo agregado.

Ejemplos:

MIN(4,7)

MIN(Sales,Profit)

MIN([First Name],[Last Name])

PI( )

Indica la constante numérica pi: 3,14159.

Ejemplo:

PI() = 3.14159265358979

POWER(number, power)Eleva el número a la potencia especificada.

Ejemplos:

POWER(5,2) = 52 = 25 POWER(Temperature, 2)

También puede usar el símbolo ^:

5^2 = POWER(5,2) = 25

RADIANS(number)Convierte el número dado en grados a radianes.

Ejemplo:

RADIANS(180) = 3.14159

ROUND(number, [decimals])Redondea los números a una cantidad de dígitos especificada. El argumento de decimales especifica la cantidad de puntos decimales de precisión que se incluyen en el resultado final. Si se omiten los decimales, el número se redondea al entero más cercano.

Ejemplo:

Este ejemplo redondea todos los valores Sales a un entero:

ROUND(Sales)

SIGN(number)Indica la firma de un número: los posibles valores de devolución son -1 si el número es negativo, 0 si el número es cero, o 1 si el número es positivo.

Ejemplo:

Si el promedio del campo de ganancia es negativo, entonces

SIGN(AVG(Profit)) = -1

SIN(number)Indica el seno de un ángulo. Especifique el ángulo en radianes.

Ejemplos:

SIN(0) = 1.0

SIN(PI( )/4) = 0.707106781186548

SQRT(number)Indica la raíz cuadrada de un número.

Ejemplo:

SQRT(25) = 5

SQUARE(number)Indica el cuadrado de un número.

Ejemplo:

SQUARE(5) = 25

TAN(number)

Indica la tangente de un ángulo. Especifique el ángulo en radianes.

Ejemplo:

TAN(PI ( )/4) = 1.0

ZN(expression)

Indica la expresión si no es null, de lo contrario, indica cero. Use esta función para usar valores cero en vez de valores nulos.

Ejemplo:

ZN([Profit]) = [Profit]

Funciones de cadena

SintaxisDescripción
ASCII(string)Indica el código ASCII del primer carácter de una cadena.

Ejemplo:

ASCII('A') = 65

CHAR(number)Indica el carácter codificado por el número de código ASCII.

Ejemplo:

CHAR(65) = 'A'

CONTAINS(string, substring)Indica true si la cadena dada contiene la subcadena especificada.

Ejemplo:

CONTAINS(“Calculation”, “alcu”) = true

ENDSWITH(string, substring)Indica true si la cadena dada finaliza con la substring especificada. Se ignoran los espacios posteriores en blanco.

Ejemplo:

ENDSWITH(“Tableau”, “leau”) = true

FIND(string, substring, [start])Indica la posición de índice de substring en la cadena, o 0 si no se encuentra la subcadena. Si se agrega el argumento opcional inicio, la función ignora cualquier instancia de substring que aparece antes de la posición de índice inicio. El primer carácter de la cadena es la posición 1.

Ejemplos:

FIND("Calculation", "alcu") = 2

FINDNTH(string, substring, occurrence)Indica la posición de la aparición número n de la subcadena dentro de la cadena especificada, donde n se define mediante el argumento de aparición.

Ejemplo:

FINDNTH("Calculation", "a", 2) =7

ISDATE(string)

Indica true si una cadena dada es una fecha válida.

Ejemplo:

ISDATE("2004-04-15") = True

LEFT(string, number)Indica el número que se encuentra en el extremo izquierdo de los caracteres de la cadena.

Ejemplo:

LEFT("Matador", 4) = "Mata"

LEN(string)Indica la longitud de la cadena.

Ejemplo:

LEN("Matador") = 7

LOWER(string)Indica la cadena, con todos los caracteres en minúsculas.

Ejemplo:

LOWER("ProductVersion") = "productversion"

LTRIM(string)Indica la cadena con todos los espacios líderes eliminados.

Ejemplo:

Example: LTRIM(" Sales") = "Sales"

(MID(string, start, [length])Indica la cadena que comienza en la posición de índice inicio. El primer carácter de la cadena es la posición 1. Si se añade el argumento opcional length, la cadena indicada incluye solo esa cantidad de caracteres.

Ejemplos:

MID("Calculation", 2) = "alculation"

MID("Calculation", 2, 5) ="alcul"

PROPER(string)Convierte una cadena de texto para que la primera letra de cada palabra esté en mayúscula y las letras restantes en minúsculas. Los espacios y los caracteres no alfanuméricos, como la puntuación, también actúan como separadores.

Ejemplo:

PROPER("PRODUCT name") = "Product Name"

REGEXP_EXTRACT(string, pattern)Devuelve una subcadena de la cadena dada que coincide con el grupo de captura dentro del patrón de expresión regular. El patrón de expresión regular requiere exactamente un grupo de captura

Ejemplo:

REGEXP_EXTRACT('abc 123', '[a-z]+\\s+(\\d+)') = '123'

REGEXP_EXTRACT_NTH(string, pattern, index)Devuelve una subcadena de la cadena dada mediante el uso del patrón de la expresión regular. La subcadena se empareja con el grupo de captura nth, donde n es el índice determinado.

Ejemplo:

REGEXP_EXTRACT_NTH('abc 123', '([a-z]+)\\s+(\\d+)', 2) = '123'

REGEXP_MATCH(string, pattern)Indica true si una subcadena de la cadena proporcionada coincide con el patrón de la expresión regular.

Ejemplo:

REGEXP_MATCH('-([1234].[ The.Market ])-', '\\[\\s*(\\w*\\.)(\\w*\\s*\\])') = true

REGEXP_REPLACE(string, pattern, replacement)Indica una copia de la cadena dada en la que el patrón coincidente se sustituye por la cadena de sustitución.

Ejemplo:

REGEXP_REPLACE('abc 123', '\\s', '-') = 'abc--123'

REPLACE(string, substring, replacement)Busca una subcadena en una cadena y la sustituye por otra. Si no se encuentra una subcadena, se elimina el cambio a la cadena.

Ejemplo:

REPLACE("Calculation", "ion", "ed") = "Calculated"

RIGHT(string, number)Indica el número que se encuentra en el extremo derecho de los caracteres de la cadena.

Ejemplo:

RIGHT("Calculation", 4) = "tion"

RTRIM(string)Indica una cadena con todos los espacios posteriores eliminados.

Ejemplo:

Example: RTRIM("Market ") = "Market"

SPACE(number)Devuelve una cadena compuesta por el número especificado de espacios repetidos.

Ejemplo:

SPACE(1) = " "

SPLIT(string, delimiter, token number)

Indica una subcadena a partir de una cadena, según lo determinado por un delimitador que extrae los caracteres del principio o del final de la cadena.

Ejemplo:

SPLIT('a-b-c-d', '-', 2) = 'b'

STARTSWITH(string, substring)Indica true si la cadena comienza por substring. Se ignoran los espacios iniciales en blanco.

Ejemplo:

STARTSWITH(“Joker”, “Jo”) = true

TRIM(string)Indica la cadena con los espacios iniciales y posteriores eliminados.

Ejemplo:

TRIM(" Calculation ") = "Calculation"

UPPER(string)Indica la cadena, con todos los caracteres en mayúscula.

Ejemplo:

UPPER("Calculation") = "CALCULATION"

Funciones de agregación

SintaxisDescripción
AVG(expression)Indica el promedio de todos los valores de la expresión. AVG se puede usar solo con campos numéricos. Se ignoran los valores nulos

Ejemplo:

AVG([Profit])

COUNT(expression)Indica el número de elementos en un grupo. No se cuentan los valores nulos.

Ejemplo:

COUNT([Customer ID])

COUNTD(expression)Indica el número de elementos definidos en un grupo. No se cuentan los valores nulos. Cada valor único se cuenta solo una vez.

Ejemplo:

COUNTD([Region])

MEDIAN(expression)Devuelve la mediana de una sola expresión. MEDIAN se puede usar solo con campos numéricos. Se ignoran los valores nulos.

Ejemplo:

MEDIAN([Profit])

PERCENTILE(expression, number)Cálculo agregado que devuelve el valor de percentil de la expresión determinada correspondiente al número especificado. Los valores válidos para el número son del 0 al 1. PERCENTILE ([expresión], 0,50) siempre devolverá el valor medio de la expresión.

Ejemplo:

PERCENTILE([Sales], 0.90)

STDEV(expression)Indica la desviación estándar de muestra de la expresión.

Ejemplo:

STDEV([Profit])

STDEVP(expression)

Indica la desviación estándar de población de la expresión.

Ejemplo:

STDEVP([Profit])

SUM(expression)

Indica la suma de todos los valores de la expresión. SUM se puede usar solo con campos numéricos. Se ignoran los valores nulos.

Ejemplo:

SUM([Profit])

VAR(expression)

Indica la discordancia estadística de todos los valores en la expresión dada basado en una muestra de la población.

Ejemplo:

VAR([Profit])

VARP(expression)

Indica la discordancia estadística de todos los valores en la expresión dada basado en una muestra de la población.

Ejemplo:

VARP([Profit])

ZN(expression)

Indica la expresión si no es null, de lo contrario, indica cero. Use esta función para usar valores cero en vez de valores nulos.

Ejemplo:

ZN([Profit]) = [Profit]

Funciones de conversión de tipo

SintaxisDescripción
DATEIndica una fecha dada a una expresión de número, cadena o fecha.

Ejemplo:

DATE("2006-06-15 14:52") = 2006-06-15

Tenga en cuenta que las comillas son obligatorias.

DATETIME(expression)Indica una fecha y hora dada a una expresión de número, cadena o fecha.

Ejemplo:

DATETIME("April 15, 2004 07:59:00")

Tenga en cuenta que las comillas son obligatorias.

FLOAT(expression)Devuelve un flotador dada una expresión de cualquier tipo. Esta función requiere números sin formato, lo que significa excluir comas y otros símbolos.

Ejemplo:

FLOAT("3")= 3.000

INT(expression)Devuelve un entero dada una expresión. Esta función trunca los resultados al entero más cercano hasta cero.

Ejemplo:

INT(8.0/3.0) = 2 or INT(-9.7) = -9

MAKEDATE(year, month, day)Indica un valor de fecha construido a partir del año, del mes y de la fecha.

Ejemplo:

MAKEDATE(2014, 3, 18)

MAKEDATETIME(date, time)

Indica un valor de fecha y hora dada una expresión de fecha y una expresión de hora.

Ejemplo:

MAKEDATETIME(#2012-11-12#, #07:59:00#)

MAKETIME(hour, minute, second)

Indica un valor de hora construido a partir de la hora, los minutos y los segundos.

Ejemplo:

MAKETIME(14, 52, 40)

STR(expression)

Devuelve una cadena dada una expresión.

Ejemplo:

STR([Age])

Devuelve todos los valores de la medida Age como cadenas.

Funciones de fecha

SintaxisDescripción
DATEADD(date_part, interval, date)Agrega un incremento a la fecha especificada y devuelve la nueva fecha. El incremento está definido por el intervalo y date_part.

Ejemplo:

DATEADD('month', 3, #2004-04-15#) = 2004-07-15 12:00:00 AM

DATEDIFF(date_part, start_date, end_date, [start_of_week])

Devuelve la diferencia entre dos fechas donde start_date se resta de end_date. La diferencia se expresa en unidades de date_part. Si se omite start_of_week, el día de inicio de la semana lo determina el día de inicio configurado para la fuente de datos.

Ejemplo:

DATEDIFF('month', #2004-07-15#, #2004-04-03#, 'sunday') = -3

DATENAME(date_part, date, [start_of_week])Indica una parte de la fecha determinada como una cadena, donde la parte está definida por date_part. Si se omite start_of_week, el día de inicio de la semana lo determina el día de inicio configurado para la fuente de datos.

Ejemplo:

DATENAME('month', #2004-04-15#) = "April"

DATEPARSE(format, string)Convierte una cadena en una fecha en el formato especificado.

Ejemplo:

DATEPARSE ("dd.MMMM.yyyy", "15.April.2004") = 2004-04-15 12:00:00 AM

DATEPARTT(date_part, date, [start_of_week])Indica una parte de la fecha dada como un entero, donde la parte está definida por date_part. Si se omite start_of_week, el día de inicio de la semana lo determina el día de inicio configurado para la fuente de datos.

Ejemplo:

DATEPART('month', #2004-04-15#) = 4

DATETRUNC(date_part, date, [start_of_week])Trunca la fecha especificada a la precisión especificada por date_part y devuelve la nueva fecha. Si se omite start_of_week, el día de inicio de la semana lo determina el día de inicio configurado para la fuente de datos.

Ejemplo:

DATETRUNC('quarter', #2004-08-15#) = 2004-07-01 12:00:00 AM

DAY(date)Indica el día de la fecha dada como un entero.

Ejemplo:

DAY(#2004-04-12#) = 12

ISDATE(string)Indica true si una cadena dada es una fecha válida.

Ejemplo:

ISDATE("2004-04-15") = True

MONTH(date)

Indica el mes de una fecha dada como un entero.

Ejemplo:

MONTH(#2004-04-12#) = 4

NOW()Indica la fecha y hora actual.

Ejemplo:

NOW() = 2004-05-12 1:08:21 PM

TODAY()Indica la fecha actual.

Ejemplo:

TODAY() = 2004-05-12

YEAR(date)Indica el año de una fecha dada como un entero.

Ejemplo:

YEAR(#2004-04-12#) = 2004

Funciones lógicas

SintaxisDescripción
IFNULL(expr1, expr2)Indica <expr1> si no es null, de lo contrario, indica <expr2>.

Ejemplo:

IFNULL([Profit], 0)

IIF(test, then, else, [unknown])Comprueba si se cumple una condición e indica un valor si es TRUE, otro valor si es FALSE y un tercer valor opcional o NULL si se desconoce.

Ejemplo:

IIF([Profit] > 0, 'Profit', 'Loss')

ISDATE(string)Indica true si una cadena dada es una fecha válida.

Ejemplo:

ISDATE("2004-04-15") = True

ISNULL(expression)Indica true si la expresión no contiene datos válidos (Null).

Ejemplo:

ISNULL([Profit])

ZN(expression)

Indica la expresión si no es null, de lo contrario, indica cero. Use esta función para usar valores cero en vez de valores nulos.

Ejemplo:

ZN([Profit]) = [Profit]

Funciones analíticas

SintaxisDescripción
LAST_VALUE(expression, [return_last_non-null_value])Indica el último valor de la expresión dada, desde la primera fila de la división hasta la fila actual. Acepta un segundo parámetro booleano opcional para devolver el último valor que no es nulo.

Ejemplo:

{ ORDERBY [Row ID] ASC: LAST_VALUE([Category], true) } = returns the last non-null value of [Category]

LOOKUP(expression, [offset])

Indica el valor de la expresión dada en una fila de destino, especificada como compensación relativa desde la fila actual. Indica NULL si la fila de destino no se puede determinar.

El parámetro [offset] de la función LOOKUP solo admite un número literal entero, como 1.

Ejemplo:

{ORDERBY [DATE] ASC : LOOKUP([SALES], -1)}

Devuelve el valor SALES de la fila anterior.

NTILE(number)Distribuye filas en una partición seleccionada en un número específico de grupos o secciones. Con esta función, el conjunto de valores (6,9,9,14) distribuidos en 3 secciones se asignaría a las secciones (1,2,2,3) en orden ascendente.

Ejemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: NTILE(3) }}

RANK()Indica la clasificación de jerarquía para la competencia estándar para la fila actual en la división. Se asignan valores idénticos a clasificaciones distintas.

Ejemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK() }}

RANK_DENSE()Indica la clasificación densa para la fila actual de la división. Se asignan valores idénticos a una clasificación idéntica, pero no se insertan espacios en la secuencia numérica.

Ejemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_DENSE() }}

RANK_MODIFIED()Indica la clasificación de competencia modificada para la fila actual de la división. Se asignan valores idénticos a clasificaciones distintas.

Ejemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_MODIFIED() }}

RANK_PERCENTILE()Indica la clasificación de percentil para la fila actual de la división.

Ejemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_PERCENTILE() }}

ROW_NUMBER()Devuelve un identificador de fila secuencial único a cada fila.

Ejemplo:

{PARTITION [Customer]: {ORDERBY [Sales] ASC: ROW_NUMBER() }}

RUNNING_AVG(expression)Indica el promedio de ejecución de la expresión dada, desde la primera fila de la división hasta la fila actual.

Ejemplo:

{ PARTITION [Category] : { ORDERBY [Row ID] ASC : RUNNING_AVG([Sales]) } } = running average of Sales, per Category.

RUNNING_SUM(expression)Indica la suma de ejecución de la expresión dada, desde la primera fila de la división hasta la fila actual.

Ejemplo:

{ ORDERBY [Row ID] ASC : RUNNING_SUM([Sales]) } = running sum of all Sales

Palabras clave

FunciónDescripción
ANDRealiza la conjunción lógica de dos expresiones

Ejemplo:

IF (ATTR([Market]) = "New Business" AND SUM([Sales]) > [Emerging Threshold] )THEN "Well Performing"

ASCDefine el orden ascendente para operaciones ORDERBY .

Ejemplo

{ORDERBY [Sales] ASC:RANK()}

CASEEncuentra el primer <value> que coincida con <expr> e indica el <return> correspondiente.

Ejemplo:

CASE [RomanNumeral] WHEN "|" THEN 1 WHEN "II" THEN 2 ELSE 3 END

DESCDefine el orden descendente para operaciones ORDERBY .

Ejemplo:

{ORDERBY [Sales] DESC:RANK()}

ELSEPrueba una serie de expresiones que indican el valor <then> para la primera <expr> true.

Ejemplo:

IF [Profit] > 0 THEN 'Profitable' ELSE 'Loss' END

ELSEIFPrueba una serie de expresiones que indican el valor <then> para la primera <expr> true. Equivale a poner una instrucción if dentro de una operación ELSE.

Ejemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END

ENDFinaliza una operación introducida por la directiva correspondiente.

Ejemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END

{ FIXED }Las expresiones de nivel de detalle FIXED calculan valores usando las dimensiones especificadas sin importar el nivel de detalle.

Ejemplo:

{FIXED[Customer ID]:MIN([Order Date])}

IFCrea una declaración condicional (declaración IF) y le permite ejecutar solo si una condición es True.

Ejemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END

NOTRealiza una negación lógica en una expresión.

Ejemplo:

IF NOT [Profit] > 0 THEN "Unprofitable" END

ORRealiza una disyunción lógica en una expresión.

Ejemplo:

IF [Profit] < 0 OR [Profit] = 0 THEN "Needs Improvement" END

{ ORDERBY }Define el orden para aplicar funciones analíticas. Utiliza el argumento opcional asc | desc para especificar el orden ascendente o descendente de cada campo.

Ejemplo:

{ORDERBY [Customer Name] ASC, [Sales] DESC: RANK() }

{ PARTITION }Define el grupo para las funciones analíticas. ORDERBY debe estar dentro de la partición.

Ejemplo:

{PARTITION [Customer]: {ORDERBY [Sales]: RANK()}}

THENPrueba una serie de expresiones que indican el valor <then> para la primera <expr> true.

Ejemplo:

IF [Profit] > 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Break even' ELSE 'unprofitable' END

WHENEncuentra el primer <value> que coincida con <expr> e indica el <return> correspondiente.

Ejemplo:

CASE [RomanNumberal] WHEN 'I' THEN 1 WHEN 'II' THEN 2 ELSE 3 END

¡Gracias por sus comentarios!Sus comentarios se han enviado correctamente. ¡Gracias!