single
Challenge: Calculate Room Statistics
Sveip for å vise menyen
When you work with architectural data, you often need to extract meaningful statistics from schedules and tables. Imagine you are given a schedule of rooms in a building, each with its name, area, and occupancy. Your goal is to write a function that processes this data and provides useful insights for design or analysis. You will use a hardcoded pandas DataFrame to represent the room schedule and create a function that returns the total building area, the average room area, and a list of rooms where the occupancy is greater than 4. The function should return these results as a dictionary with the keys total_area, average_area, and high_occupancy_rooms.
To approach this challenge, start by importing the pandas library and constructing a DataFrame with the specified columns. Then, define a function that calculates the required statistics using pandas methods.
1234567891011121314151617181920212223import pandas as pd # Hardcoded room schedule DataFrame data = { 'Room': ['Lobby', 'Conference', 'Office1', 'Office2', 'Storage', 'Lounge'], 'Area': [120.5, 85.0, 42.0, 39.5, 30.0, 55.5], 'Occupancy': [10, 8, 2, 2, 1, 5] } df = pd.DataFrame(data) def calculate_room_statistics(room_df): total_area = room_df['Area'].sum() average_area = room_df['Area'].mean() high_occupancy_rooms = room_df.loc[room_df['Occupancy'] > 4, 'Room'].tolist() return { 'total_area': total_area, 'average_area': average_area, 'high_occupancy_rooms': high_occupancy_rooms } # Example usage result = calculate_room_statistics(df) print(result)
In this code, the DataFrame df contains the room schedule. The function calculate_room_statistics computes the total area using the sum() method, the average area using the mean() method, and filters rooms with occupancy greater than 4 using .loc[] and .tolist(). The result is a dictionary with the required statistics:
- 'total_area': the sum of all values in the
Areacolumn; - 'average_area': the mean of all values in the
Areacolumn; - 'high_occupancy_rooms': a list of room names from the
Roomcolumn where the correspondingOccupancyvalue is greater than 4.
This approach makes it easy to extract key insights from architectural data using pandas.
Sveip for å begynne å kode
Write a function called calculate_room_statistics that takes a pandas DataFrame with columns Room, Area, and Occupancy, and returns a dictionary with:
- The total area of all rooms, using the key
total_area. - The average area of all rooms, using the key
average_area. - A list of room names with occupancy greater than 4, using the key
high_occupancy_rooms.
Test your function on this DataFrame:
import pandas as pd
df = pd.DataFrame({
'Room': ['Studio', 'Office', 'Meeting', 'Break'],
'Area': [40.0, 30.0, 50.0, 20.0],
'Occupancy': [3, 2, 7, 5]
})
Your function should return:
{
'total_area': 140.0,
'average_area': 35.0,
'high_occupancy_rooms': ['Meeting', 'Break']
}
"
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår