The ultimate Microsoft Fabric, Power BI, Azure AI & SQL learning event! Join us in Las Vegas from March 26-28, 2024. Use code MSCUST for a $100 discount. Register Now
Hola, estoy tratando de convertir el siguiente script python a la columna DAX Calculated:
import numpy as np
dataset["OBV"] = np.where(dataset['close'] > dataset['close'].shift(1), dataset['volume'] ,
np.where(dataset['close'] < dataset['close'].shift(1), -dataset['volume'], 0)).cumsum()
Razón:
No puedo agregar python a mi puerta de enlace local para habilitar las actualizaciones programadas.
Datos de muestra:
AsofDate | Cerca | Volumen |
2/1/1990 | 328 | 50000 |
2/2/1990 | 330 | 45000 |
2/3/1990 | 342 | 65000 |
2/4/1990 | 352 | 45000 |
2/5/1990 | 320 | 20000 |
2/6/1990 | 365 | 35000 |
2/7/1990 | 652 | 45600 |
¡Apreto cualquier ayuda con DAX! Gracias
@sv12, lo que se espera de la salida y la lógica.
Hola @amitchandak
Gracias por su respuesta.
Datos de muestra: Datos de muestra
Columnas de entrada: A partir de fecha, cierre, volumen
Columna de salida: OBV
Lógica de negocios:
Si el cierre de hoy es mayor que el cierre de ayer, entonces:
OBV - El OBV de ayer + Volumen de hoy
Si el cierre de hoy es menor que el cierre de ayer, entonces:
OBV - OBV de ayer – Volumen de hoy
Si el cierre de hoy es igual al cierre de ayer, entonces:
OBV - OBV de ayer
Ejecución con Python:
import numpy as np
dataset["OBV"] = np.where(dataset['close'] > dataset['close'].shift(1), dataset['volume'] ,
np.where(dataset['close'] < dataset['close'].shift(1), -dataset['volume'], 0)).cumsum()
Estoy tratando de ejecutar el mismo usando DAX.
¡Avísame si tienes preguntas!
Gracias
Sv
hola @sv12
para su requisito, debe crear dos columnas para obtener sus requisitos:
judgecolumn = var _yesterdaydate=CALCULATE(MAX('Table'[As of Date]),FILTER('Table','Table'[As of Date]<EARLIER('Table'[As of Date])))
var _yesterdayclose=CALCULATE(SUM('Table'[Close]),FILTER('Table','Table'[As of Date] = _yesterdaydate))
return
DIVIDE('Table'[Close]-_yesterdayclose,ABS('Table'[Close]-_yesterdayclose)) *'Table'[Volume]
OBV =
SUMX(FILTER('Table','Table'[As of Date]<=EARLIER('Table'[As of Date])),[judgecolumn])
Resultado:
Para la primera fecha de sus datos de muestra, no hay obV ayer, por lo que he dar un valor fijo
OBV =
SUMX(FILTER('Table','Table'[As of Date]<=EARLIER('Table'[As of Date])),[judgecolumn])+287025018164
aquí está el archivo pbix de muestra, por favor pruébelo.
saludos
Lin
Hola necesito convertir este script python en dax ¿alguna idea?