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

204
Views
Javascript para obtener la muestra aleatoria de datos

ingrese la descripción de la imagen aquí

Hola a todos, estoy trabajando en un conjunto de datos en Google Sheet y necesito obtener los datos aleatorios (número especificado) por los nombres de col 3 para auditar. Estoy usando el script de la aplicación de Google para lo mismo, pero no pude obtener los datos. Aquí está el código que probé, pero no quiero el% de datos. Quiero los datos aleatorios distribuidos equitativamente para cada empleado en la columna 3.

 function myFunction() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var trn = ss.getSheetByName('Data'); var originalData = trn.getRange(2, 1, trn.getLastRow() - 1, 3).getValues(); var ReviewerEmail = data; var data = originalData.filter(function(item) { return item[1] === 'rob' || item[1] === 'john' || item[1] === 'toger'; }); //Logger.log(data); var targetsheet = ss.insertSheet(Reviewer); targetsheet.getRange(1, 1, data.length, data[0].length).setValues(data); } function getsampledata() { var sheet = SpreadsheetApp.getActiveSheet(); var range = sheet.getRange('A:C'); var values = range.getValues(); var headers = values.shift(); var nameColumn = 1; var uniqueNames = values .map((row) => row[nameColumn]) .filter((item, i, ar) => ar.indexOf(item) === i) .filter(String); var data = [headers]; uniqueNames.forEach(function(name) { var nameEntries = values.filter((row) => row[nameColumn] == name); var entries = nameEntries.length; var tenth = Math.round((entries / 100) * 27.35); //Sampling Percentage for (i = 0; i < tenth; i++) { var random = Math.floor(Math.random() * nameEntries.length); data.push(nameEntries[random]); nameEntries.splice(random, 1); } }); return data; } 

ingrese la descripción de la imagen aquí

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

0

Si desea un número específico de muestras, utilice un parámetro para indicar cuántas desea para cada una.

Guión de trabajo completo:

 function getsampledata(sample) { var sheet = SpreadsheetApp.getActiveSheet(); var range = sheet.getRange('A:C'); var values = range.getValues(); var headers = values.shift(); var nameColumn = 2; var uniqueNames = values .map((row) => row[nameColumn]) .filter((item, i, ar) => ar.indexOf(item) === i) .filter(String); var data = [headers]; uniqueNames.forEach(function(name) { var nameEntries = values.filter((row) => row[nameColumn] == name); for (i = 0; i < sample; i++) { var random = Math.floor(Math.random() * nameEntries.length); data.push(nameEntries[random]); nameEntries.splice(random, 1); } }); return data; }

ingrese la descripción de la imagen aquí

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!