Downloads · 30 days
0
Orib24/Buenos_Aires_Airbnb_Data
Buenos_Aires_Airbnb_Data is a tabular classification model from Orib24. Use it for the tabular classification task on the model card, and read the license before you ship it in a product. It is set up for sklearn. The card lists the license as mit.
Loom Video - https://www.loom.com/share/d952bab219c4444589ddaef174c0e34d
Downloads · 30 days
0
Access
Public
Updated Dec 9, 2025
Repo size
253 MB
Likes
1
Public
Click a slice to open those files.
.pkl253 MB · 99%
From the Hugging Face model README
Loom Video - https://www.loom.com/share/d952bab219c4444589ddaef174c0e34d
This project focuses on predicting the price tier (Budget, Standard, or Luxury) of Airbnb listings in Buenos Aires. Instead of a simple price prediction, we engineered advanced features using Unsupervised Learning (K-Means Clustering) to capture neighborhood characteristics and listing types, which were then fed into a Random Forest Classifier.
The dataset contains Airbnb listings from Buenos Aires. Key Features Used:
latitude, longitude: Spatial coordinates.minimum_nights: Rental policy.availability_365: Professionalism indicator.number_of_reviews: Popularity.cluster_id: Generated via K-Means to group similar listings.dist_to_centroid: Distance of listing from its cluster center.Before classification, we applied K-Means Clustering to identify hidden market segments.








We transformed the continuous price target into 3 balanced classes using Quantile Binning:
We trained and evaluated three models:
The Random Forest Classifier was selected as the best model. It demonstrated superior ability to handle non-linear relationships (especially location data) and achieved the best balance between Precision and Recall.

You can download the model using the huggingface_hub library and use it in Python:
import pickle
from huggingface_hub import hf_hub_download
import pandas as pd
# 1. Download the model
model_path = hf_hub_download(repo_id="Orib24/Buenos_Aires_Airbnb_Data", filename="airbnb_price_classifier.pkl")
# 2. Load the model
with open(model_path, "rb") as f:
model = pickle.load(f)
# 3. Prepare Data (Example)
# Ensure you have the same features: [minimum_nights, number_of_reviews, availability_365, latitude, longitude, cluster_id, dist_to_centroid]
sample_data = pd.DataFrame([[2, 50, 360, -34.58, -58.42, 1, 0.5]],
columns=['minimum_nights', 'number_of_reviews', 'availability_365', 'latitude', 'longitude', 'cluster_id', 'dist_to_centroid'])
# 4. Predict
prediction = model.predict(sample_data)
print(f"Predicted Class: {prediction[0]}") # Output: 0, 1, or 2