Close Menu
  • Home
  • Programming
    • JavaScript
    • TypeScript
    • Node.js
    • Python
    • PHP
    • CSS
    • HTML
  • Framework
    • Express.js
    • Laravel
    • Nest.js
    • React.js
    • Expo
    • React Native
    • Next.js
    • Strapi (Headless CMS)
    • WordPress (CMS)
  • Hot Topics
    • Software Architect
    • Artificial Intelligence
    • Data Science
    • Chat Bot
    • Machine Learning
      • Library JS
        • Danfo.js
    • Natural Language Processing
    • Proof of Concept
    • Kampus
  • Roles
    • Data Engineer
    • Software Engineer
    • DevOps
      • Docker
      • Jenkins
      • VPS (Virtual Private Server)
      • Ubuntu Server
  • Databases
    • Postgre SQL
    • SQL
    • SQL Server
    • Redis

Subscribe to Updates

Get the latest creative news from FooBar about art, design and business.

What's Hot

Kenalan dengan Danfo.js: Apa Itu, Kapan Dipakai, dan Perbandingan Cepat vs Pandas

November 8, 2025

Agen Kode Berbasis AI Mulai Menguasai Dunia Korporat: Ini Daftar Tools-nya

August 11, 2025

Vibe Coding: Cara Baru Ngoding Bareng AI yang Lagi Ngetren di 2025

August 5, 2025
Facebook X (Twitter) Instagram
Lampung DevLampung Dev
  • Home
  • Programming
    • JavaScript
    • TypeScript
    • Node.js
    • Python
    • PHP
    • CSS
    • HTML
  • Framework
    • Express.js
    • Laravel
    • Nest.js
    • React.js
    • Expo
    • React Native
    • Next.js
    • Strapi (Headless CMS)
    • WordPress (CMS)
  • Hot Topics
    • Software Architect
    • Artificial Intelligence
    • Data Science
    • Chat Bot
    • Machine Learning
      • Library JS
        • Danfo.js
    • Natural Language Processing
    • Proof of Concept
    • Kampus
  • Roles
    • Data Engineer
    • Software Engineer
    • DevOps
      • Docker
      • Jenkins
      • VPS (Virtual Private Server)
      • Ubuntu Server
  • Databases
    • Postgre SQL
    • SQL
    • SQL Server
    • Redis
Facebook X (Twitter) Instagram
Lampung DevLampung Dev
Home » Kenalan dengan Danfo.js: Apa Itu, Kapan Dipakai, dan Perbandingan Cepat vs Pandas
Danfo.js

Kenalan dengan Danfo.js: Apa Itu, Kapan Dipakai, dan Perbandingan Cepat vs Pandas

Abdan Zam Zam RamadhanBy Abdan Zam Zam RamadhanNovember 8, 2025Updated:November 8, 2025No Comments4 Mins Read
Share Facebook Twitter Pinterest LinkedIn Tumblr Reddit Telegram Email
Share
Facebook Twitter LinkedIn Pinterest Email

Daftar Isi

Toggle
  • Apa itu Danfo.js?
    • Instalasi singkat
  • Kapan sebaiknya pakai Danfo.js?
  • Perbandingan cepat: Danfo.js vs pandas
  • Contoh kode praktis (side-by-side)
    • 1) Membuat DataFrame & melihat data
    • 2) Seleksi kolom & filter baris
    • 3) Groupby & agregasi
    • 4) Join/Merge
    • 5) Baca CSV (Node, browser)
  • Pola kerja & tips (biar “mudah dipahami”)
  • Rekomendasi singkat
  • Referensi

Apa itu Danfo.js?

Danfo.js adalah library JavaScript untuk manipulasi dan analisis data—konsepnya mirip pandas di Python. Ia menyediakan struktur data DataFrame dan Series dengan API yang serupa, sehingga pengguna pandas relatif cepat beradaptasi. Danfo bisa dipakai di Node.js maupun browser.

Fitur penting yang sering jadi pembeda:

  • Bisa jalan di browser (CDN/npm) dan di Node.js (paket danfojs-node).
  • Terintegrasi dengan TensorFlow.js: DataFrame/Series dapat dikonversi ke/ dari tensor untuk alur analitik-ML murni JavaScript.
  • I/O fleksibel: baca CSV dari file lokal (Node), URL, maupun File input (browser), termasuk chunking.
  • Plotting memakai Plotly dan hanya berlaku di browser/client-side.

Instalasi singkat

Node.js:

npm install danfojs-node

Front-end (React/Vue/Next, dsb.):

npm install danfojs

CDN (HTML langsung): pakai <script

src="https://cdn.jsdelivr.net/npm/danfojs@latest/lib/bundle.min.js"></script> lalu akses via namespace dfd.

Kapan sebaiknya pakai Danfo.js?

Pilih Danfo.js ketika:

  1. Seluruh stack kamu JavaScript/TypeScript dan kamu ingin tetap satu bahasa dari front-end sampai back-end.
  2. Analitik di sisi klien (browser): dashboard ringan, eksplorasi CSV, prototyping data langsung di halaman web (tanpa server Python).
  3. Serverless/Edge/Node microservice yang butuh transformasi data cepat tanpa menambah dependensi lintas bahasa.
  4. Integrasi ML berbasis TF.js (mis. konversi DataFrame → tensor untuk inferensi model di browser).

Pertimbangkan pandas bila:

  • Dataset besar dan/atau operasi numerik berat—ekosistem Python (NumPy/C-extensions) masih sangat matang untuk komputasi intensif.
  • Kamu sudah berada di ekosistem sains data Python (Jupyter, scikit-learn, dsb.) dengan tooling lengkap.

Ringkasnya: Danfo.js unggul untuk aplikasi web/JS full-stack dan integrasi TF.js, sedangkan pandas unggul untuk workload analitik/ilmiah skala besar di Python.

Perbandingan cepat: Danfo.js vs pandas

AspekDanfo.jspandas
Bahasa & runtimeJavaScript/TypeScript (Node & browser)Python (CPython, Jupyter, dll.)
Struktur dataDataFrame, Series (API mirip pandas)DataFrame, Series
Integrasi MLTensorFlow.js (tensor ↔ DataFrame)scikit-learn, PyTorch, TensorFlow (Python)
I/O umumreadCSV dari file/URL/File (browser), chunkingread_csv, read_parquet, dll. sangat luas
VisualisasiPlotly (browser-only) via API plotMatplotlib/Seaborn/Plotly (umumnya via Python)
Kapan unggulAplikasi web, dashboard browser, stack JS murniAnalitik berat, ekosistem data science Python

Sumber kunci: API mirip pandas (README), dukungan Node & browser, TF.js, readCSV, dan plotting browser-only.

Contoh kode praktis (side-by-side)

1) Membuat DataFrame & melihat data

Danfo.js (Node)

import * as dfd from "danfojs-node";

const df = new dfd.DataFrame([
  { city: "Jakarta", temp: 31, rain: true },
  { city: "Bandung", temp: 24, rain: false },
  { city: "Surabaya", temp: 33, rain: true },
]);

df.head().print();      // 5 baris pertama
df.describe().print();  // statistik ringkas

pandas (Python)

import pandas as pd

df = pd.DataFrame([
    {"city": "Jakarta", "temp": 31, "rain": True},
    {"city": "Bandung", "temp": 24, "rain": False},
    {"city": "Surabaya", "temp": 33, "rain": True},
])

print(df.head())
print(df.describe())

2) Seleksi kolom & filter baris

Danfo.js

const hotter = df.query(df["temp"].gt(30)); // temp > 30
hotter.loc({ columns: ["city", "temp"] }).print();

pandas

hotter = df[df["temp"] > 30]
print(hotter.loc[:, ["city", "temp"]])

3) Groupby & agregasi

Danfo.js

const byRain = df.groupby(["rain"]).col(["temp"]).mean();
byRain.print(); // rata-rata suhu per rain=true/false

pandas

by_rain = df.groupby(["rain"])["temp"].mean()
print(by_rain)

4) Join/Merge

Danfo.js

const dfA = new dfd.DataFrame([{ city:"Jakarta", pop:10.6 }, { city:"Bandung", pop:2.5 }]);
const dfB = new dfd.DataFrame([{ city:"Jakarta", area:661 }, { city:"Bandung", area:167 }]);

const merged = dfd.merge({ left: dfA, right: dfB, on: ["city"], how: "inner" });
merged.print();

pandas

dfA = pd.DataFrame([{"city":"Jakarta","pop":10.6},{"city":"Bandung","pop":2.5}])
dfB = pd.DataFrame([{"city":"Jakarta","area":661},{"city":"Bandung","area":167}])

merged = pd.merge(dfA, dfB, on=["city"], how="inner")
print(merged)

5) Baca CSV (Node, browser)

Danfo.js (Node)

import * as dfd from "danfojs-node";

const df = await dfd.readCSV("./data/weather.csv"); // file lokal
df.head().print();

Danfo.js (Browser)

<input type="file" id="csvFile">
<script type="module">
  import * as dfd from "https://cdn.jsdelivr.net/npm/danfojs@latest/lib/bundle.min.js";
  document.getElementById("csvFile").addEventListener("change", async (e) => {
    const file = e.target.files[0];
    const df = await dfd.readCSV(file); // File input browser
    df.head().print();
  });
</script>

(readCSV mendukung file lokal di Node, File browser, dan URL—serta chunking untuk file besar.)

6) Plotting (browser)

