Untuk Melanjutkan pembelajaran sebelumnya mengenai visualisasi data kategorik dan diskrit, pada pembelajaran kali ini dibahas visualisasi data kontinu (univariate dan bivariate). Data kontinu merupakan data yang dapat memiliki nilai dalam suatu rentang tertentu, misalnya suhu, kelembapan udara, dan jumlah penyewaan sepeda. Visualisasi data kontinu digunakan untuk memahami sebaran data, melihat pola hubungan antar variabel, serta membantu mendeteksi nilai yang tidak biasa (outlier).
Dataset yang digunakan adalah Bike Sharing, yaitu data penggunaan layanan penyewaan sepeda harian di suatu kota yang juga mencatat kondisi lingkungan seperti suhu, kelembapan, dan kecepatan angin. Melalui visualisasi ini diharapkan dapat diketahui bagaimana faktor lingkungan dan waktu berkaitan dengan banyaknya sepeda yang disewa, sehingga pola penggunaan sepeda dapat dipahami dengan lebih jelas.
Dataset yang digunakan merupakan data layanan bike sharing di Washington, D.C. yang diperoleh dari UCI Machine Learning Repository. Data ini mencatat jumlah penyewaan sepeda harian selama dua tahun beserta informasi pendukung seperti musim, kondisi cuaca, dan jenis hari.
Setelah memahami konteks data, langkah berikutnya adalah mengamati karakteristik nilai numerik di dalamnya. Beberapa pertanyaan yang ingin dijawab antara lain: apakah jumlah penyewaan sepeda berubah setiap hari, apakah nilainya relatif stabil, atau terdapat lonjakan pada waktu tertentu.
Untuk menjawabnya digunakan visualisasi univariat kontinu, yaitu visualisasi yang berfokus pada satu variabel numerik. Melalui cara ini dapat dilihat pola sebaran data, kecenderungan nilai, serta kemungkinan adanya nilai ekstrem (outlier). Hasilnya membantu memahami pola penggunaan sepeda harian dan dapat menjadi dasar dalam pengelolaan layanan agar lebih sesuai dengan kebutuhan pengguna.
Import data dari file CSV ke dalam R menggunakan fungsi read.csv(). Pastikan untuk menyesuaikan path file dengan lokasi di mana dataset disimpan di komputer Anda. Berikut adalah kode untuk memuat data:
## Load Library
library(ggplot2)
library(dplyr)
library(DT)
bike_data <- read.csv("bike_day_fiks.csv")
colnames(bike_data)
## [1] "instant" "dteday" "season" "yr" "mnth"
## [6] "holiday" "weekday" "workingday" "weathersit" "temp"
## [11] "atemp" "hum" "windspeed" "casual" "registered"
## [16] "cnt"
Berdasarkan hasil output sebelumnya, dataset ini terdiri dari 16 variabel yang mencakup variabel numerik dan kategorik. Variabel numerik yang terdapat dalam dataset antara lain temp, atemp, hum, windspeed, casual, registered, dan cnt. Variabel-variabel tersebut merepresentasikan informasi kuantitatif seperti suhu aktual, suhu yang dirasakan, tingkat kelembapan, kecepatan angin, jumlah penyewaan oleh pengguna kasual, jumlah penyewaan oleh pengguna terdaftar, serta total keseluruhan penyewaan sepeda. Secara khusus, variabel cnt merupakan hasil penjumlahan dari casual dan registered, sehingga mencerminkan total penggunaan sepeda per hari.
Adapun penjelasan masing-masing variabel numerik adalah sebagai berikut:
Sementara itu, variabel kategorik seperti season, weathersit, dan workingday telah dibahas pada pembelajaran sebelumnya. Untuk mempermudah proses analisis dan interpretasi visualisasi, variabel-variabel tersebut dilakukan proses recode, yaitu mengubah kode numerik menjadi label yang lebih deskriptif.
Dengan melakukan recode pada variabel kategorik, interpretasi grafik menjadi lebih jelas dan komunikatif. Sebagai contoh, ketika menampilkan grafik jumlah penyewaan berdasarkan musim, kita dapat langsung membaca kategori “Spring”, “Summer”, “Fall”, dan “Winter” tanpa harus mengingat kode numeriknya. Hal ini membuat visualisasi lebih intuitif serta memudahkan audiens dalam memahami informasi yang disajikan.
Perlu dicatat bahwa proses recode tidak mengubah struktur dasar dataset, melainkan hanya mengganti representasi nilai pada variabel tertentu agar lebih informatif. Dengan label yang lebih deskriptif, visualisasi yang dihasilkan akan lebih mudah dipahami dan lebih efektif dalam mendukung proses analisis.
datatable(bike_data, options = list(pageLength = 5, autoWidth = TRUE))
Visualisasi data kontinu (univariate) adalah teknik untuk menggambarkan distribusi dan karakteristik dari satu variabel numerik. Beberapa jenis visualisasi yang umum digunakan untuk data kontinu meliputi histogram, density plot, boxplot, violin plot, dan scatter plot. Setiap jenis visualisasi memiliki kelebihan dan kegunaan tertentu dalam membantu kita memahami data. Berikut adalah penjelasan singkat tentang beberapa jenis visualisasi data kontinu (univariate):
Histogram adalah grafik yang menunjukkan distribusi frekuensi dari data kontinu. Histogram membagi data menjadi interval (bin) dan menghitung jumlah pengamatan yang jatuh ke dalam setiap interval tersebut. Berikut adalah contoh kode untuk membuat histogram dari variabel cnt yang menunjukkan total jumlah penyewaan sepeda:
ggplot(bike_data, aes(x = cnt)) +
geom_histogram(binwidth = 100, fill = "steelblue", color = "white") +
labs(title = "Histogram of Total Bike Rentals",
x = "Total Rentals (cnt)",
y = "Frequency") +
theme_minimal()
Histogram tersebut memperlihatkan penyebaran jumlah penyewaan sepeda harian pada variabel cnt. Sumbu x menunjukkan banyaknya sepeda yang disewa per hari, sedangkan sumbu y menunjukkan jumlah hari pada setiap rentang penyewaan. Terlihat bahwa sebagian besar data berada pada kisaran sekitar 4.000–5.500 penyewaan per hari, sehingga penggunaan sepeda pada umumnya cukup stabil.
Namun, terdapat beberapa hari dengan penyewaan sangat tinggi (mendekati 8.000) dan juga hari dengan penyewaan sangat rendah (di bawah 1.000). Hal ini menandakan jumlah penyewaan tidak selalu sama setiap hari. Bentuk distribusi juga sedikit condong ke kanan, yang menunjukkan adanya lonjakan penyewaan pada kondisi tertentu.
Secara keseluruhan, histogram ini membantu memberikan gambaran awal tentang pola dan variasi penggunaan sepeda sebelum dilakukan analisis lebih lanjut.
Density plot adalah grafik yang menunjukkan estimasi kepadatan probabilitas dari data kontinu. Density plot menggunakan kurva untuk menggambarkan distribusi data, dan dapat memberikan gambaran yang lebih halus dibandingkan histogram. Berikut adalah contoh kode untuk membuat density plot dari variabel cnt:
ggplot(bike_data, aes(x = cnt)) +
geom_density(fill = "lightblue", alpha = 0.5) +
labs(title = "Density Plot of Total Bike Rentals",
x = "Total Rentals (cnt)",
y = "Density") +
theme_minimal()
Density plot merupakan bentuk pemulusan dari histogram yang menampilkan
pola distribusi jumlah penyewaan sepeda harian (cnt) dengan kurva yang
lebih halus. Grafik menunjukkan satu puncak utama pada kisaran
4.500–5.000 penyewaan per hari, yang berarti jumlah tersebut paling
sering terjadi sehingga penggunaan sepeda umumnya berada pada tingkat
menengah dan cukup stabil.
Kurva juga memanjang ke kanan hingga mendekati 8.000 penyewaan, menandakan adanya beberapa hari dengan penyewaan tinggi, serta memanjang ke kiri yang menunjukkan hari dengan penyewaan rendah meskipun tidak banyak. Bentuknya yang sedikit tidak simetris menunjukkan distribusi condong ke kanan.
Secara keseluruhan, density plot membantu melihat kecenderungan pusat data dan variasi penyewaan sepeda dengan lebih jelas dibandingkan histogram.
Boxplot adalah grafik yang menunjukkan distribusi data berdasarkan lima angka ringkasan: minimum, kuartil pertama (Q1), median, kuartil ketiga (Q3), dan maksimum. Boxplot juga dapat membantu mengidentifikasi outlier dalam data. Berikut adalah contoh kode untuk membuat boxplot dari variabel cnt:
ggplot(bike_data, aes(y = cnt)) +
geom_boxplot(fill = "lightgreen", color = "darkgreen") +
coord_flip() +
labs(title = "Boxplot of Total Bike Rentals",
y = "Total Rentals (cnt)") + coord_flip() +
theme_minimal()
Boxplot digunakan untuk merangkum distribusi jumlah penyewaan sepeda
harian (cnt) melalui median, kuartil, dan rentang data. Garis di dalam
kotak menunjukkan median sekitar 4.500–5.000 penyewaan per hari, yang
dapat dianggap sebagai tingkat penggunaan harian yang umum.
Batas kotak (Q1–Q3) berada kira-kira pada kisaran 3.000–6.000 penyewaan, artinya sebagian besar hari memiliki jumlah penyewaan pada tingkat menengah. Garis whisker menunjukkan nilai minimum dan maksimum yang masih wajar, serta tidak tampak pencilan yang menonjol.
Secara keseluruhan, boxplot menunjukkan bahwa penggunaan sepeda relatif stabil dengan variasi yang tidak terlalu besar.
Violin plot adalah grafik yang menggabungkan boxplot dengan density plot. Violin plot menunjukkan distribusi data serta memberikan informasi tentang kepadatan data pada setiap nilai. Berikut adalah contoh kode untuk membuat violin plot dari variabel cnt:
ggplot(bike_data, aes(x = "", y = cnt)) +
geom_violin(fill = "lightcoral", color = "darkred", alpha = 0.6) +
geom_boxplot(width = 0.1, fill = "white", color = "black", outlier.shape = NA) +
labs(title = "Violin Plot with Boxplot of Total Bike Rentals",
x = NULL,
y = "Total Rentals (cnt)") +
coord_flip() +
theme_minimal()
Grafik ini merupakan gabungan violin plot dan boxplot untuk melihat
distribusi jumlah penyewaan sepeda harian (cnt). Bagian violin yang
lebih lebar menunjukkan banyak hari memiliki penyewaan pada kisaran
tersebut, dan terlihat kepadatan terbesar berada sekitar 4.000–5.500
penyewaan per hari.
Boxplot di dalamnya menampilkan ringkasan statistik, di mana garis tengah adalah median, sedangkan kotak menunjukkan 50% data utama. Whisker memperlihatkan bahwa jumlah penyewaan bervariasi dari rendah hingga mendekati 8.000 penyewaan.
Secara umum, grafik ini menunjukkan bahwa sebagian besar hari memiliki penyewaan pada tingkat menengah, sementara hari dengan penyewaan sangat rendah atau sangat tinggi jumlahnya lebih sedikit.
Variasi jumlah penyewaan sepeda dapat dilihat dari histogram, density plot, dan boxplot pada variabel cnt. Dari ketiga visualisasi tersebut terlihat bahwa sebagian besar hari memiliki jumlah penyewaan pada kisaran 4.000–5.500 sepeda per hari, sehingga penggunaan sepeda dapat dikatakan cukup stabil.
Namun, terdapat beberapa hari dengan penyewaan sangat tinggi hingga sekitar 8.000 sepeda, serta hari dengan penyewaan rendah di bawah 1.000 sepeda. Hal ini menunjukkan bahwa jumlah penyewaan dapat berubah-ubah tergantung kondisi tertentu. Bentuk distribusi yang sedikit condong ke kanan juga menandakan adanya beberapa hari dengan lonjakan penggunaan.
Secara keseluruhan, jumlah penyewaan harian bervariasi, tetapi mayoritas berada pada tingkat menengah. Informasi ini membantu memahami pola penggunaan sepeda dan dapat digunakan sebagai dasar perencanaan layanan yang lebih baik.
Setelah memahami distribusi dari satu variabel secara terpisah, langkah analisis selanjutnya adalah menggunakan visualisasi bivariate. Visualisasi bivariate bertujuan untuk mengamati hubungan antara dua variabel sekaligus. Dalam konteks dataset ini, misalnya kita ingin melihat bagaimana jumlah penyewaan sepeda (cnt) berkaitan dengan faktor lain seperti musim (season), kondisi cuaca (weathersit), suhu (temp), atau jenis hari (workingday). Melalui pendekatan ini, analis tidak hanya melihat bagaimana data tersebar, tetapi juga mulai mengidentifikasi faktor-faktor yang mungkin berhubungan dengan naik turunnya jumlah penyewaan sepeda.
Dengan kata lain, visualisasi univariate membantu kita memahami karakter dasar dan variasi suatu variabel secara individu, sedangkan visualisasi bivariate memungkinkan kita mengeksplorasi keterkaitan antarvariabel. Analisis ini memberikan pemahaman yang lebih komprehensif karena kita dapat melihat pola hubungan yang berpotensi menjelaskan perubahan tingkat penggunaan sepeda. Berikut ini beberapa bentuk visualisasi bivariate yang dapat digunakan untuk menganalisis hubungan antara jumlah penyewaan sepeda (cnt) dan variabel lain dalam dataset.
Scatter plot adalah grafik yang menunjukkan hubungan antara dua variabel numerik. Setiap titik pada scatter plot mewakili satu pengamatan, dengan posisi titik ditentukan oleh nilai kedua variabel. Berikut adalah contoh kode untuk membuat scatter plot antara cnt dan temp:
ggplot(bike_data, aes(x = temp, y = cnt)) +
geom_point(color = "steelblue", alpha = 0.5) +
labs(title = "Scatter Plot of Total Bike Rentals vs Temperature",
x = "Temperature (temp)",
y = "Total Rentals (cnt)") +
theme_minimal()
Scatter plot memperlihatkan keterkaitan antara suhu (temp) dan total
penyewaan sepeda (cnt). Setiap titik menggambarkan satu hari, di mana
posisi ke kanan menunjukkan suhu yang lebih tinggi dan posisi ke atas
menunjukkan jumlah penyewaan yang lebih banyak. Dari pola titik terlihat
kecenderungan naik, artinya saat suhu meningkat, jumlah sepeda yang
disewa juga cenderung bertambah.
Hal ini mengindikasikan bahwa kondisi udara yang hangat mendorong masyarakat lebih sering bersepeda, sedangkan pada suhu rendah minat penyewaan menurun. Meskipun data tidak membentuk garis sempurna, arah hubungan secara umum tetap menunjukkan bahwa suhu memengaruhi jumlah penyewaan sepeda.
Boxplot bivariate digunakan untuk membandingkan distribusi variabel numerik (cnt) berdasarkan kategori dari variabel lain, seperti musim (season). Berikut adalah contoh kode untuk membuat boxplot bivariate antara cnt dan season:
ggplot(bike_data, aes(x = season, y = cnt)) +
geom_boxplot(fill = "lightblue", color = "darkblue") +
labs(title = "Boxplot of Total Bike Rentals by Musim",
x = "Musim",
y = "Total Rentals (cnt)") +
theme_minimal()
BBoxplot bivariat ini membandingkan jumlah penyewaan sepeda (cnt) pada
setiap musim (season). Setiap kotak menunjukkan sebaran data pada satu
musim, di mana garis di tengah adalah median dan kotak menggambarkan 50%
data utama.
Terlihat bahwa musim panas (Summer) memiliki jumlah penyewaan paling tinggi dengan median sekitar 5.000 sepeda per hari, sedangkan musim dingin (Winter) paling rendah dengan median di bawah 3.000. Hal ini menunjukkan bahwa orang lebih sering bersepeda saat cuaca hangat, dan penggunaan sepeda menurun ketika cuaca dingin.
Violin plot bivariate digunakan untuk membandingkan distribusi variabel numerik (cnt) berdasarkan kategori dari variabel lain, seperti kondisi cuaca (weathersit). Berikut adalah contoh kode untuk membuat violin plot bivariate antara cnt dan weathersit:
ggplot(bike_data, aes(x = weathersit, y = cnt)) +
geom_violin(fill = "lightcoral", color = "darkred", alpha = 0.6) +
geom_boxplot(width = 0.1, fill = "white", color = "black", outlier.shape = NA) +
labs(title = "Violin Plot of Total Bike Rentals by Kondisi Cuaca",
x = "Kondisi Cuaca",
y = "Total Rentals (cnt)") +
theme_minimal()
Violin plot bivariat ini membandingkan jumlah penyewaan sepeda (cnt)
pada berbagai kondisi cuaca (weathersit). Bentuk violin yang lebih lebar
menandakan lebih banyak hari memiliki jumlah penyewaan pada kisaran
tersebut, sedangkan boxplot di dalamnya menunjukkan median dan
kuartil.
Terlihat bahwa pada cuaca cerah (Clear) penyewaan sepeda jauh lebih tinggi dan lebih sering terjadi. Sebaliknya, saat hujan ringan maupun hujan deras, jumlah penyewaan cenderung lebih rendah. Hal ini menunjukkan bahwa kondisi cuaca sangat memengaruhi minat masyarakat untuk menggunakan sepeda.
Salah satu variabel lingkungan yang diperkirakan turut berperan dalam banyaknya penyewaan sepeda adalah tingkat kelembapan udara. Untuk mengamati keterkaitan antara kelembapan (hum) dan total penyewaan sepeda (cnt), digunakan visualisasi berupa scatter plot berikut.
ggplot(bike_data, aes(x = hum, y = cnt)) +
geom_point(alpha = 0.5, color = "darkcyan") +
geom_smooth(method = "lm", color = "purple") +
labs(title = "Humidity vs Total Rentals",
x = "Humidity",
y = "Total Rentals") +
theme_minimal()
Grafik scatter di atas memperlihatkan keterkaitan antara kelembapan
udara (hum) dan total penyewaan sepeda harian (cnt). Setiap titik
menggambarkan satu hari pengamatan, di mana posisi pada sumbu mendatar
menunjukkan tingkat kelembapan, sedangkan sumbu tegak menunjukkan
banyaknya sepeda yang disewa pada hari tersebut. Pola titik-titik yang
terbentuk mengarah pada hubungan negatif, ditunjukkan oleh garis regresi
yang menurun; artinya, semakin tinggi kelembapan, jumlah penyewaan
sepeda cenderung berkurang.
Meskipun demikian, titik data terlihat cukup menyebar sehingga hubungan tersebut tidak terlalu kuat. Pada tingkat kelembapan menengah, jumlah penyewaan masih bisa rendah maupun tinggi. Hal ini menunjukkan bahwa kelembapan bukan satu-satunya faktor penentu penggunaan sepeda, karena masih dipengaruhi oleh faktor lain seperti suhu, musim, dan kondisi cuaca secara umum.
Secara keseluruhan dapat dikatakan bahwa kelembapan berpengaruh menurunkan jumlah penyewaan sepeda, tetapi pengaruhnya tergolong sedang dan tidak menjadi faktor utama.
Di samping kondisi cuaca, tipe hari juga berpotensi memengaruhi pola pemakaian sepeda. Untuk melihat perbedaan jumlah penyewaan antara hari kerja dan hari non-kerja, digunakan visualisasi boxplot berikut.
ggplot(bike_data, aes(x = workingday, y = cnt)) +
geom_boxplot(fill = "lightblue") +
labs(title = "Working Day vs Total Rentals",
x = "Working Day",
y = "Total Rentals") +
theme_minimal()
Boxplot tersebut menggambarkan sebaran jumlah penyewaan sepeda
berdasarkan kategori jenis hari. Sumbu horizontal menunjukkan tipe hari
(hari kerja dan bukan hari kerja), sedangkan sumbu vertikal menampilkan
total penyewaan sepeda. Dari grafik ini dapat dilihat nilai median,
rentang interkuartil (IQR), serta tingkat keragaman data secara
keseluruhan.
Nilai median penyewaan berada di sekitar 4.500 penyewaan per hari. IQR yang cukup lebar memperlihatkan bahwa 50% data berada kira-kira pada kisaran 3.000 sampai 6.000 penyewaan, yang berarti jumlah penggunaan sepeda cukup bervariasi. Whisker yang relatif panjang menunjukkan adanya hari dengan jumlah penyewaan sangat rendah maupun sangat tinggi, namun tidak terlihat adanya pencilan ekstrem yang menonjol.
Secara umum, pemakaian sepeda pada hari kerja cenderung berada pada tingkat menengah dan relatif stabil, dengan variasi yang masih moderat. Hal ini mengindikasikan bahwa kebutuhan perjalanan rutin, seperti aktivitas berangkat dan pulang kerja, membantu menjaga konsistensi jumlah penyewaan sepeda.
Untuk mengetahui perbedaan pola pemakaian antara dua kelompok pengguna pada sistem bike sharing, analisis kemudian diarahkan pada hubungan antara pengguna terdaftar (registered) dan pengguna kasual (casual) menggunakan visualisasi scatter plot berikut.
ggplot(bike_data, aes(x = registered, y = casual)) +
geom_point(alpha = 0.5, color = "green") +
geom_smooth(method = "lm", color = "pink") +
labs(title = "Registered vs Casual Users",
x = "Registered Users",
y = "Casual Users") +
theme_minimal()
Scatter plot tersebut menggambarkan keterkaitan antara jumlah pengguna
terdaftar dan pengguna kasual dalam satu hari pengamatan. Setiap titik
mewakili satu hari data. Garis regresi linear yang cenderung naik
menandakan adanya hubungan positif di antara kedua variabel
tersebut.
Berdasarkan pola penyebaran titik, terlihat bahwa ketika jumlah pengguna terdaftar bertambah, jumlah pengguna kasual juga umumnya ikut meningkat. Artinya, pada hari-hari dengan tingkat penggunaan sepeda yang tinggi, kenaikan tidak hanya terjadi pada satu kelompok saja, tetapi dialami oleh kedua tipe pengguna. Hal ini kemungkinan dipengaruhi oleh kondisi eksternal seperti cuaca yang cerah atau periode tertentu yang mendorong masyarakat lebih banyak beraktivitas di luar ruangan.
Meskipun demikian, sebaran titik yang cukup menyebar menunjukkan bahwa hubungan tersebut tidak sepenuhnya kuat atau benar-benar linear. Terdapat beberapa hari ketika jumlah pengguna terdaftar tinggi, tetapi pengguna kasual tidak meningkat secara sebanding. Hal ini mencerminkan perbedaan karakteristik perilaku, di mana pengguna terdaftar cenderung menggunakan sepeda secara rutin, sedangkan pengguna kasual lebih bergantung pada situasi tertentu.
Secara umum, visualisasi ini mengindikasikan adanya hubungan positif antara pengguna terdaftar dan pengguna kasual, namun variasi antarhari tetap muncul karena adanya faktor lain yang turut memengaruhi pola penggunaan sepeda.
Secara keseluruhan, hasil visualisasi bivariate menunjukkan bahwa jumlah penyewaan sepeda (cnt) dipengaruhi oleh berbagai faktor lingkungan dan pola penggunaan. Variabel suhu (temp) memperlihatkan hubungan positif dengan jumlah penyewaan, artinya ketika suhu meningkat, jumlah sepeda yang disewa juga cenderung bertambah. Hal ini menandakan bahwa kondisi udara yang lebih hangat membuat masyarakat lebih tertarik untuk bersepeda. Selain itu, faktor musim (season) juga berpengaruh, di mana tingkat penyewaan pada musim panas relatif lebih tinggi dibandingkan musim dingin karena aktivitas luar ruangan terasa lebih nyaman.
Kondisi cuaca (weathersit) mendukung temuan tersebut. Pada cuaca cerah, jumlah penyewaan terlihat lebih tinggi, sedangkan saat hujan atau cuaca kurang baik, penggunaan sepeda cenderung menurun. Sementara itu, kelembapan udara (hum) menunjukkan kecenderungan hubungan negatif dengan jumlah penyewaan, walaupun tidak terlalu kuat. Artinya, kelembapan yang tinggi dapat mengurangi kenyamanan sehingga minat masyarakat untuk menggunakan sepeda ikut menurun.
Dilihat dari jenis hari, perbandingan antara hari kerja (workingday) dan bukan hari kerja menunjukkan bahwa aktivitas komuter harian berkontribusi terhadap kestabilan penggunaan sepeda, meskipun variasi tetap terjadi pada beberapa hari. Di sisi lain, hubungan antara pengguna terdaftar (registered) dan pengguna kasual (casual) memperlihatkan pola positif, yang berarti ketika penggunaan sepeda secara umum meningkat, kedua kelompok pengguna ikut bertambah. Hal ini mengindikasikan adanya pengaruh faktor eksternal yang mendorong peningkatan penggunaan sepeda secara keseluruhan.
Dengan demikian, pola penggunaan sepeda dalam dataset tidak ditentukan oleh satu faktor saja, tetapi merupakan hasil interaksi berbagai faktor seperti suhu, musim, kondisi cuaca, kelembapan, serta karakteristik pengguna dan jenis hari. Informasi ini penting sebagai dasar perencanaan layanan bike sharing agar lebih efektif dan mampu menyesuaikan diri terhadap perubahan kondisi lingkungan maupun pola permintaan pengguna.