Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

79
Views
¿Seleccionar aleatoriamente el número de entradas del diccionario que están dentro de las categorías?

Entonces logré generar un diccionario de "marcador":

 { Player1: '10 1st', Player2: '10 1st', Player3: '10 1st', Player4: '10 1st', Player5: '10 1st', Player6: '8 2nd', Player7: '8 2nd', Player8: '8 2nd', Player9: '8 2nd', Player10: '5 3rd', Player11: '5 3rd', Player12: '5 3rd' }

Pero ahora no estoy seguro de cómo verificar si 1st/2nd/3rd en la cadena clave y luego seleccionar aleatoriamente cierta cantidad de entradas de cada "categorías (1st, 2nd, 3rd)" para generar un nuevo diccionario como:

Si quiero seleccionar aleatoriamente 3 1st , 2 2nd y 3rd entradas, el nuevo diccionario será

 { Player2: '10 1st', Player4: '10 1st', Player5: '10 1st', Player6: '8 2nd', Player9: '8 2nd', Player11: '5 3rd', Player12: '5 3rd' }

Gracias por leer..

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Tal vez convierta el objeto en una matriz aleatoria de entradas y luego filtre matrices separadas para cada tipo con <Array>.filter , luego use <Array>.slice en cada matriz para obtener una cantidad x de entradas y luego reconstruya el objeto con las entradas actualizadas:

Ejemplo usando numFirst = 3, numSecond = 2, numThird = 2 :

 const data = { Player1: '10 1st', Player2: '10 1st', Player3: '10 1st', Player4: '10 1st', Player5: '10 1st', Player6: '8 2nd', Player7: '8 2nd', Player8: '8 2nd', Player9: '8 2nd', Player10: '5 3rd', Player11: '5 3rd', Player12: '5 3rd' } let numFirst = 3; let numSecond = 2; let numThird = 2; const entries = Object.entries(data).sort(() => .5 - Math.random()); const first = entries.filter(a => a[1].endsWith('1st')).slice(0, numFirst); const second = entries.filter(a => a[1].endsWith('2nd')).slice(0, numSecond); const third = entries.filter(a => a[1].endsWith('3rd')).slice(0, numThird); const filteredData = Object.fromEntries([...first, ...second, ...third]); console.log(filteredData);

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!