Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Estoy buscando una solución preferiblemente en DAX, o alternativamente en M/Power Query.
Mi conjunto de datos consiste en una serie de carteras de valores de inversores. El número de acciones en cada cartera varía según los inversores (por ejemplo, uno puede invertir en 2 acciones, otra en 10), al igual que sus asignaciones hacia cada una.
Cada cartera se indica en una sola fila en una sola columna (B), en el siguiente formato: Stock 1/5%:Stock 2/10%:Stock 3/85%. Por supuesto, las acciones tienen nombres reales, esto es simplemente un ejemplo.
Si bien el número de acciones en una cartera es variable, el rango de acciones que los inversores pueden elegir es fijo y se puede clasificar como acciones de Europa, Estados Unidos o Asia.
En última instancia, lo que quiero calcular es la asignación para cada una de estas 3 regiones (por ejemplo, puede que el Inversor X tenga el 10% en acciones europeas, el 85% en Estados Unidos y el 5% en Asia). Mi solución actual en Excel es extraer los nombres de las acciones, buscar su región en una tabla de búsqueda y, a continuación, sumar los importes en cada uno.
Sin embargo, mi fórmula no es la más directa, y no puedo convertirla a DAX, ya que ahora estoy moviendo mis cálculos a PowerPivot. Aquí está la fórmula:
=SUMPRODUCT(TEXT(TRIM(MID(SUBSTITUTE($B4&$G$4:$G$15;"%";REPT(" ";100));FIND($G$4:$G$15;SUBSTITUTE($B4&$G$4:$G$15;"%";REPT(" ";100)))+LEN($G$4:$G$15&"/");100));"0,000;0;0;\0")*($H$4:$H$15="U.S."))/100
Desafortunadamente no he podido adjuntar el libro de trabajo de ejemplo, pero en su lugar he incluido una imagen de la hoja de abajo. Muchas gracias de antemano, hágamelo saber si necesita más.
No @Phil123456789 ,
Creo que usando power query puedes dividir cada stock en filas.
Así que puedes relacionar las tablas.
¿Puedes pegar los valores aquí?
Ricardo
Estoy de acuerdo, pero no estoy seguro de si funcionará, ya que no conozco de antemano el número de acciones en cada cartera y, por lo tanto, tampoco si dividir en 5, 10, 20 columnas, etc.
De todos modos, si tiene una solución flexible, realmente apreciaría su entrada. Estos son los datos de ejemplo.
Inversor 1 | Stock 1/5%:Stock 2/10%:Stock 3/85% |
Inversor 2 | Stock 1/30%/30000:Stock 5/20%/20000/Stock 8/50%/50000 |
Inversor 3 | Stock 7/40%/4000:Stock 4/20%/2000/Stock 1/30%/3000:Stock 2/10%/1000 |
Inversor 4 | Stock 1/5%/500,25:Stock 2/10%/1000,50:Stock 3/85%/8004 |
Inversor 5 | Stock 1/30%/30000:Stock 5/20%/20000/Stock 8/50%/50000 |
Inversor 6 | Stock 7/40%/4000:Stock 4/20%/2000/Stock 1/30%/3000:Stock 2/10%/1000 |
Inversor 7 | Stock 1/5%/500,25:Stock 2/10%/1000,50:Stock 3/85%/8004 |
Inversor 8 | Stock 1/10%/1000:Stock 2/60%/6000:Stock 5/20%/2000:Stock 6/10%/1000 |
Inversor 9 | Stock 7/40%/4000:Stock 4/20%/2000/Stock 1/30%/3000:Stock 2/10%/1000 |
Inversor 10 | Stock 1/5%/500,25:Stock 2/10%/1000,50:Stock 3/85%/8004 |
Inversor 11 | Stock 1/30%/30000:Stock 5/20%/20000/Stock 8/50%/50000 |
Inversor 12 | Stock 7/40%/4000:Stock 4/20%/2000/Stock 1/30%/3000:Stock 2/10%/1000 |
Hola @Phil123456789 ,
Compruebe este archivo: Descargar PBIX
Ahora sólo tiene que introducir las otras tablas y relacionarlo.
Si lo considera como una solución, marque como una solución y felicitaciones.
Ricardo
Genial, definitivamente funciona mejor.
Sin embargo, un problema. Como se mencionó, conozco la gama de acciones disponibles, sin embargo, no se llamarán "stock 1", "stock 2" etc., sino en su lugar "Amazon", "Facebook", etc.
Cómo lo veo, este paso va a ser un problema. ¿Alguna sugerencia en esto? Tengo una lista de todas las acciones disponibles (similar a la tabla de búsqueda en la muestra) clasificadas por región.
Ahora puede importar la tabla con el nombre de stock y relacionarlos.
También si lo desea, importe el nombre de la acción y combínelo con la tabla inicial. Si necesita ayuda con eso, simplemente pegue el nombre de la tabla aquí.
Ricardo
No estoy seguro de entenderlo.
Dado que el paso "Columna agregada" se basa en encontrar el nombre "Stock", ¿no se romperá mi consulta, ya que ninguna acción se denomina rápeaga en realidad, sino más bien "Amazon", etc.?
Mejor
Phill
Basado en su publicación inicial, ¿cómo sabe el nombre de la acción 1 ?
Sólo veo la tabla con la región que podemos usar para mapearla.
Ricardo
Tengo una lista de, por ejemplo, 100 acciones que los inversores pueden elegir.
Sin embargo, cuáles los inversores realmente eligen (y cuántos) no voy a saber de antemano. Todo lo que sé es que el nombre de la acción aparecerá en el formato mencionado.
Por lo tanto, un stock en la muestra que se ve algo como:
Sería algo como esto en el conjunto de datos real:
La clave aquí es el formato: Stock / asignación en % / asignación i USD. ¿Tiene sentido?
Aquí está una muestra ajustada:
Tabla 1: Carteras
Rcp | Cartera |
Inversor 1 | Amazon/5%:Facebook/10,315%:Apple/85% |
Inversor 2 | Amazon/30%/30000:Uber/20%/20000/Johnson & Johnson/50%/50000 |
Inversor 3 | VISA/40%/4000:Microsoft/20%/2000/Amazon/30%/3000:Facebook/10%/1000 |
Inversor 4 | Amazon/5%/500,25:Facebook/10%/1000,50:Apple/85%/8004 |
Inversor 5 | Amazon/30%/30000:Uber/20%/20000/Johnson & Johnson/50%/50000 |
Inversor 6 | VISA/40%/4000:Microsoft/20%/2000/Amazon/30%/3000:Facebook/10%/1000 |
Inversor 7 | Amazon/5%/500,25:Facebook/10%/1000,50:Apple/85%/8004 |
Inversor 8 | Amazon/10%/1000:Facebook/60%/6000:Uber/20%/2000:JPMorgan/10%/1000 |
Inversor 9 | VISA/40%/4000:Microsoft/20%/2000/Amazon/30%/3000:Facebook/10%/1000 |
Inversor 10 | Amazon/5%/500,25:Facebook/10%/1000,50:Apple/85%/8004 |
Inversor 11 | Amazon/30%/30000:Uber/20%/20000/Johnson & Johnson/50%/50000 |
Inversor 12 | VISA/40%/4000:Microsoft/20%/2000/Amazon/30%/3000:Facebook/10%/1000 |
Tabla 2: Tabla de búsqueda (ignorar las regiones)
Nombre | Región |
Amazon | Asia |
Estados unidos. | |
manzana | Europa |
Microsoft | Asia |
Uber | Estados unidos. |
Jpmorgan | Estados unidos. |
Visa | Europa |
Johnson & Johnson | Asia |
Alfabeto | Estados unidos. |
Ibm | Estados unidos. |
Tesla | Estados unidos. |
Europa |
Excelente, funcionó un encanto.
Una última investigación. ¿Hay de todos modos para llegar al resultado final directamente en PowerQuery.
Por lo tanto, en lugar de:
Preferiría:
La razón es que tengo datos adicionales donde mantener el contexto de fila es ideal.
Sí, una vez que tenga los datos reales, se dividirá por sus delimitadores ( / y : )
Ricardo
¿Le importaría actualizar el archivo en función de las tablas que acabo de agregar?
Todavía no puedo hacer que funcione por alguna razón jaja.
Lo siento por las molestias!
Hola de nuevo,
Funciona bien en PowerBi, gracias.
Sin embargo, en realidad estoy trabajando en Excel (2013) con complementos PowerQuery/PowerPivot (lo siento si no estaba claro acerca de esto), y por alguna razón, no tengo la opción "dividir en filas".
¿Qué hacer en este caso?
Mejor
Phil
Hola @Phil123456789 ,
He actualizado el archivo con otra tabla. Este nuevo código tiene otro enfoque para controlarlo.
Espero que funcione.
Ricardo
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |