{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [] }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "language_info": { "name": "python" } }, "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 759 }, "id": "t_ny4lXPpP08", "outputId": "18970849-a2a3-468d-c52a-828c45bc6a6b" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Trovati 22 file CSV:\n", "- all_cities_combined.csv\n", "- all_cities_combined_clean.csv\n", "- amsterdam_weekdays.csv\n", "- amsterdam_weekends.csv\n", "- athens_weekdays.csv\n", "- athens_weekends.csv\n", "- barcelona_weekdays.csv\n", "- barcelona_weekends.csv\n", "- berlin_weekdays.csv\n", "- berlin_weekends.csv\n", "- budapest_weekdays.csv\n", "- budapest_weekends.csv\n", "- lisbon_weekdays.csv\n", "- lisbon_weekends.csv\n", "- london_weekdays.csv\n", "- london_weekends.csv\n", "- paris_weekdays.csv\n", "- paris_weekends.csv\n", "- rome_weekdays.csv\n", "- rome_weekends.csv\n", "- vienna_weekdays.csv\n", "- vienna_weekends.csv\n" ] }, { "output_type": "display_data", "data": { "text/plain": [ " Unnamed: 0 realSum room_type room_shared room_private \\\n", "0 0 194.033698 Private room False True \n", "1 1 344.245776 Private room False True \n", "2 2 264.101422 Private room False True \n", "3 3 433.529398 Private room False True \n", "4 4 485.552926 Private room False True \n", "\n", " person_capacity host_is_superhost multi biz cleanliness_rating ... \\\n", "0 2.0 False 1 0 10.0 ... \n", "1 4.0 False 0 0 8.0 ... \n", "2 2.0 False 0 1 9.0 ... \n", "3 4.0 False 0 1 9.0 ... \n", "4 2.0 True 0 0 10.0 ... \n", "\n", " bedrooms dist metro_dist attr_index attr_index_norm rest_index \\\n", "0 1 5.022964 2.539380 78.690379 4.166708 98.253896 \n", "1 1 0.488389 0.239404 631.176378 33.421209 837.280757 \n", "2 1 5.748312 3.651621 75.275877 3.985908 95.386955 \n", "3 2 0.384862 0.439876 493.272534 26.119108 875.033098 \n", "4 1 0.544738 0.318693 552.830324 29.272733 815.305740 \n", "\n", " rest_index_norm lng city day \n", "0 6.846473 4.90569 amsterdam weekdays \n", "1 58.342928 4.90005 amsterdam weekdays \n", "2 6.646700 4.97512 amsterdam weekdays \n", "3 60.973565 4.89417 amsterdam weekdays \n", "4 56.811677 4.90051 amsterdam weekdays \n", "\n", "[5 rows x 21 columns]" ], "text/html": [ "\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Unnamed: 0realSumroom_typeroom_sharedroom_privateperson_capacityhost_is_superhostmultibizcleanliness_rating...bedroomsdistmetro_distattr_indexattr_index_normrest_indexrest_index_normlngcityday
00194.033698Private roomFalseTrue2.0False1010.0...15.0229642.53938078.6903794.16670898.2538966.8464734.90569amsterdamweekdays
11344.245776Private roomFalseTrue4.0False008.0...10.4883890.239404631.17637833.421209837.28075758.3429284.90005amsterdamweekdays
22264.101422Private roomFalseTrue2.0False019.0...15.7483123.65162175.2758773.98590895.3869556.6467004.97512amsterdamweekdays
33433.529398Private roomFalseTrue4.0False019.0...20.3848620.439876493.27253426.119108875.03309860.9735654.89417amsterdamweekdays
44485.552926Private roomFalseTrue2.0True0010.0...10.5447380.318693552.83032429.272733815.30574056.8116774.90051amsterdamweekdays
\n", "

5 rows × 21 columns

\n", "
\n", "
\n", "\n", "
\n", " \n", "\n", " \n", "\n", " \n", "
\n", "\n", "\n", "
\n", "
\n" ], "application/vnd.google.colaboratory.intrinsic+json": { "type": "dataframe" } }, "metadata": {} } ], "source": [ "from pathlib import Path\n", "import pandas as pd\n", "\n", "# Cartella dove si trovano i CSV (di solito è la working directory del notebook)\n", "DATA_DIR = Path(\".\")\n", "\n", "# Prende tutti i file .csv nella cartella\n", "csv_files = sorted(DATA_DIR.glob(\"*.csv\"))\n", "\n", "print(f\"Trovati {len(csv_files)} file CSV:\")\n", "for f in csv_files:\n", " print(\"-\", f.name)\n", "\n", "# Legge tutti i CSV in un dizionario: {nome_file: dataframe}\n", "dfs = {f.stem: pd.read_csv(f) for f in csv_files}\n", "\n", "# Esempio: vedere i primi record del primo file\n", "first_key = next(iter(dfs))\n", "display(dfs[first_key].head())" ] }, { "cell_type": "code", "source": [ "from pathlib import Path\n", "import pandas as pd\n", "\n", "DATA_DIR = Path(\".\")\n", "csv_files = sorted(DATA_DIR.glob(\"*.csv\"))\n", "\n", "def parse_city_day(stem: str):\n", " \"\"\"\n", " Esempi di stem:\n", " 'amsterdam_weekends' -> ('amsterdam', 'weekend')\n", " 'barcelona_weekdays' -> ('barcelona', 'weekdays')\n", " \"\"\"\n", " parts = stem.split(\"_\")\n", " if len(parts) < 2:\n", " raise ValueError(f\"Nome file non nel formato atteso 'city_day': {stem}\")\n", "\n", " city = \"_\".join(parts[:-1]) # nel caso la city avesse underscore\n", " day_raw = parts[-1].lower()\n", "\n", " # Normalizzo: vuoi 'weekdays' e 'weekend'\n", " if day_raw == \"weekends\":\n", " day = \"weekend\"\n", " elif day_raw == \"weekdays\":\n", " day = \"weekdays\"\n", " else:\n", " # fallback: lascia com'è (oppure alza errore se preferisci)\n", " day = day_raw\n", "\n", " return city, day\n", "\n", "all_dfs = []\n", "\n", "for f in csv_files:\n", " df = pd.read_csv(f)\n", "\n", " city, day = parse_city_day(f.stem)\n", " df[\"city\"] = city\n", " df[\"day\"] = day\n", "\n", " all_dfs.append(df)\n", "\n", "combined = pd.concat(all_dfs, ignore_index=True)\n", "\n", "print(\"Shape finale:\", combined.shape)\n", "display(combined.head())\n", "\n", "# Salva su disco\n", "output_path = DATA_DIR / \"all_cities_combined.csv\"\n", "combined.to_csv(output_path, index=False)\n", "print(\"Salvato:\", output_path.resolve())" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 394 }, "id": "ZpiXiOhLqL2Y", "outputId": "2081d72c-985d-4598-c1dc-a072b16bf9d9" }, "execution_count": null, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Shape finale: (206828, 24)\n" ] }, { "output_type": "display_data", "data": { "text/plain": [ " Unnamed: 0 realSum room_type room_shared room_private \\\n", "0 0.0 194.033698 Private room False True \n", "1 1.0 344.245776 Private room False True \n", "2 2.0 264.101422 Private room False True \n", "3 3.0 433.529398 Private room False True \n", "4 4.0 485.552926 Private room False True \n", "\n", " person_capacity host_is_superhost multi biz cleanliness_rating ... \\\n", "0 2.0 False 1 0 10.0 ... \n", "1 4.0 False 0 0 8.0 ... \n", "2 2.0 False 0 1 9.0 ... \n", "3 4.0 False 0 1 9.0 ... \n", "4 2.0 True 0 0 10.0 ... \n", "\n", " attr_index attr_index_norm rest_index rest_index_norm lng \\\n", "0 78.690379 4.166708 98.253896 6.846473 4.90569 \n", "1 631.176378 33.421209 837.280757 58.342928 4.90005 \n", "2 75.275877 3.985908 95.386955 6.646700 4.97512 \n", "3 493.272534 26.119108 875.033098 60.973565 4.89417 \n", "4 552.830324 29.272733 815.305740 56.811677 4.90051 \n", "\n", " city day realsum unnamed_0 lat \n", "0 all_cities combined NaN NaN NaN \n", "1 all_cities combined NaN NaN NaN \n", "2 all_cities combined NaN NaN NaN \n", "3 all_cities combined NaN NaN NaN \n", "4 all_cities combined NaN NaN NaN \n", "\n", "[5 rows x 24 columns]" ], "text/html": [ "\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Unnamed: 0realSumroom_typeroom_sharedroom_privateperson_capacityhost_is_superhostmultibizcleanliness_rating...attr_indexattr_index_normrest_indexrest_index_normlngcitydayrealsumunnamed_0lat
00.0194.033698Private roomFalseTrue2.0False1010.0...78.6903794.16670898.2538966.8464734.90569all_citiescombinedNaNNaNNaN
11.0344.245776Private roomFalseTrue4.0False008.0...631.17637833.421209837.28075758.3429284.90005all_citiescombinedNaNNaNNaN
22.0264.101422Private roomFalseTrue2.0False019.0...75.2758773.98590895.3869556.6467004.97512all_citiescombinedNaNNaNNaN
33.0433.529398Private roomFalseTrue4.0False019.0...493.27253426.119108875.03309860.9735654.89417all_citiescombinedNaNNaNNaN
44.0485.552926Private roomFalseTrue2.0True0010.0...552.83032429.272733815.30574056.8116774.90051all_citiescombinedNaNNaNNaN
\n", "

5 rows × 24 columns

\n", "
\n", "
\n", "\n", "
\n", " \n", "\n", " \n", "\n", " \n", "
\n", "\n", "\n", "
\n", "
\n" ], "application/vnd.google.colaboratory.intrinsic+json": { "type": "dataframe" } }, "metadata": {} }, { "output_type": "stream", "name": "stdout", "text": [ "Salvato: /content/all_cities_combined.csv\n" ] } ] }, { "cell_type": "code", "source": [ "from pathlib import Path\n", "import pandas as pd\n", "import numpy as np\n", "import re\n", "\n", "np.random.seed(42)\n", "\n", "DATA_DIR = Path(\".\")\n", "OUTPUT_FILE = DATA_DIR / \"FINAL_merged_clean_synthetic.csv\"\n", "TARGET_PRICE_COLUMN = \"realsum\"\n", "\n", "def parse_city_day(stem):\n", " parts = stem.split(\"_\")\n", " city = \"_\".join(parts[:-1])\n", " day_raw = parts[-1].lower()\n", " day = \"weekend\" if day_raw == \"weekends\" else \"weekdays\"\n", " return city, day\n", "\n", "def clean_columns(cols):\n", " cleaned = []\n", " for c in cols:\n", " c = str(c).strip().lower()\n", " c = re.sub(r\"\\s+\", \"_\", c)\n", " c = re.sub(r\"[^a-z0-9_]\", \"\", c)\n", " cleaned.append(c)\n", " return cleaned\n", "\n", "def to_numeric_safe(series):\n", " if series.dtype != \"object\":\n", " return pd.to_numeric(series, errors=\"coerce\")\n", " s = series.astype(str).str.strip()\n", " s = s.replace({\"\": np.nan, \"nan\": np.nan, \"None\": np.nan, \"null\": np.nan})\n", " s = s.str.replace(r\"[^0-9,\\.\\-]\", \"\", regex=True)\n", " s = s.str.replace(\",\", \".\", regex=False)\n", " return pd.to_numeric(s, errors=\"coerce\")\n", "\n", "# Read only original city files\n", "csv_files = sorted(DATA_DIR.glob(\"*_weekdays.csv\")) + sorted(DATA_DIR.glob(\"*_weekends.csv\"))\n", "\n", "all_dfs = []\n", "all_cols = set()\n", "\n", "for f in csv_files:\n", " df = pd.read_csv(f)\n", " df.columns = clean_columns(df.columns)\n", "\n", " df = df.drop(columns=[\"unnamed_0\", \"lat\", \"lng\", \"long\", \"latitude\", \"longitude\"], errors=\"ignore\")\n", " df = df.loc[:, ~df.columns.duplicated()]\n", "\n", " city, day = parse_city_day(f.stem)\n", " df[\"city\"] = city\n", " df[\"day\"] = day\n", "\n", " all_cols.update(df.columns)\n", " all_dfs.append(df)\n", "\n", "all_cols = sorted(all_cols)\n", "aligned = [df.reindex(columns=all_cols) for df in all_dfs]\n", "combined = pd.concat(aligned, ignore_index=True)\n", "\n", "combined = combined.dropna(axis=1, how=\"all\")\n", "combined = combined.replace(r\"^\\s*$\", np.nan, regex=True)\n", "\n", "combined[TARGET_PRICE_COLUMN] = to_numeric_safe(combined[TARGET_PRICE_COLUMN])\n", "combined = combined.dropna(subset=[TARGET_PRICE_COLUMN])\n", "combined = combined[combined[TARGET_PRICE_COLUMN] > 0]\n", "combined = combined.drop_duplicates().reset_index(drop=True)\n", "\n", "# Synthetic columns\n", "dist = np.random.exponential(scale=3, size=len(combined))\n", "dist = np.clip(dist, 0.1, 15)\n", "combined[\"distance_from_center_km\"] = np.round(dist, 2)\n", "\n", "bw = []\n", "for d in combined[\"day\"]:\n", " if d == \"weekend\":\n", " val = np.random.gamma(2, 3)\n", " else:\n", " val = np.random.gamma(2, 6)\n", " bw.append(val)\n", "\n", "bw = np.clip(bw, 0, 90)\n", "combined[\"booking_window_days\"] = np.round(bw).astype(int)\n", "\n", "p = 0.6 - (combined[\"distance_from_center_km\"] / 50)\n", "p = np.clip(p, 0.3, 0.8)\n", "combined[\"has_amenities_bundle\"] = np.random.binomial(1, p)\n", "\n", "combined.to_csv(OUTPUT_FILE, index=False)\n", "\n", "print(\"Saved:\", OUTPUT_FILE.resolve())\n", "print(\"Shape:\", combined.shape)\n", "print(\"Columns:\", list(combined.columns))\n", "print(combined.head(10))" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "UIYqgrXlytAv", "outputId": "d5a8399b-fca1-448c-f586-54c646e824c8" }, "execution_count": null, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Saved: /content/FINAL_merged_clean_synthetic.csv\n", "Shape: (51707, 22)\n", "Columns: ['attr_index', 'attr_index_norm', 'bedrooms', 'biz', 'city', 'cleanliness_rating', 'day', 'dist', 'guest_satisfaction_overall', 'host_is_superhost', 'metro_dist', 'multi', 'person_capacity', 'realsum', 'rest_index', 'rest_index_norm', 'room_private', 'room_shared', 'room_type', 'distance_from_center_km', 'booking_window_days', 'has_amenities_bundle']\n", " attr_index attr_index_norm bedrooms biz city cleanliness_rating \\\n", "0 78.690379 4.166708 1 0 amsterdam 10.0 \n", "1 631.176378 33.421209 1 0 amsterdam 8.0 \n", "2 75.275877 3.985908 1 1 amsterdam 9.0 \n", "3 493.272534 26.119108 2 1 amsterdam 9.0 \n", "4 552.830324 29.272733 1 0 amsterdam 10.0 \n", "5 174.788957 9.255191 2 0 amsterdam 8.0 \n", "6 200.167652 10.599010 1 0 amsterdam 10.0 \n", "7 208.808109 11.056528 3 0 amsterdam 10.0 \n", "8 106.226456 5.624761 2 0 amsterdam 9.0 \n", "9 206.252862 10.921226 1 0 amsterdam 10.0 \n", "\n", " day dist guest_satisfaction_overall host_is_superhost ... \\\n", "0 weekdays 5.022964 93.0 False ... \n", "1 weekdays 0.488389 85.0 False ... \n", "2 weekdays 5.748312 87.0 False ... \n", "3 weekdays 0.384862 90.0 False ... \n", "4 weekdays 0.544738 98.0 True ... \n", "5 weekdays 2.131420 100.0 False ... \n", "6 weekdays 1.881092 94.0 False ... \n", "7 weekdays 1.686807 100.0 True ... \n", "8 weekdays 3.719141 96.0 False ... \n", "9 weekdays 3.142361 88.0 False ... \n", "\n", " person_capacity realsum rest_index rest_index_norm room_private \\\n", "0 2.0 194.033698 98.253896 6.846473 True \n", "1 4.0 344.245776 837.280757 58.342928 True \n", "2 2.0 264.101422 95.386955 6.646700 True \n", "3 4.0 433.529398 875.033098 60.973565 True \n", "4 2.0 485.552926 815.305740 56.811677 True \n", "5 3.0 552.808567 225.201662 15.692376 True \n", "6 2.0 215.124317 242.765524 16.916251 True \n", "7 4.0 2771.307384 272.313823 18.975219 False \n", "8 4.0 1001.804420 133.876202 9.328686 False \n", "9 2.0 276.521454 238.291258 16.604478 True \n", "\n", " room_shared room_type distance_from_center_km booking_window_days \\\n", "0 False Private room 1.41 23 \n", "1 False Private room 9.03 2 \n", "2 False Private room 3.95 14 \n", "3 False Private room 2.74 1 \n", "4 False Private room 0.51 29 \n", "5 False Private room 0.51 8 \n", "6 False Private room 0.18 2 \n", "7 False Entire home/apt 6.03 12 \n", "8 False Entire home/apt 2.76 25 \n", "9 False Private room 3.69 25 \n", "\n", " has_amenities_bundle \n", "0 1 \n", "1 0 \n", "2 0 \n", "3 0 \n", "4 0 \n", "5 1 \n", "6 0 \n", "7 1 \n", "8 0 \n", "9 0 \n", "\n", "[10 rows x 22 columns]\n" ] } ] }, { "cell_type": "code", "source": [ "combined.head(10)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 585 }, "id": "IjYBdSc3zaLb", "outputId": "76d81c34-347f-4a30-f96e-64457af64a7d" }, "execution_count": null, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " attr_index attr_index_norm bedrooms biz city cleanliness_rating \\\n", "0 78.690379 4.166708 1 0 amsterdam 10.0 \n", "1 631.176378 33.421209 1 0 amsterdam 8.0 \n", "2 75.275877 3.985908 1 1 amsterdam 9.0 \n", "3 493.272534 26.119108 2 1 amsterdam 9.0 \n", "4 552.830324 29.272733 1 0 amsterdam 10.0 \n", "5 174.788957 9.255191 2 0 amsterdam 8.0 \n", "6 200.167652 10.599010 1 0 amsterdam 10.0 \n", "7 208.808109 11.056528 3 0 amsterdam 10.0 \n", "8 106.226456 5.624761 2 0 amsterdam 9.0 \n", "9 206.252862 10.921226 1 0 amsterdam 10.0 \n", "\n", " day dist guest_satisfaction_overall host_is_superhost ... \\\n", "0 weekdays 5.022964 93.0 False ... \n", "1 weekdays 0.488389 85.0 False ... \n", "2 weekdays 5.748312 87.0 False ... \n", "3 weekdays 0.384862 90.0 False ... \n", "4 weekdays 0.544738 98.0 True ... \n", "5 weekdays 2.131420 100.0 False ... \n", "6 weekdays 1.881092 94.0 False ... \n", "7 weekdays 1.686807 100.0 True ... \n", "8 weekdays 3.719141 96.0 False ... \n", "9 weekdays 3.142361 88.0 False ... \n", "\n", " person_capacity realsum rest_index rest_index_norm room_private \\\n", "0 2.0 194.033698 98.253896 6.846473 True \n", "1 4.0 344.245776 837.280757 58.342928 True \n", "2 2.0 264.101422 95.386955 6.646700 True \n", "3 4.0 433.529398 875.033098 60.973565 True \n", "4 2.0 485.552926 815.305740 56.811677 True \n", "5 3.0 552.808567 225.201662 15.692376 True \n", "6 2.0 215.124317 242.765524 16.916251 True \n", "7 4.0 2771.307384 272.313823 18.975219 False \n", "8 4.0 1001.804420 133.876202 9.328686 False \n", "9 2.0 276.521454 238.291258 16.604478 True \n", "\n", " room_shared room_type distance_from_center_km booking_window_days \\\n", "0 False Private room 1.41 23 \n", "1 False Private room 9.03 2 \n", "2 False Private room 3.95 14 \n", "3 False Private room 2.74 1 \n", "4 False Private room 0.51 29 \n", "5 False Private room 0.51 8 \n", "6 False Private room 0.18 2 \n", "7 False Entire home/apt 6.03 12 \n", "8 False Entire home/apt 2.76 25 \n", "9 False Private room 3.69 25 \n", "\n", " has_amenities_bundle \n", "0 1 \n", "1 0 \n", "2 0 \n", "3 0 \n", "4 0 \n", "5 1 \n", "6 0 \n", "7 1 \n", "8 0 \n", "9 0 \n", "\n", "[10 rows x 22 columns]" ], "text/html": [ "\n", "
\n", "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
attr_indexattr_index_normbedroomsbizcitycleanliness_ratingdaydistguest_satisfaction_overallhost_is_superhost...person_capacityrealsumrest_indexrest_index_normroom_privateroom_sharedroom_typedistance_from_center_kmbooking_window_dayshas_amenities_bundle
078.6903794.16670810amsterdam10.0weekdays5.02296493.0False...2.0194.03369898.2538966.846473TrueFalsePrivate room1.41231
1631.17637833.42120910amsterdam8.0weekdays0.48838985.0False...4.0344.245776837.28075758.342928TrueFalsePrivate room9.0320
275.2758773.98590811amsterdam9.0weekdays5.74831287.0False...2.0264.10142295.3869556.646700TrueFalsePrivate room3.95140
3493.27253426.11910821amsterdam9.0weekdays0.38486290.0False...4.0433.529398875.03309860.973565TrueFalsePrivate room2.7410
4552.83032429.27273310amsterdam10.0weekdays0.54473898.0True...2.0485.552926815.30574056.811677TrueFalsePrivate room0.51290
5174.7889579.25519120amsterdam8.0weekdays2.131420100.0False...3.0552.808567225.20166215.692376TrueFalsePrivate room0.5181
6200.16765210.59901010amsterdam10.0weekdays1.88109294.0False...2.0215.124317242.76552416.916251TrueFalsePrivate room0.1820
7208.80810911.05652830amsterdam10.0weekdays1.686807100.0True...4.02771.307384272.31382318.975219FalseFalseEntire home/apt6.03121
8106.2264565.62476120amsterdam9.0weekdays3.71914196.0False...4.01001.804420133.8762029.328686FalseFalseEntire home/apt2.76250
9206.25286210.92122610amsterdam10.0weekdays3.14236188.0False...2.0276.521454238.29125816.604478TrueFalsePrivate room3.69250
\n", "

10 rows × 22 columns

\n", "
\n", "
\n", "\n", "
\n", " \n", "\n", " \n", "\n", " \n", "
\n", "\n", "\n", "
\n", "
\n" ], "application/vnd.google.colaboratory.intrinsic+json": { "type": "dataframe", "variable_name": "combined" } }, "metadata": {}, "execution_count": 16 } ] }, { "cell_type": "code", "source": [ "from google.colab import files\n", "\n", "files.download(\"FINAL_merged_clean_synthetic.csv\")" ], "metadata": { "id": "Udo7S_aIzqME", "outputId": "56ff4509-5af4-4438-9563-5f484ed0de9f", "colab": { "base_uri": "https://localhost:8080/", "height": 17 } }, "execution_count": null, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "" ], "application/javascript": [ "\n", " async function download(id, filename, size) {\n", " if (!google.colab.kernel.accessAllowed) {\n", " return;\n", " }\n", " const div = document.createElement('div');\n", " const label = document.createElement('label');\n", " label.textContent = `Downloading \"${filename}\": `;\n", " div.appendChild(label);\n", " const progress = document.createElement('progress');\n", " progress.max = size;\n", " div.appendChild(progress);\n", " document.body.appendChild(div);\n", "\n", " const buffers = [];\n", " let downloaded = 0;\n", "\n", " const channel = await google.colab.kernel.comms.open(id);\n", " // Send a message to notify the kernel that we're ready.\n", " channel.send({})\n", "\n", " for await (const message of channel.messages) {\n", " // Send a message to notify the kernel that we're ready.\n", " channel.send({})\n", " if (message.buffers) {\n", " for (const buffer of message.buffers) {\n", " buffers.push(buffer);\n", " downloaded += buffer.byteLength;\n", " progress.value = downloaded;\n", " }\n", " }\n", " }\n", " const blob = new Blob(buffers, {type: 'application/binary'});\n", " const a = document.createElement('a');\n", " a.href = window.URL.createObjectURL(blob);\n", " a.download = filename;\n", " div.appendChild(a);\n", " a.click();\n", " div.remove();\n", " }\n", " " ] }, "metadata": {} }, { "output_type": "display_data", "data": { "text/plain": [ "" ], "application/javascript": [ "download(\"download_34a5587b-b7ec-4ec1-adab-7929ed33ce9c\", \"FINAL_merged_clean_synthetic.csv\", 10624703)" ] }, "metadata": {} } ] } ] }