Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

187
Visualizações
¿Cómo puedo imprimir solo el conteo final en la consola?

Tengo un archivo csv con el nombre y las edades de las personas. Quiero obtener el recuento de personas menores de 30 años.

He probado el siguiente código.

 <script src='https://d3js.org/d3.v7.min.js'></script> <script> let thiscsv = 'my csv link here'; let count=0; d3.csv(thiscsv, function(data) { if(data.age>30) { count++ } console.log(count); }); </script>

Comprueba cada línea e imprime en ella la consola cada vez que agrega 1 conteo donde sea verdadero hasta el final del archivo csv. Quiero imprimir solo el conteo final directamente en la consola. ¿Cómo puedo hacer esto?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Lea atentamente la respuesta que recibió para su pregunta anterior (y le sugiero que la vote a favor, como lo hice yo): lo primero que dice el que responde es que necesita then() . Este es D3 v7, no usa una devolución de llamada como D3 v4 o menos. De la forma en que lo está haciendo ahora, la llamada función de fila se ejecutará para cada fila analizada, como se esperaba.

Esto es lo que debe hacer, de nuevo, preste atención al then() :

 <script src='https://d3js.org/d3.v7.min.js'></script> <script> let thisCsv = URL.createObjectURL(new Blob([`name,age foo,12 bar,34 baz,63 foobar,17, barbar,43, barbaz,39`])); let count = 0; d3.csv(thisCsv, d3.autoType).then(data => { data.forEach(d => { if (d.age > 30) count++ }); console.log(count); }); </script>

Además, observe el d3.autoType : sin eso, sus números CSV serán cadenas , no números.

about 4 years ago · Juan Pablo Isaza Relatório

0

Si SOLO desea contar personas con edades superiores a 30:

 const process = data => { const ages = data.map(({Age}) => +Age) // make sure it is a number .filter(num => num > 30) .length console.log("Total ppl with age above 30:",ages) } // uncomment when you want to read a file // let mycsv = 'example.csv'; // d3.csv(mycsv) //.then(function(data) { process(data) //})
 <script src='https://d3js.org/d3.v7.min.js'></script> <script> const data = d3.csvParse(`PassengerId,Pclass,Name,Sex,Age,SibSp,Parch,Ticket,Fare,Cabin,Embarked 111,1,"Ken, Mr. James",male,34.5,0,0,330911,7.8292,,A 112,2,"Will, Mrs. James",female,47,1,0,363272,7,,B`); </script>

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda