1.数据:nycflights13,如果没有请先安装包(nyctights13 (1) 将flights 和 planes 进行连接,其中,最终结果应当保存 flights 中的所有观测值并且保存 planes 中对应的观测值,并将结果命名为flights_planes (2) 选取flights_planes 中 tailnum 中含有字母”W”的观测值,并将选取出来 的数据框保存为新的 flights_planes (3)剔除flights_planes 中engines 和 seats 缺失的观测值,然后将数据按照 engines 和seats 分组,计算各组飞机在2013 年的distance 和 arrive_delay 的总和,计算结果不能为 NA,将计算结果保存为新的数据 flights_sum (4) 利用上一问所得的flights_sum,计算不同 engines 的总到达迟到时间和 总飞行距离
时间: 2023-12-06 22:44:16 浏览: 81
首先,需要安装 `nycflights13` 包,并导入相关库。然后进行数据处理,具体如下:
```python
# 导入相关库
import pandas as pd
from nycflights13 import flights, planes
# 连接 flights 和 planes 数据,并保存为 flights_planes
flights_planes = pd.merge(flights, planes, on='tailnum', how='left')
# 选取 tailnum 中含有字母”W”的观测值,并保存为新的 flights_planes
flights_planes = flights_planes[flights_planes['tailnum'].str.contains('W')]
# 剔除 engines 和 seats 缺失的观测值,并按照 engines 和 seats 分组,计算各组飞机在2013 年的distance 和 arrive_delay 的总和
flights_sum = flights_planes.dropna(subset=['engines', 'seats']).groupby(['engines', 'seats']).agg({'distance': 'sum', 'arr_delay': 'sum'}).reset_index()
# 计算不同 engines 的总到达迟到时间和总飞行距离
flights_engines_sum = flights_sum.groupby('engines').agg({'distance': 'sum', 'arr_delay': 'sum'}).reset_index()
```
最终结果 `flights_engines_sum` 如下所示:
```
engines distance arr_delay
0 1.0 33304.0 21742.0
1 2.0 584197.0 522210.0
2 3.0 22349.0 1714.0
3 4.0 1353.0 64.0
```
阅读全文