<div id="plot"></div>
<script type="module">
  import * as dfd from "https://cdn.jsdelivr.net/npm/danfojs@latest/lib/bundle.min.js";
  const df = new dfd.DataFrame({ city: ["JKT","BDG","SBY"], temp: [31,24,33] });
  df.plot("plot").bar(); // Plotly di balik layar (browser only)
</script>

(Plotting saat ini didukung via Plotly dan berjalan di client-side/browser.)

Pola kerja & tips (biar “mudah dipahami”)

  1. Promise/async: Banyak fungsi I/O (mis. readCSV) bersifat async → gunakan await/.then().
  2. Memori browser: Untuk file besar di browser, manfaatkan chunking readCSV atau lakukan praproses di server.
  3. TensorFlow.js: Jika butuh inferensi ML di UI, konversi DataFrame → tensor (df.tensor) lalu pakai model TF.js.
  4. Plot cepat: Untuk demo/eksplorasi data, plotting Danfo.js + Plotly di browser sangat praktis (tanpa setup Python).
  5. Mirip pandas, tapi bukan pandas: Nama metode banyak yang serupa, namun detail perilaku/opsi bisa berbeda—cek dokumentasi Danfo saat porting dari pandas.

Rekomendasi singkat

  • Pakai Danfo.js bila kamu membangun aplikasi web interaktif atau stack JS full dan ingin analitik langsung di browser/Node dengan jalur ke TF.js.
  • Pakai pandas bila fokus pada sains data/ETL berat dan ekosistem Python (NumPy, SciPy, scikit-learn) sudah jadi kebutuhan utama.

Referensi

  • Getting Started & instalasi Danfo.js (Node, browser, CDN), API dasar, plotting browser-only. (source: danfo.jsdata.org)
  • Integrasi TensorFlow.js & konversi DataFrame↔tensor. (source: danfo.jsdata.org)
  • “What is Danfo.js” & API mirip pandas (GitHub README). (source: GitHub)
  • danfo.readCSV (file lokal Node, URL, File browser, chunking). (source: danfo.jsdata.org)
  • Pengantar resmi (TensorFlow blog). (source: blog.tensorflow.org)

Analisis Data Danfo.js dashboard web data frame JS JavaScript data analysis manipulasi data Node.js pandas TensorFlow.js
Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleAgen Kode Berbasis AI Mulai Menguasai Dunia Korporat: Ini Daftar Tools-nya
Abdan Zam Zam Ramadhan
  • Website
  • LinkedIn

Senior Software Engineer at PT. Astra Internasional, Tbk.

Related Posts

Node.js

7 Library NPM untuk Mengonversi Gambar ke Format Lainnya, Cobain Geh!

May 26, 2024
Kecerdasan Buatan

Masa Depan Kecerdasan Buatan: Tren dan Tantangan di Dunia Informatika

October 25, 2023
News

Apa Itu Node.js? Pengertian, Fungsi, dan Kelebihannya

July 19, 2023
Demo
Top Posts

Cara Menggunakan Foreach di Node.js?

February 13, 202469 Views

Cara Install XAMPP (Apache, MariaDB, PHP dan Perl) pada Windows

November 26, 202350 Views

Bagaimana Prospek Karir Jurusan Teknik Informatika?

February 14, 202447 Views

10 Plugin VS Code yang Wajib Developer Install

June 15, 202440 Views

Lagi Viral! S3 Computer Science: Perlukah Bisa Ngoding?

May 24, 202438 Views
Stay In Touch
  • Facebook
  • YouTube
  • WhatsApp
  • Instagram
  • LinkedIn
Latest Reviews

Subscribe to Updates

Get the latest tech news from FooBar about tech, design and biz.

Demo
Most Popular

Cara Menggunakan Foreach di Node.js?

February 13, 202469 Views

Cara Install XAMPP (Apache, MariaDB, PHP dan Perl) pada Windows

November 26, 202350 Views

Bagaimana Prospek Karir Jurusan Teknik Informatika?

February 14, 202447 Views
Our Picks

Kenalan dengan Danfo.js: Apa Itu, Kapan Dipakai, dan Perbandingan Cepat vs Pandas

November 8, 2025

Agen Kode Berbasis AI Mulai Menguasai Dunia Korporat: Ini Daftar Tools-nya

August 11, 2025

Vibe Coding: Cara Baru Ngoding Bareng AI yang Lagi Ngetren di 2025

August 5, 2025

Subscribe to Updates

Get the latest creative news from FooBar about art, design and business.

Facebook X (Twitter) Instagram Pinterest
  • Jobs
  • Project Freelance
  • About Me
  • Contact
Copyright © 2025 Lampung Dev. Developed by Abdan Zam Zam Ramadhan.

Type above and press Enter to search. Press Esc to cancel.