Spaces:
Runtime error
Runtime error
| import pandas as pd | |
| import plotly.express as px | |
| import streamlit as st | |
| # Display title and text | |
| st.title("Week 1 - Data and visualization") | |
| st.markdown("Here we can see the dataframe created during this weeks project.") | |
| # Read dataframe | |
| dataframe = pd.read_csv( | |
| "WK1_Airbnb_Amsterdam_listings_proj_solution.csv", | |
| names=[ | |
| "Airbnb Listing ID", | |
| "Price", | |
| "Latitude", | |
| "Longitude", | |
| "Meters from chosen location", | |
| "Location", | |
| ], | |
| ) | |
| # We have a limited budget, therefore we would like to exclude | |
| # listings with a price above 100 pounds per night | |
| dataframe = dataframe[dataframe["Price"] <= 100] | |
| # Display as integer | |
| dataframe["Airbnb Listing ID"] = dataframe["Airbnb Listing ID"].astype(int) | |
| # Round of values | |
| dataframe["Price"] = "£ " + dataframe["Price"].round(2).astype(str) | |
| # Rename the number to a string | |
| dataframe["Location"] = dataframe["Location"].replace( | |
| {1.0: "To visit", 0.0: "Airbnb listing"} | |
| ) | |
| # Display dataframe and text | |
| st.dataframe(dataframe) | |
| st.markdown("Below is a map showing all the Airbnb listings with a red dot and the location we've chosen with a blue dot.") | |
| # Create the plotly express figure | |
| fig = px.scatter_mapbox( | |
| dataframe, | |
| lat="Latitude", | |
| lon="Longitude", | |
| color="Location", | |
| zoom=11, | |
| height=500, | |
| width=800, | |
| hover_name="Price", | |
| hover_data=["Meters from chosen location", "Location"], | |
| labels={"color": "Locations"}, | |
| ) | |
| fig.update_geos(center=dict(lat=dataframe.iloc[0][2], lon=dataframe.iloc[0][3])) | |
| fig.update_layout(mapbox_style="stamen-terrain") | |
| # Show the figure | |
| st.plotly_chart(fig, use_container_width=True) |