(1) 将 flights 和 airlines 进行连接,其中,最终结果应当保存flights 中的所有 观测值并且保存 airlines 中对应的观测值,并将结果命名为 flights_airlines (2) 选取 flights_airlines 中 name 中以”Inc.”结尾的观测值,并将选取出来的数 据框保存为新的flights_airlines (3) 对 flights_airlines 中 name 中元音字母的比重进行计算生成变量 prop_vowels, 并根据 prop_vowels 计算生成变量 vowel_gr,vowel_gr取 值为 1 如果 prop_vowels 大于等于 45%的,vowel_gr 取值为 2 如果 prop_vowels 低于 45%,然后统计 vowel_gr 每一组对应的观测值的数量。(提 示:元音指 aeiouAEIOU) (4) 在第 3 小问的基础上计算 vowel_gr 每一组里到达目的地机场的次数,并将每一 组前7的机场都显示出来。
时间: 2024-03-14 07:47:34 浏览: 87
好的,我知道了。这是一个数据分析的问题,需要使用Python的pandas库来完成。下面是代码实现:
```python
import pandas as pd
import numpy as np
# 读取数据
flights = pd.read_csv('flights.csv')
airlines = pd.read_csv('airlines.csv')
# 将 flights 和 airlines 进行连接
flights_airlines = pd.merge(flights, airlines, on='carrier', how='left')
# 选取 name 中以”Inc.”结尾的观测值
flights_airlines = flights_airlines[flights_airlines['name'].str.endswith('Inc.')]
# 对 name 中元音字母的比重进行计算生成变量 prop_vowels
vowels = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']
flights_airlines['prop_vowels'] = flights_airlines['name'].apply(lambda x: sum([1 for i in x if i in vowels])/len(x))
# 根据 prop_vowels 计算生成变量 vowel_gr
flights_airlines.loc[flights_airlines['prop_vowels'] >= 0.45, 'vowel_gr'] = 1
flights_airlines.loc[flights_airlines['prop_vowels'] < 0.45, 'vowel_gr'] = 2
# 统计 vowel_gr 每一组对应的观测值的数量
vowel_gr_count = flights_airlines.groupby('vowel_gr').size()
# 计算 vowel_gr 每一组里到达目的地机场的次数
vowel_gr_dest_count = flights_airlines.groupby(['vowel_gr', 'dest']).size().reset_index(name='count')
# 将每一组前7的机场都显示出来
vowel_gr_dest_count = vowel_gr_dest_count.sort_values(by=['vowel_gr', 'count'], ascending=[True, False])
vowel_gr_dest_count_top7 = vowel_gr_dest_count.groupby('vowel_gr').head(7)
```
其中,假设数据文件 flights.csv 和 airlines.csv 已经存在,并且在当前工作目录下。在上述代码中,我们首先使用 pandas 库的 read_csv() 函数读取了两个数据文件,然后使用 merge() 函数将两个数据集按照 carrier 列进行连接。接着,我们使用 str.endswith() 函数选取了 name 中以”Inc.”结尾的观测值,并使用 apply() 函数计算了 prop_vowels 变量。然后,我们使用 loc[] 函数根据 prop_vowels 计算了 vowel_gr 变量,并使用 groupby() 函数计算了 vowel_gr 每一组对应的观测值的数量。最后,我们又使用了 groupby() 函数计算了 vowel_gr 每一组里到达目的地机场的次数,并使用 sort_values() 函数和 head() 函数将每一组前7的机场都显示出来。
阅读全文