机队可靠性数据分析

目录:

  1. 数据介绍
  2. 数据挖掘
  3. 数据建模

编辑日志:

2021年8月27日:

  1. 文本分析部分加入动词关键词提取以及可视化展示,比如显示各机型问题描述包含关键词【破损】等的频数分析。
  2. 数据可视化部分加入 CMS、CAS 频数分析
  3. 模型训练迭代部分调整了超参数和模型输入维度。

2021年8月31日:

  1. 排故措施关键词频率分析
  2. 问题描述、排故措施文本相似度分析
  3. 引入自定义词典
  4. 英文故障描述文本分析

1. 数据介绍

1.1 数据来源

  1. relia_2.ser_col_main(数据采集主表)

主要字段:采集ID(col_id)、采集年月(col_date)、是否有效(enable)、航空公司ID(airline_id)、机型系列ID(model_series_id)

  1. relia_2.sys_airline(维护航空公司的基础数据)

主要字段:航空公司ID(airline_id)、航空公司全称(中文)(airline_cn_name)、航空公司代码(airline_code)

  1. relia_2.sys_model_series(机型系列字典表)

主要字段:机型系列ID(model_series_id)、机型(model)、系列(series)

  1. relia_2.ser_col_fault(数据采集-故障报告表)

主要字段:获取全部字段;有效字段: '机号'、 '日期'、 '是否为SDR'、 '运行种类'、 'ETOPS中大事件标识'、 'IFI'、 '故障类型'、 '故障ATA'、 '维修ATA'、 '问题描述'、 '排故措施'

1.2 故障报告SQL语句

select 
    ser_col_main.col_date,
    sys_airline.airline_code,
    sys_airline.airline_cn_name,
    sys_model_series.model,
    sys_model_series.series,
    ser_col_fault.*
from 
    ser_col_main,
    sys_airline,
    sys_model_series,
    ser_col_fault
where 
    (ser_col_main.enable='Enable')
and
    (ser_col_main.col_id = ser_col_main.col_id(+))
and 
    (ser_col_main.airline_id = sys_airline.airline_id(+))
and
    (ser_col_main.model_series_id = sys_model_series.model_series_id(+))

1.3 数据基本信息

In [1]:
# 导入包
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
import re
import jieba
import jieba.analyse as anls #关键词提取
import jieba.posseg as pseg
from gensim import corpora, models
from collections import Counter
import os
import time
from tqdm import tqdm_notebook
import tqdm
import re
import time
import copy
import random
import jieba
from collections import Counter
from sklearn.feature_extraction.text import TfidfVectorizer
import torch
import torch.nn as nn
import torch.nn.functional as F
from torch.utils.data import Dataset, DataLoader
from torch.optim import lr_scheduler

import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['KaiTi', 'SimHei', 'FangSong']  # 汉字字体,优先使用楷体,如果找不到楷体,则使用黑体
mpl.rcParams['font.size'] = 12  # 字体大小
mpl.rcParams['axes.unicode_minus'] = False  # 正常显示负号
C:\Users\gzjgz\anaconda3\lib\site-packages\gensim\similarities\__init__.py:15: UserWarning: The gensim.similarities.levenshtein submodule is disabled, because the optional Levenshtein package <https://pypi.org/project/python-Levenshtein/> is unavailable. Install Levenhstein (e.g. `pip install python-Levenshtein`) to suppress this warning.
  warnings.warn(msg)
In [2]:
# 导入数据
df = pd.read_csv("故障报告.csv",encoding = 'gbk')
In [3]:
# 查看首尾的3行数据
df.head(3).append(df.tail(3))
Out[3]:
采集年月 航空公司代码 航司名称 机型 系列 故障报告ID 采集ID EXCEL行号 机号 航班号 ... 飞行阶段 故障ATA 维修ATA 问题描述 排故措施 排故措施编码 涉及部件件号 涉及部件序号 该故障是否已经进行过多发计算 该故障是否已经进行过重复计算
0 2018/7/31 UEA 成都航空 ARJ21 700 193617 8596 26 B-3388 NaN ... NaN 383302.0 383302.0 航后检查污水箱真空泵持续工作 参考MPP38-33-32,更换逻辑控制模块,测试正常。 NaN 7701032 15 NaN NaN
1 2018/7/31 UEA 成都航空 ARJ21 700 193618 8596 27 B-3388 NaN ... NaN 243200.0 243200.0 机组写本“巡航阶段,操纵台出现啸叫声,逐渐减小持续约5秒” 参考MPP21-30-00-710-805做座舱压力控制实验,当增压到2PSI时主电瓶开始有... NaN 025578-000 090520011FEB0 NaN NaN
2 2018/7/31 UEA 成都航空 ARJ21 700 193619 8596 28 B-3388 NaN ... NaN 534070.0 534070.0 航后检查左主起轮舱密封件有一处破损 航后参考MPP53-76-01更换左主起轮舱密封件,检查正常 NaN 534A7610-000-081A NaN NaN NaN
8870 2021/5/31 UEA 成都航空 ARJ21 700 276339 9874 66 B-620D NaN ... NaN 291100.0 291100.0 2#液压系统储压气压力无法保持。 参考MPP ARJ21-A-29-11-22更换2#系统充气阀,测试正常。 NaN NaN NaN NaN NaN
8871 2021/5/31 UEA 成都航空 ARJ21 700 276340 9874 67 B-620D NaN ... NaN 237100.0 237100.0 空中闪现“CVR/RIPS FAULT”。 参考MPP ARJ21-A-23-71-11更换CVR,测试正常。 NaN NaN NaN NaN NaN
8872 2021/5/31 UEA 成都航空 ARJ21 700 276341 9874 68 B-620E NaN ... NaN 384100.0 384100.0 乘务写本:“WATER FAULT”指示灯常亮。 参考MPP ARJ21-A-38-41-00为水系统增压,故障灯消失,检查正常。 NaN NaN NaN NaN NaN

6 rows × 30 columns

In [4]:
# 查看数据的列
print(df.columns)

print(len(df.columns))
Index(['采集年月', '航空公司代码', '航司名称', '机型', '系列', '故障报告ID', '采集ID', 'EXCEL行号', '机号',
       '航班号', '日期', '故障报告编码', '是否为SDR', 'SDR编号', '运行种类', 'ETOPS',
       'ETOPS中大事件标识', '故障类型', '离港航站', '发生地', '飞行阶段', '故障ATA', '维修ATA', '问题描述',
       '排故措施', '排故措施编码', '涉及部件件号', '涉及部件序号', '该故障是否已经进行过多发计算',
       '该故障是否已经进行过重复计算'],
      dtype='object')
30

可以看出,数据一共有30列

In [5]:
# 查看数据维度
df.shape
Out[5]:
(8873, 30)
In [6]:
df.drop_duplicates().shape
Out[6]:
(8873, 30)

说明数据没有重复值,有效行数为8873行

In [7]:
# 去除缺失值超过总数一半的列
col_to_use = []
for col in df.columns:
    print("【{}】'的缺失值共有{}个".format(col,df[col].isna().sum()))
    if df[col].isna().sum()< df.shape[0]*0.5:
        col_to_use.append(col)
【采集年月】'的缺失值共有0个
【航空公司代码】'的缺失值共有0个
【航司名称】'的缺失值共有0个
【机型】'的缺失值共有0个
【系列】'的缺失值共有0个
【故障报告ID】'的缺失值共有0个
【采集ID】'的缺失值共有0个
【EXCEL行号】'的缺失值共有0个
【机号】'的缺失值共有0个
【航班号】'的缺失值共有8744个
【日期】'的缺失值共有0个
【故障报告编码】'的缺失值共有8739个
【是否为SDR】'的缺失值共有586个
【SDR编号】'的缺失值共有8856个
【运行种类】'的缺失值共有0个
【ETOPS】'的缺失值共有11个
【ETOPS中大事件标识】'的缺失值共有11个
【故障类型】'的缺失值共有0个
【离港航站】'的缺失值共有8750个
【发生地】'的缺失值共有8748个
【飞行阶段】'的缺失值共有8750个
【故障ATA】'的缺失值共有1个
【维修ATA】'的缺失值共有2个
【问题描述】'的缺失值共有0个
【排故措施】'的缺失值共有7个
【排故措施编码】'的缺失值共有8727个
【涉及部件件号】'的缺失值共有5885个
【涉及部件序号】'的缺失值共有7653个
【该故障是否已经进行过多发计算】'的缺失值共有7396个
【该故障是否已经进行过重复计算】'的缺失值共有8507个
In [8]:
col_to_use
Out[8]:
['采集年月',
 '航空公司代码',
 '航司名称',
 '机型',
 '系列',
 '故障报告ID',
 '采集ID',
 'EXCEL行号',
 '机号',
 '日期',
 '是否为SDR',
 '运行种类',
 'ETOPS',
 'ETOPS中大事件标识',
 '故障类型',
 '故障ATA',
 '维修ATA',
 '问题描述',
 '排故措施']
In [9]:
data = df[col_to_use]
In [10]:
data = data.dropna()
In [11]:
data.shape
Out[11]:
(8267, 19)

可以看到更新后的数据有19列,非空行有8267行。 数据类型有 objectint64float64

In [12]:
data.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 8267 entries, 0 to 8872
Data columns (total 19 columns):
 #   Column       Non-Null Count  Dtype  
---  ------       --------------  -----  
 0   采集年月         8267 non-null   object 
 1   航空公司代码       8267 non-null   object 
 2   航司名称         8267 non-null   object 
 3   机型           8267 non-null   object 
 4   系列           8267 non-null   int64  
 5   故障报告ID       8267 non-null   int64  
 6   采集ID         8267 non-null   int64  
 7   EXCEL行号      8267 non-null   int64  
 8   机号           8267 non-null   object 
 9   日期           8267 non-null   object 
 10  是否为SDR       8267 non-null   object 
 11  运行种类         8267 non-null   object 
 12  ETOPS        8267 non-null   object 
 13  ETOPS中大事件标识  8267 non-null   object 
 14  故障类型         8267 non-null   object 
 15  故障ATA        8267 non-null   float64
 16  维修ATA        8267 non-null   float64
 17  问题描述         8267 non-null   object 
 18  排故措施         8267 non-null   object 
dtypes: float64(2), int64(4), object(13)
memory usage: 1.3+ MB

现在我们对时间变量的数据类型做调整。

In [13]:
data['采集年月'] = data['采集年月'].astype('datetime64[ns]')
data['日期'] = data['日期'].astype('datetime64[ns]')
In [14]:
data.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 8267 entries, 0 to 8872
Data columns (total 19 columns):
 #   Column       Non-Null Count  Dtype         
---  ------       --------------  -----         
 0   采集年月         8267 non-null   datetime64[ns]
 1   航空公司代码       8267 non-null   object        
 2   航司名称         8267 non-null   object        
 3   机型           8267 non-null   object        
 4   系列           8267 non-null   int64         
 5   故障报告ID       8267 non-null   int64         
 6   采集ID         8267 non-null   int64         
 7   EXCEL行号      8267 non-null   int64         
 8   机号           8267 non-null   object        
 9   日期           8267 non-null   datetime64[ns]
 10  是否为SDR       8267 non-null   object        
 11  运行种类         8267 non-null   object        
 12  ETOPS        8267 non-null   object        
 13  ETOPS中大事件标识  8267 non-null   object        
 14  故障类型         8267 non-null   object        
 15  故障ATA        8267 non-null   float64       
 16  维修ATA        8267 non-null   float64       
 17  问题描述         8267 non-null   object        
 18  排故措施         8267 non-null   object        
dtypes: datetime64[ns](2), float64(2), int64(4), object(11)
memory usage: 1.3+ MB

2. 数据挖掘

2.1 元数据转换

便于数据管理,我们把变量储存在元结构中,方便我们对特定的变量进行学习、分析、可视化以及建模。

In [15]:
sns.countplot(data['故障类型'])
Out[15]:
<matplotlib.axes._subplots.AxesSubplot at 0x257b8e98b88>

可以看出,CL这一故障类型非常少,所以我们去掉它,这样故障类型就为 ML 和 PL。

In [16]:
data = data[data['故障类型']!='CL']
In [17]:
data = data.reset_index()
In [18]:
metadata = []

for i in data.columns:
    # 定义数据角色
    if i == '故障类型':
        role = 'target'
    elif i == 'index':
        role = 'id'
    else:
        role = 'input'
        
    # 定义数据层级
    if data[i].unique().size == 2:
        level = 'binary'
    elif data[i].dtype == 'O':
        level = 'nominal'
    elif data[i].dtype == 'float64':
        level = 'interval'
    elif data[i].dtype == 'int64':
        level = 'ordinal'

    keep = True
    if i == 'index':
        keep = False
    
    dtype = data[i].dtype
    
    dic = {
        '变量名': i,
        '数据角色': role,
        '数据层级': level,
        '是否保留': keep,
        '数据类型': dtype
    }
    metadata.append(dic)
    
meta = pd.DataFrame(metadata, columns = ['变量名','数据角色','数据层级','是否保留','数据类型'])
meta.set_index('变量名',inplace=True)
In [19]:
meta
Out[19]:
数据角色 数据层级 是否保留 数据类型
变量名
index id ordinal False int64
采集年月 input ordinal True datetime64[ns]
航空公司代码 input nominal True object
航司名称 input nominal True object
机型 input nominal True object
系列 input ordinal True int64
故障报告ID input ordinal True int64
采集ID input ordinal True int64
EXCEL行号 input ordinal True int64
机号 input nominal True object
日期 input nominal True datetime64[ns]
是否为SDR input binary True object
运行种类 input nominal True object
ETOPS input binary True object
ETOPS中大事件标识 input nominal True object
故障类型 target binary True object
故障ATA input interval True float64
维修ATA input interval True float64
问题描述 input nominal True object
排故措施 input nominal True object
In [20]:
# 筛选定类数据(nominal)
meta[(meta['数据层级'] == 'nominal') & (meta['是否保留'])].index
Out[20]:
Index(['航空公司代码', '航司名称', '机型', '机号', '日期', '运行种类', 'ETOPS中大事件标识', '问题描述',
       '排故措施'],
      dtype='object', name='变量名')
In [21]:
pd.DataFrame({'频数' : meta.groupby(['数据角色', '数据层级'])['数据角色'].size()}).reset_index()
Out[21]:
数据角色 数据层级 频数
0 id ordinal 1
1 input binary 2
2 input interval 2
3 input nominal 9
4 input ordinal 5
5 target binary 1

可以发现我们的binary特征有2个,连续型特征有2个,定类特征有9个,定序特征有4个。

2.2 数据质量检测

  1. 检查缺失值
In [22]:
vars_with_missing = []

for f in data.columns:
    missings = data[data[f] == -1][f].count()
    if missings > 0 :
        vars_with_missing.append(f)
        missings_perc = missings/data.shape[0]
        
        print('变量 {}{} 条缺失值 ({:.2%})'.format(f, missings, missings_perc))

print('总计,有{}个变量有缺失值。'.format(len(vars_with_missing)))
总计,有0个变量有缺失值。
In [23]:
v = meta[(meta['数据层级'] == 'nominal') & (meta['是否保留'])].index

for f in v:
    dist_values = data[f].value_counts().shape[0]
    print('变量 【{}】 有 【{}】 个唯一值'.format(f, dist_values))
变量 【航空公司代码】 有 【7】 个唯一值
变量 【航司名称】 有 【7】 个唯一值
变量 【机型】 有 【1】 个唯一值
变量 【机号】 有 【51】 个唯一值
变量 【日期】 有 【1463】 个唯一值
变量 【运行种类】 有 【3】 个唯一值
变量 【ETOPS中大事件标识】 有 【1】 个唯一值
变量 【问题描述】 有 【7793】 个唯一值
变量 【排故措施】 有 【7780】 个唯一值

可以看出,机型和ETOPS中大事件标识这两列,只有一个唯一值,那么可以去掉这两列。

问题描述 和 排故措施 由于是文本数据,暂时不考虑。

In [24]:
data = data.drop(['机型','ETOPS中大事件标识'],axis=1)
In [25]:
meta = meta.drop(['机型','ETOPS中大事件标识'])
In [26]:
data_copy = data.copy(deep=True)
In [27]:
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 8259 entries, 0 to 8258
Data columns (total 18 columns):
 #   Column   Non-Null Count  Dtype         
---  ------   --------------  -----         
 0   index    8259 non-null   int64         
 1   采集年月     8259 non-null   datetime64[ns]
 2   航空公司代码   8259 non-null   object        
 3   航司名称     8259 non-null   object        
 4   系列       8259 non-null   int64         
 5   故障报告ID   8259 non-null   int64         
 6   采集ID     8259 non-null   int64         
 7   EXCEL行号  8259 non-null   int64         
 8   机号       8259 non-null   object        
 9   日期       8259 non-null   datetime64[ns]
 10  是否为SDR   8259 non-null   object        
 11  运行种类     8259 non-null   object        
 12  ETOPS    8259 non-null   object        
 13  故障类型     8259 non-null   object        
 14  故障ATA    8259 non-null   float64       
 15  维修ATA    8259 non-null   float64       
 16  问题描述     8259 non-null   object        
 17  排故措施     8259 non-null   object        
dtypes: datetime64[ns](2), float64(2), int64(5), object(9)
memory usage: 1.1+ MB

2.3 文本分析

使用 jieba 对文本(这里指的是“问题描述”)数据进行分词和关键词提取,这里我们提取的信息针对于问题所发生(相关)的地理位置(省市),从而根据各特征分析该地区在此特征维度下的出现频率。

In [28]:
def get_key(data, flag_,top=10,w_ = 0.9, col = '问题描述'):
    key = []
    #jieba.load_userdict("dict.txt")
    for problem in data[col]:
        for x, w in anls.textrank(problem, withWeight=True):
            #print('%s %s' % (x, w))
            if w > w_:
                words = pseg.lcut(x)
                for word,flag in words:
                    if flag == flag_:
                        key.append(word)
    
    return pd.Series(key).value_counts()[:100].index
In [29]:
get_key(data = data_copy, flag_ = 'v')
Building prefix dict from the default dictionary ...
Loading model from cache C:\Users\gzjgz\AppData\Local\Temp\jieba.cache
Loading model cost 0.796 seconds.
Prefix dict has been built successfully.
Out[29]:
Index(['发现', '出现', '反映', '起飞', '破损', '警示', '显示', '滑行', '巡航', '伴随', '派遣', '滑跑',
       '闪现', '进近', '开关', '手持', '丢失', '防冰', '引气', '查看', '着陆', '加油', '缺失', '损坏',
       '使用', '有', '损伤', '啸叫', '控不', '转弯', '下降', '超标', '断开', '飞行', '反馈', '驾驶',
       '副驾驶', '抖动', '执行', '爬升', '指示', '告警', '站', '出', '放电', '备用', '控制', '有啸',
       '关闭', '接地', '不能', '起动', '滑', '渗漏', '叫声', '加温', '准备', '打开', '位置', '主起',
       '跑道', '完成', '跳出', '接通', '停留', '排水', '停', '脱落', '发', '靠背', '扶手', '加水',
       '探头', '脱开', '断裂', '触发', '阅读', '后续', '简图', '接近', '跳变', '切变', '没有', '到位',
       '选择', '复位', '接头', '推出', '排放', '放行', '失速', '发话', '复飞', '加热', '处有', '临近',
       '导航', '推力', '不可', '保留'],
      dtype='object')

以上结果表明,我们在问题描述中出现频率最高的前100个动词中,筛选出下面10个有效关键词,比如:

  1. 发现
  2. 显示
  3. 完成
  4. 丢失

等等。

一般的问题叙述规律是,发现有XXX问题;有XXX问题,显示XXX故障,XXX缺失,XXX破损等情况。

In [30]:
def findkeyword(data, key, col = '问题描述'):
    dic_ = {}
    lst_ = []
    for idx,txt in enumerate(data[col]):
        if key in ['丢失','缺失','破损','正常']:
            res = txt[0:(txt.rfind(key)+len(key))]
        else:
            res = txt[txt.rfind(key):]
        if len(res) != 1:
            lst_.append(data[['航司名称','机号','故障ATA']].iloc[idx,:].tolist()+[res])
    dic_[key] = lst_
    return pd.DataFrame(dic_[key], columns = ['航司','机号','ATA编号','包含【{}】的所有故障信息'.format(key)])
In [31]:
for key in ['发现','有','反映','显示','伴随','查看','完成','告警','丢失','缺失','破损']:
    problem_df = findkeyword(data = data_copy, key = key)
    for col in problem_df.columns[:-2]:  
        plt.figure(figsize= [20,8])
        sns.countplot(x = col,data = problem_df,order = problem_df[col].value_counts().index)
        plt.xticks(rotation = 45)
        plt.title('各【{}】包含【{}】故障信息频数图'.format(col,key),fontsize=20)
        plt.ylabel('频数', fontsize=18)
        plt.xlabel(col, fontsize=18)
C:\Users\gzjgz\anaconda3\lib\site-packages\ipykernel_launcher.py:4: RuntimeWarning: More than 20 figures have been opened. Figures created through the pyplot interface (`matplotlib.pyplot.figure`) are retained until explicitly closed and may consume too much memory. (To control this warning, see the rcParam `figure.max_open_warning`).
  after removing the cwd from sys.path.
In [32]:
key_ns = get_key(data = data_copy, flag_='ns')
In [33]:
def key_groupby(key_,col):
    dic = {}
    for key in key_:
        lst = []
        for row in range(len(data)):
            if str(key) in data.loc[row,'问题描述']:
                lst.append(row)
        dic[key] = lst   
    
    for key,item in dic.items():
        print("【{}】==>【问题描述】包含关键词:【{}】 的个数如下:".format(col,key))
        print('########################################################')
        df = data[[str(col),'问题描述']].iloc[item,:].groupby(str(col)).count().sort_values(by = '问题描述',ascending=False).rename(columns={'问题描述':'出现频数'})
        print(df)
        print('########################################################')
In [34]:
key_groupby(key_ = key_ns, col = '机号')
【机号】==>【问题描述】包含关键词:【成都】 的个数如下:
########################################################
        出现频数
机号          
B-3322    35
B-3386    33
B-3321    32
B-3328    27
B-3388    24
B-3387    21
B-602A    21
B-3329    10
B-104X     7
B-604C     7
B-603M     6
B-602C     6
B-603Q     4
B-603Z     4
B-605N     4
B-620D     4
B-604A     3
B-603P     2
B-604F     2
B-620E     1
B-603N     1
B-650S     1
########################################################
【机号】==>【问题描述】包含关键词:【上饶】 的个数如下:
########################################################
        出现频数
机号          
B-3322    28
B-3328    27
B-3386    20
B-3321     9
B-3388     7
B-104X     6
B-602A     6
B-603N     6
B-3329     5
B-603Z     3
B-603P     2
B-604D     2
B-602C     2
B-3387     2
B-603Q     1
B-603M     1
B-604A     1
B-604F     1
########################################################
【机号】==>【问题描述】包含关键词:【哈尔滨】 的个数如下:
########################################################
        出现频数
机号          
B-3387    31
B-3386    20
B-3321    18
B-104X     9
B-602C     9
B-3388     7
B-602A     7
B-604F     6
B-603P     6
B-3322     6
B-3329     5
B-603Q     5
B-604A     5
B-603M     4
B-604D     4
B-605M     4
B-620E     4
B-603N     3
B-620D     3
B-603Z     2
B-604C     2
B-605N     2
B-650T     1
########################################################
【机号】==>【问题描述】包含关键词:【长沙】 的个数如下:
########################################################
        出现频数
机号          
B-3321    18
B-3386    10
B-3387    10
B-602A     9
B-3388     5
B-3322     4
B-603M     3
B-3329     2
B-104X     1
B-603Q     1
########################################################
【机号】==>【问题描述】包含关键词:【威海】 的个数如下:
########################################################
        出现频数
机号          
B-3388     9
B-620D     9
B-3329     8
B-3387     7
B-604D     6
B-3321     5
B-603Q     4
B-3386     4
B-604F     4
B-604C     3
B-603M     3
B-605N     2
B-605M     2
B-104X     2
B-603P     2
B-603N     2
B-604A     1
B-603Z     1
B-602A     1
B-650T     1
########################################################
【机号】==>【问题描述】包含关键词:【济南】 的个数如下:
########################################################
        出现频数
机号          
B-3321     8
B-3386     6
B-3388     6
B-3387     5
B-603Z     5
B-3329     4
B-3322     3
B-602A     2
B-602C     2
B-603M     2
B-603P     2
B-104X     1
B-605M     1
B-605N     1
B-605V     1
B-620D     1
########################################################
【机号】==>【问题描述】包含关键词:【贵阳】 的个数如下:
########################################################
        出现频数
机号          
B-3388     7
B-3328     4
B-603Q     4
B-603M     4
B-3321     3
B-604D     3
B-604C     3
B-603Z     3
B-603P     2
B-602C     2
B-3387     2
B-603N     1
B-602A     1
B-3329     1
B-605M     1
B-605N     1
B-605V     1
B-650T     1
########################################################
【机号】==>【问题描述】包含关键词:【五大连池】 的个数如下:
########################################################
        出现频数
机号          
B-3387    15
B-104X     6
B-3386     6
B-602C     6
B-602A     5
B-3321     5
B-3329     3
B-3388     3
B-603M     3
B-604C     3
B-603Z     2
B-604A     2
B-605M     2
B-604F     1
B-620D     1
B-605N     1
B-603N     1
B-604D     1
B-603Q     1
B-3322     1
B-620E     1
########################################################
【机号】==>【问题描述】包含关键词:【黑河】 的个数如下:
########################################################
        出现频数
机号          
B-3387    14
B-3386     9
B-3388     6
B-3329     5
B-3321     5
B-104X     4
B-603M     3
B-3322     2
B-602A     2
B-602C     2
B-603P     2
B-604F     1
B-620D     1
B-605N     1
B-605M     1
B-603N     1
B-604C     1
B-603Z     1
B-603Q     1
B-620E     1
########################################################
【机号】==>【问题描述】包含关键词:【临汾】 的个数如下:
########################################################
        出现频数
机号          
B-3387    11
B-3321    10
B-602C     5
B-104X     4
B-3322     4
B-3386     4
B-3388     4
B-602A     4
B-3329     2
B-603Q     1
########################################################
【机号】==>【问题描述】包含关键词:【衡阳】 的个数如下:
########################################################
        出现频数
机号          
B-602A     8
B-3388     4
B-3329     3
B-3387     3
B-3328     2
B-603M     2
B-603Z     2
B-104X     1
B-3322     1
B-602C     1
B-603N     1
B-603P     1
B-604D     1
B-604F     1
B-605N     1
B-620D     1
########################################################
【机号】==>【问题描述】包含关键词:【盐城】 的个数如下:
########################################################
        出现频数
机号          
B-3387     9
B-605M     8
B-620D     6
B-650S     5
B-604F     3
B-3388     2
B-620E     1
########################################################
【机号】==>【问题描述】包含关键词:【重庆】 的个数如下:
########################################################
        出现频数
机号          
B-650P    14
B-650Q     6
B-603Q     3
B-605M     2
B-3387     1
B-3388     1
B-602C     1
B-604A     1
B-650V     1
########################################################
【机号】==>【问题描述】包含关键词:【舟山】 的个数如下:
########################################################
        出现频数
机号          
B-3322    11
B-3328    10
B-3321     6
B-603Z     6
B-104X     3
B-3388     3
B-602A     3
B-603N     3
B-3329     2
B-603P     2
B-603Q     2
B-3386     1
B-602C     1
B-604D     1
########################################################
【机号】==>【问题描述】包含关键词:【泉州】 的个数如下:
########################################################
        出现频数
机号          
B-620D     5
B-3321     4
B-3388     4
B-602A     4
B-3329     3
B-3387     3
B-602C     3
B-604F     3
B-605M     3
B-3328     2
B-603M     2
B-603Q     2
B-603Z     2
B-104X     1
B-603N     1
B-603P     1
########################################################
【机号】==>【问题描述】包含关键词:【翼根】 的个数如下:
########################################################
        出现频数
机号          
B-3387     2
B-602C     2
B-602W     2
B-605M     2
B-603Q     2
B-3321     1
B-604A     1
B-650S     1
B-605V     1
B-605T     1
B-605N     1
B-603P     1
B-3329     1
B-602T     1
B-602S     1
B-602A     1
B-3388     1
B-651M     1
########################################################
【机号】==>【问题描述】包含关键词:【满洲里】 的个数如下:
########################################################
        出现频数
机号          
B-3329    12
B-104X     7
B-3386     6
B-602A     6
B-3387     5
B-3388     5
B-602C     4
B-3321     2
B-3322     2
B-603Q     2
B-603M     1
B-604F     1
B-605M     1
B-605N     1
########################################################
【机号】==>【问题描述】包含关键词:【北京】 的个数如下:
########################################################
        出现频数
机号          
B-605U     9
B-650L     7
B-605Y     5
B-3321     1
B-604C     1
B-650W     1
########################################################
【机号】==>【问题描述】包含关键词:【乌兰】 的个数如下:
########################################################
        出现频数
机号          
B-602S     5
B-602T     5
B-602W     4
B-606A     3
B-605U     1
B-605Y     1
########################################################
【机号】==>【问题描述】包含关键词:【梧州】 的个数如下:
########################################################
        出现频数
机号          
B-3321     6
B-602A     2
B-3329     1
########################################################
【机号】==>【问题描述】包含关键词:【密封】 的个数如下:
########################################################
        出现频数
机号          
B-3322    81
B-3387    62
B-3386    51
B-3321    39
B-3388    38
B-603M    36
B-602A    22
B-604C    22
B-603N    20
B-603Q    20
B-603Z    18
B-603P    17
B-602C    16
B-602T    15
B-3328    14
B-604A    13
B-104X    12
B-3329    11
B-620E    10
B-605W     9
B-602S     8
B-604F     8
B-604D     7
B-605U     5
B-606A     5
B-605X     4
B-650K     4
B-650P     4
B-650S     4
B-620D     3
B-650Q     3
B-605Y     2
B-605M     2
B-605T     1
B-605V     1
B-605N     1
B-650L     1
B-650R     1
B-651M     1
########################################################
【机号】==>【问题描述】包含关键词:【呼和】 的个数如下:
########################################################
        出现频数
机号          
B-602T     9
B-602S     8
B-606A     5
B-602W     4
B-650L     2
B-650Q     2
B-3321     1
B-602A     1
B-603Q     1
B-605N     1
########################################################
【机号】==>【问题描述】包含关键词:【南昌】 的个数如下:
########################################################
        出现频数
机号          
B-605T     4
B-605V     4
B-3388     2
B-104X     1
B-3321     1
B-3387     1
B-603N     1
B-603P     1
B-604A     1
B-604C     1
B-604F     1
########################################################
【机号】==>【问题描述】包含关键词:【虹桥】 的个数如下:
########################################################
        出现频数
机号          
B-3321     9
B-3387     9
B-602A     6
B-3388     5
B-3329     3
B-3386     2
B-3322     1
B-602C     1
B-603N     1
B-603P     1
########################################################
【机号】==>【问题描述】包含关键词:【揭阳】 的个数如下:
########################################################
        出现频数
机号          
B-605M     9
B-3387     3
B-603Z     3
B-620D     3
B-604F     2
B-620E     2
B-602C     1
B-603M     1
B-605X     1
B-650S     1
B-650T     1
########################################################
【机号】==>【问题描述】包含关键词:【太原】 的个数如下:
########################################################
        出现频数
机号          
B-3321     3
B-603M     3
B-604A     3
B-604D     3
B-3386     2
B-3387     2
B-602A     2
B-603Q     2
B-604C     2
B-620D     2
B-104X     1
B-602C     1
B-603N     1
B-603P     1
B-605V     1
########################################################
【机号】==>【问题描述】包含关键词:【福州】 的个数如下:
########################################################
        出现频数
机号          
B-3321     3
B-602C     3
B-605M     2
B-650P     2
B-602A     1
B-603Z     1
B-604C     1
########################################################
【机号】==>【问题描述】包含关键词:【南宁】 的个数如下:
########################################################
        出现频数
机号          
B-3328     5
B-3322     4
B-3388     3
########################################################
【机号】==>【问题描述】包含关键词:【温州】 的个数如下:
########################################################
        出现频数
机号          
B-3387     3
B-650S     2
B-3386     1
B-3388     1
B-603Q     1
B-603Z     1
B-604A     1
B-604D     1
B-605M     1
B-605N     1
B-650T     1
########################################################
【机号】==>【问题描述】包含关键词:【浦东】 的个数如下:
########################################################
        出现频数
机号          
B-3387     5
B-3388     2
B-605T     2
B-3322     1
B-3329     1
B-3386     1
B-605W     1
B-620H     1
B-650P     1
########################################################
【机号】==>【问题描述】包含关键词:【衢州】 的个数如下:
########################################################
        出现频数
机号          
B-3388     5
B-3328     4
B-603M     2
B-104X     1
B-3321     1
B-3329     1
B-3387     1
B-602C     1
B-603N     1
B-603P     1
########################################################
【机号】==>【问题描述】包含关键词:【南阳】 的个数如下:
########################################################
        出现频数
机号          
B-650P     7
B-605X     2
B-650Q     2
B-605W     1
########################################################
【机号】==>【问题描述】包含关键词:【北海】 的个数如下:
########################################################
        出现频数
机号          
B-602A     2
B-605V     2
B-3388     1
B-602C     1
B-603M     1
B-603Z     1
B-605N     1
B-605T     1
########################################################
【机号】==>【问题描述】包含关键词:【呼和浩特】 的个数如下:
########################################################
        出现频数
机号          
B-602T     3
B-3321     1
B-602A     1
B-603Q     1
B-605N     1
B-650L     1
########################################################
【机号】==>【问题描述】包含关键词:【西昌】 的个数如下:
########################################################
        出现频数
机号          
B-3386     2
B-104X     1
B-602A     1
B-603P     1
B-603Q     1
B-604C     1
B-605M     1
B-620E     1
B-650S     1
########################################################
【机号】==>【问题描述】包含关键词:【遮阳】 的个数如下:
########################################################
        出现频数
机号          
B-3386    12
B-3321     9
B-3322     8
B-3387     6
B-602A     5
B-3328     4
B-3329     4
B-3388     3
B-604C     2
B-603Q     1
B-605Y     1
B-604A     1
B-602T     1
B-603P     1
B-603M     1
B-602W     1
B-602C     1
B-606A     1
########################################################
【机号】==>【问题描述】包含关键词:【东营】 的个数如下:
########################################################
        出现频数
机号          
B-3388     3
B-604A     2
B-602A     1
B-605M     1
########################################################
【机号】==>【问题描述】包含关键词:【鄂尔多斯】 的个数如下:
########################################################
        出现频数
机号          
B-650V     2
B-602W     1
########################################################
【机号】==>【问题描述】包含关键词:【锡林浩特】 的个数如下:
########################################################
        出现频数
机号          
B-606A     2
B-602T     1
B-602W     1
B-605U     1
########################################################
【机号】==>【问题描述】包含关键词:【厦门】 的个数如下:
########################################################
        出现频数
机号          
B-605T     1
B-605V     1
B-650U     1
########################################################
【机号】==>【问题描述】包含关键词:【乌兰浩特】 的个数如下:
########################################################
        出现频数
机号          
B-602S     3
B-605U     1
B-605Y     1
########################################################
【机号】==>【问题描述】包含关键词:【广州】 的个数如下:
########################################################
        出现频数
机号          
B-605X     4
B-605W     3
B-3321     1
B-650U     1
########################################################
【机号】==>【问题描述】包含关键词:【宁波】 的个数如下:
########################################################
        出现频数
机号          
B-650T     2
B-602C     1
B-604D     1
########################################################
【机号】==>【问题描述】包含关键词:【榆林】 的个数如下:
########################################################
        出现频数
机号          
B-603N     2
B-604A     2
B-104X     1
B-602A     1
B-605N     1
B-620D     1
########################################################
【机号】==>【问题描述】包含关键词:【深度】 的个数如下:
########################################################
        出现频数
机号          
B-3321     2
B-3386     2
B-605V     2
B-650Q     2
B-650U     2
B-123A     1
B-3388     1
B-602C     1
B-605W     1
########################################################
【机号】==>【问题描述】包含关键词:【青岛】 的个数如下:
########################################################
        出现频数
机号          
B-602A     2
B-3387     1
B-3388     1
B-604C     1
########################################################
【机号】==>【问题描述】包含关键词:【赤峰】 的个数如下:
########################################################
        出现频数
机号          
B-602W     1
########################################################
【机号】==>【问题描述】包含关键词:【佳木斯】 的个数如下:
########################################################
        出现频数
机号          
B-3388     4
########################################################
【机号】==>【问题描述】包含关键词:【天津】 的个数如下:
########################################################
        出现频数
机号          
B-605T     1
########################################################
【机号】==>【问题描述】包含关键词:【郑州】 的个数如下:
########################################################
        出现频数
机号          
B-603P     1
########################################################
【机号】==>【问题描述】包含关键词:【塔台】 的个数如下:
########################################################
        出现频数
机号          
B-3322     2
B-3386     2
B-3387     2
B-3388     2
B-620D     2
B-104X     1
B-3321     1
B-602C     1
B-603N     1
B-603Z     1
B-604F     1
B-620E     1
B-650S     1
########################################################
【机号】==>【问题描述】包含关键词:【湛江】 的个数如下:
########################################################
        出现频数
机号          
B-605T     2
B-605N     1
########################################################
【机号】==>【问题描述】包含关键词:【徐州】 的个数如下:
########################################################
        出现频数
机号          
B-605V     1
########################################################
【机号】==>【问题描述】包含关键词:【内六角】 的个数如下:
########################################################
        出现频数
机号          
B-3321     1
B-603P     1
########################################################
【机号】==>【问题描述】包含关键词:【大庆】 的个数如下:
########################################################
        出现频数
机号          
B-3387     1
B-602C     1
B-603Q     1
B-604D     1
B-605N     1
########################################################
【机号】==>【问题描述】包含关键词:【中断】 的个数如下:
########################################################
        出现频数
机号          
B-3321     4
B-3388     2
B-605T     2
B-3386     1
B-602S     1
B-602T     1
B-605V     1
########################################################
【机号】==>【问题描述】包含关键词:【中卫】 的个数如下:
########################################################
        出现频数
机号          
B-603Z     3
B-604C     3
B-3321     2
B-603M     2
B-3386     1
B-3387     1
B-602A     1
B-602C     1
B-603Q     1
B-604F     1
B-605M     1
B-650T     1
########################################################
【机号】==>【问题描述】包含关键词:【云中】 的个数如下:
########################################################
        出现频数
机号          
B-3321     1
########################################################
【机号】==>【问题描述】包含关键词:【扬州】 的个数如下:
########################################################
        出现频数
机号          
B-650Q     1
########################################################
【机号】==>【问题描述】包含关键词:【西安】 的个数如下:
########################################################
        出现频数
机号          
B-602C     2
B-3329     1
B-3387     1
B-604A     1
########################################################
【机号】==>【问题描述】包含关键词:【延时】 的个数如下:
########################################################
        出现频数
机号          
B-3321     2
B-104X     1
B-605V     1
B-650U     1
########################################################
【机号】==>【问题描述】包含关键词:【建三江】 的个数如下:
########################################################
        出现频数
机号          
B-604F     1
B-620E     1
########################################################
【机号】==>【问题描述】包含关键词:【兰州】 的个数如下:
########################################################
        出现频数
机号          
B-603N     2
B-3322     1
B-603M     1
B-603Z     1
B-650S     1
########################################################
【机号】==>【问题描述】包含关键词:【晋江】 的个数如下:
########################################################
        出现频数
机号          
B-3387     1
########################################################
【机号】==>【问题描述】包含关键词:【长度】 的个数如下:
########################################################
        出现频数
机号          
B-3321     2
B-3329     1
B-3386     1
B-3388     1
B-602A     1
B-602C     1
B-602T     1
B-605V     1
B-605W     1
B-606A     1
B-650Q     1
########################################################
【机号】==>【问题描述】包含关键词:【延安】 的个数如下:
########################################################
        出现频数
机号          
B-650P     4
B-104X     1
B-603N     1
B-604C     1
B-604D     1
B-620D     1
B-620E     1
########################################################
【机号】==>【问题描述】包含关键词:【常州】 的个数如下:
########################################################
        出现频数
机号          
B-605T     1
########################################################
【机号】==>【问题描述】包含关键词:【沈阳】 的个数如下:
########################################################
        出现频数
机号          
B-104X     1
B-602A     1
B-603Q     1
########################################################
【机号】==>【问题描述】包含关键词:【入口】 的个数如下:
########################################################
        出现频数
机号          
B-3388     2
B-602A     1
########################################################

可以看出,在最常出现问题的城市前十名中,机号 B-3321 出现频率极高,全部排名前六名之内,也就是说此机号在已出现问题的10大城市中,全部覆盖,并且排在所有机号的前六名。

机号 B-3322 在最易出现问题的城市前两名(成都,上饶)中在所有机号中排名第一,说明在上饶至成都的直达航线上,机号 B-3322 存在过许多问题。

2017-12-14 12月13日13时许,成都航空航EU6675班号的ARJ21飞机,经过2小时30分的飞行,平稳降落在上饶三清山机场。

In [35]:
key_groupby(key_ = key_ns,col = '航司名称')
【航司名称】==>【问题描述】包含关键词:【成都】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空   255
########################################################
【航司名称】==>【问题描述】包含关键词:【上饶】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空   129
########################################################
【航司名称】==>【问题描述】包含关键词:【哈尔滨】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空   163
########################################################
【航司名称】==>【问题描述】包含关键词:【长沙】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    63
########################################################
【航司名称】==>【问题描述】包含关键词:【威海】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    76
########################################################
【航司名称】==>【问题描述】包含关键词:【济南】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    49
江西航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【贵阳】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    43
江西航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【五大连池】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    69
########################################################
【航司名称】==>【问题描述】包含关键词:【黑河】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    63
########################################################
【航司名称】==>【问题描述】包含关键词:【临汾】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    49
########################################################
【航司名称】==>【问题描述】包含关键词:【衡阳】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    33
########################################################
【航司名称】==>【问题描述】包含关键词:【盐城】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    34
########################################################
【航司名称】==>【问题描述】包含关键词:【重庆】 的个数如下:
########################################################
          出现频数
航司名称          
华夏航空有限公司    21
成都航空         9
########################################################
【航司名称】==>【问题描述】包含关键词:【舟山】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    54
########################################################
【航司名称】==>【问题描述】包含关键词:【泉州】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    43
########################################################
【航司名称】==>【问题描述】包含关键词:【翼根】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    17
天骄航空     4
江西航空     2
########################################################
【航司名称】==>【问题描述】包含关键词:【满洲里】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    55
########################################################
【航司名称】==>【问题描述】包含关键词:【北京】 的个数如下:
########################################################
              出现频数
航司名称              
中国国际航空股份有限公司    22
成都航空             2
########################################################
【航司名称】==>【问题描述】包含关键词:【乌兰】 的个数如下:
########################################################
              出现频数
航司名称              
天骄航空            17
中国国际航空股份有限公司     2
########################################################
【航司名称】==>【问题描述】包含关键词:【梧州】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     9
########################################################
【航司名称】==>【问题描述】包含关键词:【密封】 的个数如下:
########################################################
              出现频数
航司名称              
成都航空           528
天骄航空            28
中国南方航空集团有限公司    17
中国国际航空股份有限公司     9
华夏航空有限公司         7
江西航空             2
########################################################
【航司名称】==>【问题描述】包含关键词:【呼和】 的个数如下:
########################################################
              出现频数
航司名称              
天骄航空            26
成都航空             4
中国国际航空股份有限公司     2
华夏航空有限公司         2
########################################################
【航司名称】==>【问题描述】包含关键词:【南昌】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    10
江西航空     8
########################################################
【航司名称】==>【问题描述】包含关键词:【虹桥】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    38
########################################################
【航司名称】==>【问题描述】包含关键词:【揭阳】 的个数如下:
########################################################
              出现频数
航司名称              
成都航空            26
中国南方航空集团有限公司     1
########################################################
【航司名称】==>【问题描述】包含关键词:【太原】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    28
江西航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【福州】 的个数如下:
########################################################
          出现频数
航司名称          
成都航空        11
华夏航空有限公司     2
########################################################
【航司名称】==>【问题描述】包含关键词:【南宁】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    12
########################################################
【航司名称】==>【问题描述】包含关键词:【温州】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    14
########################################################
【航司名称】==>【问题描述】包含关键词:【浦东】 的个数如下:
########################################################
              出现频数
航司名称              
成都航空            10
江西航空             3
中国南方航空集团有限公司     1
华夏航空有限公司         1
########################################################
【航司名称】==>【问题描述】包含关键词:【衢州】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    18
########################################################
【航司名称】==>【问题描述】包含关键词:【南阳】 的个数如下:
########################################################
              出现频数
航司名称              
华夏航空有限公司         9
中国南方航空集团有限公司     3
########################################################
【航司名称】==>【问题描述】包含关键词:【北海】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     7
江西航空     3
########################################################
【航司名称】==>【问题描述】包含关键词:【呼和浩特】 的个数如下:
########################################################
              出现频数
航司名称              
成都航空             4
天骄航空             3
中国国际航空股份有限公司     1
########################################################
【航司名称】==>【问题描述】包含关键词:【西昌】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    10
########################################################
【航司名称】==>【问题描述】包含关键词:【遮阳】 的个数如下:
########################################################
              出现频数
航司名称              
成都航空            58
天骄航空             3
中国国际航空股份有限公司     1
########################################################
【航司名称】==>【问题描述】包含关键词:【东营】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     7
########################################################
【航司名称】==>【问题描述】包含关键词:【鄂尔多斯】 的个数如下:
########################################################
          出现频数
航司名称          
华夏航空有限公司     2
天骄航空         1
########################################################
【航司名称】==>【问题描述】包含关键词:【锡林浩特】 的个数如下:
########################################################
              出现频数
航司名称              
天骄航空             4
中国国际航空股份有限公司     1
########################################################
【航司名称】==>【问题描述】包含关键词:【厦门】 的个数如下:
########################################################
      出现频数
航司名称      
江西航空     3
########################################################
【航司名称】==>【问题描述】包含关键词:【乌兰浩特】 的个数如下:
########################################################
              出现频数
航司名称              
天骄航空             3
中国国际航空股份有限公司     2
########################################################
【航司名称】==>【问题描述】包含关键词:【广州】 的个数如下:
########################################################
              出现频数
航司名称              
中国南方航空集团有限公司     7
成都航空             1
江西航空             1
########################################################
【航司名称】==>【问题描述】包含关键词:【宁波】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     4
########################################################
【航司名称】==>【问题描述】包含关键词:【榆林】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     8
########################################################
【航司名称】==>【问题描述】包含关键词:【深度】 的个数如下:
########################################################
              出现频数
航司名称              
成都航空             6
江西航空             4
华夏航空有限公司         2
一二三航空            1
中国南方航空集团有限公司     1
########################################################
【航司名称】==>【问题描述】包含关键词:【青岛】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     5
########################################################
【航司名称】==>【问题描述】包含关键词:【赤峰】 的个数如下:
########################################################
      出现频数
航司名称      
天骄航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【佳木斯】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     4
########################################################
【航司名称】==>【问题描述】包含关键词:【天津】 的个数如下:
########################################################
      出现频数
航司名称      
江西航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【郑州】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【塔台】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    18
########################################################
【航司名称】==>【问题描述】包含关键词:【湛江】 的个数如下:
########################################################
      出现频数
航司名称      
江西航空     2
成都航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【徐州】 的个数如下:
########################################################
      出现频数
航司名称      
江西航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【内六角】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     2
########################################################
【航司名称】==>【问题描述】包含关键词:【大庆】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     5
########################################################
【航司名称】==>【问题描述】包含关键词:【中断】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     7
江西航空     3
天骄航空     2
########################################################
【航司名称】==>【问题描述】包含关键词:【中卫】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空    18
########################################################
【航司名称】==>【问题描述】包含关键词:【云中】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【扬州】 的个数如下:
########################################################
          出现频数
航司名称          
华夏航空有限公司     1
########################################################
【航司名称】==>【问题描述】包含关键词:【西安】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     5
########################################################
【航司名称】==>【问题描述】包含关键词:【延时】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     3
江西航空     2
########################################################
【航司名称】==>【问题描述】包含关键词:【建三江】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     2
########################################################
【航司名称】==>【问题描述】包含关键词:【兰州】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     6
########################################################
【航司名称】==>【问题描述】包含关键词:【晋江】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【长度】 的个数如下:
########################################################
              出现频数
航司名称              
成都航空             7
天骄航空             2
中国南方航空集团有限公司     1
华夏航空有限公司         1
江西航空             1
########################################################
【航司名称】==>【问题描述】包含关键词:【延安】 的个数如下:
########################################################
          出现频数
航司名称          
成都航空         6
华夏航空有限公司     4
########################################################
【航司名称】==>【问题描述】包含关键词:【常州】 的个数如下:
########################################################
      出现频数
航司名称      
江西航空     1
########################################################
【航司名称】==>【问题描述】包含关键词:【沈阳】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     3
########################################################
【航司名称】==>【问题描述】包含关键词:【入口】 的个数如下:
########################################################
      出现频数
航司名称      
成都航空     3
########################################################

在飞往各问题城市的航司中,成都航空占了绝对主导地位。

In [36]:
key_groupby(key_ = key_ns,col = '是否为SDR')
【是否为SDR】==>【问题描述】包含关键词:【成都】 的个数如下:
########################################################
        出现频数
是否为SDR      
N        251
Y          4
########################################################
【是否为SDR】==>【问题描述】包含关键词:【上饶】 的个数如下:
########################################################
        出现频数
是否为SDR      
N        128
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【哈尔滨】 的个数如下:
########################################################
        出现频数
是否为SDR      
N        161
Y          2
########################################################
【是否为SDR】==>【问题描述】包含关键词:【长沙】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         61
Y          2
########################################################
【是否为SDR】==>【问题描述】包含关键词:【威海】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         76
########################################################
【是否为SDR】==>【问题描述】包含关键词:【济南】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         50
########################################################
【是否为SDR】==>【问题描述】包含关键词:【贵阳】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         43
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【五大连池】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         69
########################################################
【是否为SDR】==>【问题描述】包含关键词:【黑河】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         62
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【临汾】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         49
########################################################
【是否为SDR】==>【问题描述】包含关键词:【衡阳】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         33
########################################################
【是否为SDR】==>【问题描述】包含关键词:【盐城】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         34
########################################################
【是否为SDR】==>【问题描述】包含关键词:【重庆】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         30
########################################################
【是否为SDR】==>【问题描述】包含关键词:【舟山】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         53
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【泉州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         42
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【翼根】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         23
########################################################
【是否为SDR】==>【问题描述】包含关键词:【满洲里】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         55
########################################################
【是否为SDR】==>【问题描述】包含关键词:【北京】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         24
########################################################
【是否为SDR】==>【问题描述】包含关键词:【乌兰】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         18
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【梧州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          9
########################################################
【是否为SDR】==>【问题描述】包含关键词:【密封】 的个数如下:
########################################################
        出现频数
是否为SDR      
N        591
########################################################
【是否为SDR】==>【问题描述】包含关键词:【呼和】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         33
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【南昌】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         18
########################################################
【是否为SDR】==>【问题描述】包含关键词:【虹桥】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         38
########################################################
【是否为SDR】==>【问题描述】包含关键词:【揭阳】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         27
########################################################
【是否为SDR】==>【问题描述】包含关键词:【太原】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         29
########################################################
【是否为SDR】==>【问题描述】包含关键词:【福州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         13
########################################################
【是否为SDR】==>【问题描述】包含关键词:【南宁】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         12
########################################################
【是否为SDR】==>【问题描述】包含关键词:【温州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         14
########################################################
【是否为SDR】==>【问题描述】包含关键词:【浦东】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         15
########################################################
【是否为SDR】==>【问题描述】包含关键词:【衢州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         18
########################################################
【是否为SDR】==>【问题描述】包含关键词:【南阳】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         12
########################################################
【是否为SDR】==>【问题描述】包含关键词:【北海】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         10
########################################################
【是否为SDR】==>【问题描述】包含关键词:【呼和浩特】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          8
########################################################
【是否为SDR】==>【问题描述】包含关键词:【西昌】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         10
########################################################
【是否为SDR】==>【问题描述】包含关键词:【遮阳】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         62
########################################################
【是否为SDR】==>【问题描述】包含关键词:【东营】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          7
########################################################
【是否为SDR】==>【问题描述】包含关键词:【鄂尔多斯】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          3
########################################################
【是否为SDR】==>【问题描述】包含关键词:【锡林浩特】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          5
########################################################
【是否为SDR】==>【问题描述】包含关键词:【厦门】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          3
########################################################
【是否为SDR】==>【问题描述】包含关键词:【乌兰浩特】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          4
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【广州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          9
########################################################
【是否为SDR】==>【问题描述】包含关键词:【宁波】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          4
########################################################
【是否为SDR】==>【问题描述】包含关键词:【榆林】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          8
########################################################
【是否为SDR】==>【问题描述】包含关键词:【深度】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         14
########################################################
【是否为SDR】==>【问题描述】包含关键词:【青岛】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          5
########################################################
【是否为SDR】==>【问题描述】包含关键词:【赤峰】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【佳木斯】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          4
########################################################
【是否为SDR】==>【问题描述】包含关键词:【天津】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【郑州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【塔台】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         18
########################################################
【是否为SDR】==>【问题描述】包含关键词:【湛江】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          3
########################################################
【是否为SDR】==>【问题描述】包含关键词:【徐州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【内六角】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          2
########################################################
【是否为SDR】==>【问题描述】包含关键词:【大庆】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          5
########################################################
【是否为SDR】==>【问题描述】包含关键词:【中断】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         11
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【中卫】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         18
########################################################
【是否为SDR】==>【问题描述】包含关键词:【云中】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【扬州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【西安】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          4
Y          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【延时】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          5
########################################################
【是否为SDR】==>【问题描述】包含关键词:【建三江】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          2
########################################################
【是否为SDR】==>【问题描述】包含关键词:【兰州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          6
########################################################
【是否为SDR】==>【问题描述】包含关键词:【晋江】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【长度】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         12
########################################################
【是否为SDR】==>【问题描述】包含关键词:【延安】 的个数如下:
########################################################
        出现频数
是否为SDR      
N         10
########################################################
【是否为SDR】==>【问题描述】包含关键词:【常州】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          1
########################################################
【是否为SDR】==>【问题描述】包含关键词:【沈阳】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          3
########################################################
【是否为SDR】==>【问题描述】包含关键词:【入口】 的个数如下:
########################################################
        出现频数
是否为SDR      
N          3
########################################################

在排名前十的易出现问题的城市中,绝大部分不是SDR

In [37]:
key_groupby(key_ = key_ns,col = '故障类型')
【故障类型】==>【问题描述】包含关键词:【成都】 的个数如下:
########################################################
      出现频数
故障类型      
PL     216
ML      39
########################################################
【故障类型】==>【问题描述】包含关键词:【上饶】 的个数如下:
########################################################
      出现频数
故障类型      
PL      95
ML      34
########################################################
【故障类型】==>【问题描述】包含关键词:【哈尔滨】 的个数如下:
########################################################
      出现频数
故障类型      
PL     112
ML      51
########################################################
【故障类型】==>【问题描述】包含关键词:【长沙】 的个数如下:
########################################################
      出现频数
故障类型      
PL      47
ML      16
########################################################
【故障类型】==>【问题描述】包含关键词:【威海】 的个数如下:
########################################################
      出现频数
故障类型      
PL      59
ML      17
########################################################
【故障类型】==>【问题描述】包含关键词:【济南】 的个数如下:
########################################################
      出现频数
故障类型      
PL      38
ML      12
########################################################
【故障类型】==>【问题描述】包含关键词:【贵阳】 的个数如下:
########################################################
      出现频数
故障类型      
PL      37
ML       7
########################################################
【故障类型】==>【问题描述】包含关键词:【五大连池】 的个数如下:
########################################################
      出现频数
故障类型      
PL      50
ML      19
########################################################
【故障类型】==>【问题描述】包含关键词:【黑河】 的个数如下:
########################################################
      出现频数
故障类型      
PL      41
ML      22
########################################################
【故障类型】==>【问题描述】包含关键词:【临汾】 的个数如下:
########################################################
      出现频数
故障类型      
PL      35
ML      14
########################################################
【故障类型】==>【问题描述】包含关键词:【衡阳】 的个数如下:
########################################################
      出现频数
故障类型      
PL      22
ML      11
########################################################
【故障类型】==>【问题描述】包含关键词:【盐城】 的个数如下:
########################################################
      出现频数
故障类型      
PL      29
ML       5
########################################################
【故障类型】==>【问题描述】包含关键词:【重庆】 的个数如下:
########################################################
      出现频数
故障类型      
PL      23
ML       7
########################################################
【故障类型】==>【问题描述】包含关键词:【舟山】 的个数如下:
########################################################
      出现频数
故障类型      
PL      44
ML      10
########################################################
【故障类型】==>【问题描述】包含关键词:【泉州】 的个数如下:
########################################################
      出现频数
故障类型      
PL      25
ML      18
########################################################
【故障类型】==>【问题描述】包含关键词:【翼根】 的个数如下:
########################################################
      出现频数
故障类型      
ML      23
########################################################
【故障类型】==>【问题描述】包含关键词:【满洲里】 的个数如下:
########################################################
      出现频数
故障类型      
PL      42
ML      13
########################################################
【故障类型】==>【问题描述】包含关键词:【北京】 的个数如下:
########################################################
      出现频数
故障类型      
PL      21
ML       3
########################################################
【故障类型】==>【问题描述】包含关键词:【乌兰】 的个数如下:
########################################################
      出现频数
故障类型      
PL      11
ML       8
########################################################
【故障类型】==>【问题描述】包含关键词:【梧州】 的个数如下:
########################################################
      出现频数
故障类型      
PL       9
########################################################
【故障类型】==>【问题描述】包含关键词:【密封】 的个数如下:
########################################################
      出现频数
故障类型      
ML     587
PL       4
########################################################
【故障类型】==>【问题描述】包含关键词:【呼和】 的个数如下:
########################################################
      出现频数
故障类型      
PL      23
ML      11
########################################################
【故障类型】==>【问题描述】包含关键词:【南昌】 的个数如下:
########################################################
      出现频数
故障类型      
PL      17
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【虹桥】 的个数如下:
########################################################
      出现频数
故障类型      
PL      28
ML      10
########################################################
【故障类型】==>【问题描述】包含关键词:【揭阳】 的个数如下:
########################################################
      出现频数
故障类型      
PL      18
ML       9
########################################################
【故障类型】==>【问题描述】包含关键词:【太原】 的个数如下:
########################################################
      出现频数
故障类型      
PL      20
ML       9
########################################################
【故障类型】==>【问题描述】包含关键词:【福州】 的个数如下:
########################################################
      出现频数
故障类型      
PL      13
########################################################
【故障类型】==>【问题描述】包含关键词:【南宁】 的个数如下:
########################################################
      出现频数
故障类型      
PL      11
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【温州】 的个数如下:
########################################################
      出现频数
故障类型      
PL      10
ML       4
########################################################
【故障类型】==>【问题描述】包含关键词:【浦东】 的个数如下:
########################################################
      出现频数
故障类型      
PL      10
ML       5
########################################################
【故障类型】==>【问题描述】包含关键词:【衢州】 的个数如下:
########################################################
      出现频数
故障类型      
PL      17
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【南阳】 的个数如下:
########################################################
      出现频数
故障类型      
PL       7
ML       5
########################################################
【故障类型】==>【问题描述】包含关键词:【北海】 的个数如下:
########################################################
      出现频数
故障类型      
ML       5
PL       5
########################################################
【故障类型】==>【问题描述】包含关键词:【呼和浩特】 的个数如下:
########################################################
      出现频数
故障类型      
PL       6
ML       2
########################################################
【故障类型】==>【问题描述】包含关键词:【西昌】 的个数如下:
########################################################
      出现频数
故障类型      
ML       5
PL       5
########################################################
【故障类型】==>【问题描述】包含关键词:【遮阳】 的个数如下:
########################################################
      出现频数
故障类型      
ML      60
PL       2
########################################################
【故障类型】==>【问题描述】包含关键词:【东营】 的个数如下:
########################################################
      出现频数
故障类型      
PL       7
########################################################
【故障类型】==>【问题描述】包含关键词:【鄂尔多斯】 的个数如下:
########################################################
      出现频数
故障类型      
ML       2
PL       1
########################################################
【故障类型】==>【问题描述】包含关键词:【锡林浩特】 的个数如下:
########################################################
      出现频数
故障类型      
PL       5
########################################################
【故障类型】==>【问题描述】包含关键词:【厦门】 的个数如下:
########################################################
      出现频数
故障类型      
PL       3
########################################################
【故障类型】==>【问题描述】包含关键词:【乌兰浩特】 的个数如下:
########################################################
      出现频数
故障类型      
PL       4
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【广州】 的个数如下:
########################################################
      出现频数
故障类型      
PL       8
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【宁波】 的个数如下:
########################################################
      出现频数
故障类型      
PL       3
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【榆林】 的个数如下:
########################################################
      出现频数
故障类型      
PL       6
ML       2
########################################################
【故障类型】==>【问题描述】包含关键词:【深度】 的个数如下:
########################################################
      出现频数
故障类型      
ML      14
########################################################
【故障类型】==>【问题描述】包含关键词:【青岛】 的个数如下:
########################################################
      出现频数
故障类型      
PL       4
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【赤峰】 的个数如下:
########################################################
      出现频数
故障类型      
PL       1
########################################################
【故障类型】==>【问题描述】包含关键词:【佳木斯】 的个数如下:
########################################################
      出现频数
故障类型      
PL       3
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【天津】 的个数如下:
########################################################
      出现频数
故障类型      
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【郑州】 的个数如下:
########################################################
      出现频数
故障类型      
PL       1
########################################################
【故障类型】==>【问题描述】包含关键词:【塔台】 的个数如下:
########################################################
      出现频数
故障类型      
PL      18
########################################################
【故障类型】==>【问题描述】包含关键词:【湛江】 的个数如下:
########################################################
      出现频数
故障类型      
PL       2
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【徐州】 的个数如下:
########################################################
      出现频数
故障类型      
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【内六角】 的个数如下:
########################################################
      出现频数
故障类型      
ML       2
########################################################
【故障类型】==>【问题描述】包含关键词:【大庆】 的个数如下:
########################################################
      出现频数
故障类型      
PL       3
ML       2
########################################################
【故障类型】==>【问题描述】包含关键词:【中断】 的个数如下:
########################################################
      出现频数
故障类型      
PL       7
ML       5
########################################################
【故障类型】==>【问题描述】包含关键词:【中卫】 的个数如下:
########################################################
      出现频数
故障类型      
PL      12
ML       6
########################################################
【故障类型】==>【问题描述】包含关键词:【云中】 的个数如下:
########################################################
      出现频数
故障类型      
PL       1
########################################################
【故障类型】==>【问题描述】包含关键词:【扬州】 的个数如下:
########################################################
      出现频数
故障类型      
PL       1
########################################################
【故障类型】==>【问题描述】包含关键词:【西安】 的个数如下:
########################################################
      出现频数
故障类型      
ML       3
PL       2
########################################################
【故障类型】==>【问题描述】包含关键词:【延时】 的个数如下:
########################################################
      出现频数
故障类型      
PL       3
ML       2
########################################################
【故障类型】==>【问题描述】包含关键词:【建三江】 的个数如下:
########################################################
      出现频数
故障类型      
PL       2
########################################################
【故障类型】==>【问题描述】包含关键词:【兰州】 的个数如下:
########################################################
      出现频数
故障类型      
ML       3
PL       3
########################################################
【故障类型】==>【问题描述】包含关键词:【晋江】 的个数如下:
########################################################
      出现频数
故障类型      
PL       1
########################################################
【故障类型】==>【问题描述】包含关键词:【长度】 的个数如下:
########################################################
      出现频数
故障类型      
ML      11
PL       1
########################################################
【故障类型】==>【问题描述】包含关键词:【延安】 的个数如下:
########################################################
      出现频数
故障类型      
PL       6
ML       4
########################################################
【故障类型】==>【问题描述】包含关键词:【常州】 的个数如下:
########################################################
      出现频数
故障类型      
ML       1
########################################################
【故障类型】==>【问题描述】包含关键词:【沈阳】 的个数如下:
########################################################
      出现频数
故障类型      
PL       3
########################################################
【故障类型】==>【问题描述】包含关键词:【入口】 的个数如下:
########################################################
      出现频数
故障类型      
ML       2
PL       1
########################################################
In [38]:
key_groupby(key_ = key_ns,col = '故障ATA')
【故障ATA】==>【问题描述】包含关键词:【成都】 的个数如下:
########################################################
          出现频数
故障ATA         
345800.0    18
344100.0    17
220700.0    13
273500.0    12
270000.0     8
...        ...
304100.0     1
210001.0     1
312200.0     1
325001.0     1
783200.0     1

[95 rows x 1 columns]
########################################################
【故障ATA】==>【问题描述】包含关键词:【上饶】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0    10
344500.0     7
344100.0     7
720000.0     6
345800.0     6
...        ...
293101.0     1
210001.0     1
312200.0     1
324000.0     1
783001.0     1

[70 rows x 1 columns]
########################################################
【故障ATA】==>【问题描述】包含关键词:【哈尔滨】 的个数如下:
########################################################
          出现频数
故障ATA         
344500.0    10
273500.0     9
344100.0     8
345800.0     6
345801.0     5
...        ...
324540.0     1
235101.0     1
325001.0     1
330000.0     1
792100.0     1

[85 rows x 1 columns]
########################################################
【故障ATA】==>【问题描述】包含关键词:【长沙】 的个数如下:
########################################################
          出现频数
故障ATA         
345800.0     6
270000.0     4
273500.0     4
220700.0     3
324100.0     3
301100.0     3
220000.0     2
344500.0     2
215100.0     2
231101.0     2
223000.0     2
360000.0     1
346100.0     1
345801.0     1
340000.0     1
383000.0     1
345100.0     1
525102.0     1
344601.0     1
344600.0     1
530000.0     1
561000.0     1
341200.0     1
341101.0     1
310000.0     1
334500.0     1
331302.0     1
324500.0     1
279122.0     1
279100.0     1
275200.0     1
272200.0     1
260000.0     1
243210.0     1
243200.0     1
237100.0     1
235101.0     1
233100.0     1
231105.0     1
231100.0     1
720000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【威海】 的个数如下:
########################################################
          出现频数
故障ATA         
344100.0     7
345800.0     5
273500.0     5
344500.0     4
220700.0     4
270000.0     4
301100.0     3
344600.0     3
340000.0     2
282200.0     2
260000.0     2
210000.0     2
360000.0     2
221100.0     2
345801.0     1
345401.0     1
441100.0     1
442200.0     1
345100.0     1
495000.0     1
520000.0     1
534000.0     1
560000.0     1
341200.0     1
341100.0     1
304100.0     1
331302.0     1
233100.0     1
212600.0     1
215200.0     1
216200.0     1
220710.0     1
222100.0     1
231100.0     1
237100.0     1
324101.0     1
243210.0     1
250000.0     1
291400.0     1
300000.0     1
210001.0     1
321100.0     1
793500.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【济南】 的个数如下:
########################################################
          出现频数
故障ATA         
345800.0     4
220700.0     3
344100.0     3
344101.0     3
344500.0     3
273500.0     3
270000.0     3
210001.0     1
344505.0     1
344200.0     1
345400.0     1
345101.0     1
301100.0     1
345801.0     1
380000.0     1
381300.0     1
383000.0     1
383300.0     1
324100.0     1
282200.0     1
291100.0     1
215100.0     1
279106.0     1
276200.0     1
273502.0     1
260101.0     1
260000.0     1
242000.0     1
240000.0     1
238101.0     1
238100.0     1
230000.0     1
222100.0     1
221103.0     1
720000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【贵阳】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     5
344500.0     5
344100.0     3
720000.0     3
220700.0     3
220000.0     2
304100.0     2
316100.0     2
742000.0     1
520000.0     1
494200.0     1
491100.0     1
345801.0     1
345100.0     1
344601.0     1
324101.0     1
341100.0     1
331401.0     1
321100.0     1
312200.0     1
301100.0     1
238100.0     1
235107.0     1
235100.0     1
223000.0     1
221000.0     1
783000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【五大连池】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0    12
223000.0     5
344100.0     3
220700.0     3
220000.0     2
261600.0     2
346101.0     2
345800.0     2
273502.0     2
320000.0     2
231100.0     2
261200.0     1
237100.0     1
560000.0     1
520000.0     1
494000.0     1
490000.0     1
380000.0     1
361100.0     1
360000.0     1
220710.0     1
345801.0     1
345400.0     1
345100.0     1
344500.0     1
344101.0     1
332601.0     1
252310.0     1
330000.0     1
324300.0     1
324101.0     1
324100.0     1
238100.0     1
313100.0     1
290000.0     1
282200.0     1
282100.0     1
279122.0     1
275500.0     1
275200.0     1
242000.0     1
243131.0     1
783200.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【黑河】 的个数如下:
########################################################
          出现频数
故障ATA         
344100.0     6
237100.0     4
210001.0     4
270000.0     3
491000.0     3
344200.0     3
220700.0     3
520000.0     2
273500.0     2
279122.0     2
345800.0     2
525101.0     1
345801.0     1
344201.0     1
720000.0     1
344500.0     1
561000.0     1
380000.0     1
490000.0     1
525100.0     1
560000.0     1
522000.0     1
210000.0     1
324101.0     1
324540.0     1
324300.0     1
324100.0     1
314100.0     1
304100.0     1
300000.0     1
291200.0     1
282200.0     1
238101.0     1
233101.0     1
233100.0     1
223000.0     1
221100.0     1
220000.0     1
216100.0     1
730000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【临汾】 的个数如下:
########################################################
          出现频数
故障ATA         
345800.0     6
273500.0     5
220700.0     5
344500.0     4
345801.0     3
223000.0     2
325000.0     2
344200.0     2
213000.0     1
344100.0     1
773101.0     1
730000.0     1
720000.0     1
710000.0     1
383302.0     1
380000.0     1
325001.0     1
341100.0     1
324112.0     1
316100.0     1
313100.0     1
280000.0     1
275200.0     1
272100.0     1
270000.0     1
250000.0     1
243211.0     1
793100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【衡阳】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     3
231100.0     2
380000.0     2
345800.0     2
344100.0     2
301100.0     2
221100.0     1
279100.0     1
490000.0     1
381300.0     1
345100.0     1
344601.0     1
344500.0     1
279122.0     1
278200.0     1
223000.0     1
261600.0     1
261100.0     1
260101.0     1
260000.0     1
243200.0     1
240000.0     1
238101.0     1
238100.0     1
237100.0     1
783000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【盐城】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0     4
220700.0     4
270000.0     3
210000.0     2
534000.0     2
344100.0     2
325000.0     2
279100.0     1
282200.0     1
301100.0     1
320000.0     1
240000.0     1
340000.0     1
237100.0     1
344200.0     1
344500.0     1
346100.0     1
361100.0     1
491000.0     1
235100.0     1
710000.0     1
783200.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【重庆】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     4
243200.0     2
344100.0     2
301100.0     2
210001.0     1
279100.0     1
441100.0     1
361100.0     1
360000.0     1
345100.0     1
344500.0     1
324100.0     1
316100.0     1
275000.0     1
220700.0     1
261600.0     1
252130.0     1
251000.0     1
242200.0     1
242000.0     1
240000.0     1
221300.0     1
221000.0     1
520000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【舟山】 的个数如下:
########################################################
          出现频数
故障ATA         
324100.0     5
344500.0     4
345800.0     3
344100.0     3
210001.0     2
273100.0     2
720000.0     2
220700.0     2
301100.0     2
221103.0     2
238101.0     1
242112.0     1
220710.0     1
523100.0     1
346101.0     1
346100.0     1
345801.0     1
345401.0     1
345200.0     1
344600.0     1
221200.0     1
344201.0     1
344101.0     1
231201.0     1
341100.0     1
325001.0     1
324101.0     1
236100.0     1
237100.0     1
291101.0     1
275000.0     1
274000.0     1
273500.0     1
238100.0     1
260100.0     1
260000.0     1
783000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【泉州】 的个数如下:
########################################################
          出现频数
故障ATA         
220700.0     3
344100.0     3
344601.0     2
325000.0     2
534000.0     2
236100.0     2
237100.0     2
284100.0     2
324100.0     2
304100.0     1
321100.0     1
210000.0     1
340000.0     1
341100.0     1
345100.0     1
380000.0     1
284105.0     1
280000.0     1
282100.0     1
220000.0     1
273500.0     1
270000.0     1
261100.0     1
260101.0     1
260000.0     1
243200.0     1
242300.0     1
238100.0     1
237500.0     1
223000.0     1
221100.0     1
783200.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【翼根】 的个数如下:
########################################################
          出现频数
故障ATA         
334200.0    10
281100.0     6
334300.0     3
276400.0     1
281101.0     1
334201.0     1
512100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【满洲里】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0     8
223000.0     5
344100.0     4
345800.0     4
261600.0     3
270000.0     3
345100.0     2
344500.0     2
210000.0     2
284100.0     2
345400.0     1
345101.0     1
325000.0     1
344600.0     1
345401.0     1
345801.0     1
332601.0     1
280000.0     1
312200.0     1
210001.0     1
279106.0     1
279100.0     1
278200.0     1
276300.0     1
275501.0     1
273502.0     1
252310.0     1
230700.0     1
220700.0     1
710000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【北京】 的个数如下:
########################################################
          出现频数
故障ATA         
344200.0     4
345100.0     3
345800.0     3
320000.0     2
210000.0     1
220700.0     1
221000.0     1
221100.0     1
316100.0     1
341200.0     1
344100.0     1
344500.0     1
491100.0     1
710000.0     1
720000.0     1
753000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【乌兰】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     6
215200.0     1
220700.0     1
221300.0     1
236100.0     1
237100.0     1
273500.0     1
274000.0     1
282000.0     1
300000.0     1
301100.0     1
361000.0     1
491100.0     1
720000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【梧州】 的个数如下:
########################################################
          出现频数
故障ATA         
220700.0     1
223000.0     1
242000.0     1
260101.0     1
261600.0     1
273500.0     1
324100.0     1
345800.0     1
491000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【密封】 的个数如下:
########################################################
          出现频数
故障ATA         
534070.0   503
534000.0    35
574200.0    11
545401.0     6
570000.0     4
521000.0     2
520900.0     2
574202.0     2
574201.0     2
545200.0     2
537601.0     2
575105.0     2
494000.0     1
513100.0     1
575101.0     1
251120.0     1
252000.0     1
270000.0     1
279100.0     1
313300.0     1
545400.0     1
344100.0     1
540000.0     1
345800.0     1
351000.0     1
441100.0     1
530000.0     1
230000.0     1
491000.0     1
221100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【呼和】 的个数如下:
########################################################
          出现频数
故障ATA         
237100.0     3
270000.0     3
220700.0     3
361000.0     2
215200.0     1
324000.0     1
345800.0     1
345400.0     1
345100.0     1
344500.0     1
344100.0     1
341100.0     1
340000.0     1
324500.0     1
324100.0     1
313200.0     1
314105.0     1
301108.0     1
301100.0     1
275200.0     1
261600.0     1
236100.0     1
235100.0     1
223000.0     1
221300.0     1
221100.0     1
783000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【南昌】 的个数如下:
########################################################
          出现频数
故障ATA         
220700.0     2
221100.0     2
560000.0     2
720000.0     2
220000.0     1
231101.0     1
270000.0     1
341100.0     1
344100.0     1
344500.0     1
344600.0     1
345800.0     1
346100.0     1
741000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【虹桥】 的个数如下:
########################################################
          出现频数
故障ATA         
344100.0     4
345800.0     4
260000.0     2
270000.0     2
345100.0     2
223000.0     2
220000.0     1
720000.0     1
520000.0     1
499201.0     1
496000.0     1
383300.0     1
360000.0     1
344600.0     1
344500.0     1
324300.0     1
325000.0     1
324100.0     1
310000.0     1
281102.0     1
272200.0     1
243211.0     1
243200.0     1
237100.0     1
235101.0     1
231101.0     1
231100.0     1
730000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【揭阳】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0     5
279100.0     2
237100.0     2
210000.0     1
341200.0     1
710000.0     1
561000.0     1
494000.0     1
491000.0     1
361100.0     1
344500.0     1
344100.0     1
316100.0     1
324100.0     1
308000.0     1
301100.0     1
273200.0     1
270000.0     1
252500.0     1
238100.0     1
732100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【太原】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0     5
220700.0     2
340000.0     2
324100.0     1
525100.0     1
520000.0     1
495000.0     1
345801.0     1
345100.0     1
344600.0     1
344500.0     1
344100.0     1
324000.0     1
220710.0     1
322100.0     1
321100.0     1
310000.0     1
301100.0     1
284100.0     1
282200.0     1
282000.0     1
231101.0     1
560000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【福州】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     2
273500.0     2
220700.0     1
240000.0     1
252500.0     1
261600.0     1
279100.0     1
308000.0     1
324100.0     1
340000.0     1
783000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【南宁】 的个数如下:
########################################################
          出现频数
故障ATA         
340000.0     3
345800.0     2
215100.0     1
237100.0     1
238101.0     1
242100.0     1
243211.0     1
344200.0     1
344500.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【温州】 的个数如下:
########################################################
          出现频数
故障ATA         
237100.0     2
273500.0     1
300000.0     1
301100.0     1
320000.0     1
341100.0     1
344200.0     1
344500.0     1
345400.0     1
441100.0     1
491000.0     1
710000.0     1
783000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【浦东】 的个数如下:
########################################################
          出现频数
故障ATA         
324100.0     2
216200.0     1
223000.0     1
231100.0     1
242200.0     1
261100.0     1
270000.0     1
275000.0     1
291100.0     1
301100.0     1
304100.0     1
324000.0     1
346100.0     1
360000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【衢州】 的个数如下:
########################################################
          出现频数
故障ATA         
344500.0     3
270000.0     2
720000.0     2
223000.0     1
235100.0     1
235107.0     1
301100.0     1
312200.0     1
331401.0     1
344601.0     1
345801.0     1
520000.0     1
520900.0     1
742000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【南阳】 的个数如下:
########################################################
          出现频数
故障ATA         
220700.0     2
301100.0     2
240000.0     1
242000.0     1
252130.0     1
261600.0     1
301108.0     1
304300.0     1
320000.0     1
324000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【北海】 的个数如下:
########################################################
          出现频数
故障ATA         
260000.0     1
270000.0     1
284100.0     1
291100.0     1
344100.0     1
344500.0     1
344601.0     1
345100.0     1
441100.0     1
741000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【呼和浩特】 的个数如下:
########################################################
          出现频数
故障ATA         
215200.0     1
223000.0     1
237100.0     1
270000.0     1
301108.0     1
324000.0     1
344100.0     1
344500.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【西昌】 的个数如下:
########################################################
          出现频数
故障ATA         
491100.0     3
237100.0     1
273500.0     1
324300.0     1
345800.0     1
361000.0     1
491000.0     1
730000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【遮阳】 的个数如下:
########################################################
          出现频数
故障ATA         
251310.0    47
251300.0    13
304100.0     1
441100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【东营】 的个数如下:
########################################################
          出现频数
故障ATA         
344100.0     2
220700.0     1
273500.0     1
322100.0     1
324100.0     1
361100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【鄂尔多斯】 的个数如下:
########################################################
          出现频数
故障ATA         
243200.0     1
270000.0     1
324000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【锡林浩特】 的个数如下:
########################################################
          出现频数
故障ATA         
223000.0     1
230000.0     1
237100.0     1
273500.0     1
491000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【厦门】 的个数如下:
########################################################
          出现频数
故障ATA         
237100.0     1
270000.0     1
324000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【乌兰浩特】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     2
236100.0     1
491100.0     1
720000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【广州】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     2
220000.0     1
280000.0     1
320000.0     1
324000.0     1
324100.0     1
324500.0     1
770000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【宁波】 的个数如下:
########################################################
          出现频数
故障ATA         
340000.0     1
344100.0     1
344200.0     1
490000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【榆林】 的个数如下:
########################################################
          出现频数
故障ATA         
237100.0     2
210000.0     1
270000.0     1
273500.0     1
320000.0     1
324100.0     1
344100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【深度】 的个数如下:
########################################################
          出现频数
故障ATA         
720000.0     4
341100.0     2
520000.0     2
324500.0     1
332200.0     1
511030.0     1
523000.0     1
570000.0     1
710000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【青岛】 的个数如下:
########################################################
          出现频数
故障ATA         
215200.0     1
279100.0     1
324100.0     1
344500.0     1
494200.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【赤峰】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【佳木斯】 的个数如下:
########################################################
          出现频数
故障ATA         
237100.0     1
275200.0     1
324000.0     1
527001.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【天津】 的个数如下:
########################################################
          出现频数
故障ATA         
344200.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【郑州】 的个数如下:
########################################################
          出现频数
故障ATA         
344600.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【塔台】 的个数如下:
########################################################
          出现频数
故障ATA         
345100.0     4
231100.0     2
534000.0     2
231101.0     1
231201.0     1
304100.0     1
320000.0     1
324100.0     1
325000.0     1
340000.0     1
344500.0     1
345401.0     1
346101.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【湛江】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     1
301100.0     1
345800.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【徐州】 的个数如下:
########################################################
          出现频数
故障ATA         
242100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【内六角】 的个数如下:
########################################################
          出现频数
故障ATA         
330000.0     1
520000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【大庆】 的个数如下:
########################################################
          出现频数
故障ATA         
270000.0     1
282200.0     1
344500.0     1
360000.0     1
520000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【中断】 的个数如下:
########################################################
          出现频数
故障ATA         
230000.0     3
231101.0     2
344100.0     2
270000.0     1
280000.0     1
304100.0     1
320000.0     1
340000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【中卫】 的个数如下:
########################################################
          出现频数
故障ATA         
220700.0     4
301100.0     2
215100.0     1
220710.0     1
237100.0     1
273500.0     1
273502.0     1
324000.0     1
324101.0     1
326000.0     1
344500.0     1
345800.0     1
520000.0     1
720000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【云中】 的个数如下:
########################################################
          出现频数
故障ATA         
223000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【扬州】 的个数如下:
########################################################
          出现频数
故障ATA         
346100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【西安】 的个数如下:
########################################################
          出现频数
故障ATA         
220710.0     1
273500.0     1
275200.0     1
345800.0     1
520000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【延时】 的个数如下:
########################################################
          出现频数
故障ATA         
220700.0     2
244100.0     1
334603.0     1
381100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【建三江】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0     1
494000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【兰州】 的个数如下:
########################################################
          出现频数
故障ATA         
221103.0     1
236100.0     1
270000.0     1
273502.0     1
324300.0     1
710000.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【晋江】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【长度】 的个数如下:
########################################################
          出现频数
故障ATA         
498105.0     4
720000.0     2
361100.0     1
513100.0     1
520000.0     1
523000.0     1
561000.0     1
574100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【延安】 的个数如下:
########################################################
          出现频数
故障ATA         
273500.0     2
231200.0     1
256510.0     1
316100.0     1
320000.0     1
324000.0     1
345800.0     1
361100.0     1
491100.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【常州】 的个数如下:
########################################################
          出现频数
故障ATA         
344200.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【沈阳】 的个数如下:
########################################################
          出现频数
故障ATA         
344200.0     1
344500.0     1
345800.0     1
########################################################
【故障ATA】==>【问题描述】包含关键词:【入口】 的个数如下:
########################################################
          出现频数
故障ATA         
332300.0     1
345100.0     1
510300.0     1
########################################################

故障 ATA 345800 在易出现问题的城市前六名中,频繁出现,在所有的 ATA 中排名保持前三,在成都、长沙、济南三地排名第一。

2.4 数据可视化

通过对故障报告的数据可视化,可以更清晰地描述故障在各个特征维度下的发生频率。

首先,关注各个机号问题描述含有 “CAS” 信息的频数。可以看出机号 B-3387 关于 CAS 信息故障出现问题次数最多,B-651M 最少。

In [39]:
plt.figure(figsize= [20,8])
data_ = data[['机号','问题描述']][data[['机号','问题描述']]['问题描述'].str.contains('CAS')]
print('故障信息关于【CAS】共有 【{}】 条数据'.format(len(data_)))
sns.countplot(x="机号", data=data_,
             order = data_['机号'].value_counts().index)
plt.xticks(rotation = 90)
plt.ylabel('频数', fontsize=18)
plt.xlabel('机号', fontsize=18)
故障信息关于【CAS】共有 【1265】 条数据
Out[39]:
Text(0.5, 0, '机号')
In [40]:
plt.figure(figsize= [20,8])
data_ = data[['机号','问题描述']][data[['机号','问题描述']]['问题描述'].str.contains('CMS')]
print('故障信息关于【CMS】共有 【{}】 条数据'.format(len(data_)))
sns.countplot(x="机号", data=data_,
             order = data_['机号'].value_counts().index)
plt.xticks(rotation = 90)
plt.ylabel('频数', fontsize=18)
plt.xlabel('机号', fontsize=18)
故障信息关于【CMS】共有 【1946】 条数据
Out[40]:
Text(0.5, 0, '机号')
In [41]:
plt.figure(figsize= [20,8])
data_ = data[['机号','问题描述']][data[['机号','问题描述']]['问题描述'].str.contains('MPP')]
print('故障信息关于【MPP】共有 【{}】 条数据'.format(len(data_)))
sns.countplot(x="机号", data=data_,
             order = data_['机号'].value_counts().index)
plt.xticks(rotation = 90)
plt.ylabel('频数', fontsize=18)
plt.xlabel('机号', fontsize=18)
故障信息关于【MPP】共有 【10】 条数据
Out[41]:
Text(0.5, 0, '机号')
In [42]:
v = meta[(meta['数据层级'] == 'nominal') & (meta['是否保留'])].index

for f in v[:-2]:
    plt.figure()
    fig, ax = plt.subplots(figsize=(20,10))
    # Calculate the percentage of target=1 per category value
    cat_perc = data[[f, '故障类型']].groupby([f],as_index=False).count()[:10]
    cat_perc.sort_values(by='故障类型', ascending=False, inplace=True)
    # Bar plot
    # Order the bars descending on target mean
    sns.barplot(ax=ax, x=f, y='故障类型', data=cat_perc, order=cat_perc[f])
    plt.ylabel('频数', fontsize=18)
    plt.xlabel(f, fontsize=18)
    plt.tick_params(axis='both', which='major', labelsize=18)
    plt.xticks(rotation = 45)
    plt.show();
<Figure size 432x288 with 0 Axes>
<Figure size 432x288 with 0 Axes>
<Figure size 432x288 with 0 Axes>
<Figure size 432x288 with 0 Axes>
<Figure size 432x288 with 0 Axes>

现在针对故障发生时间,做一些基础变换,从而完成对年度、季度以及每天的故障发生频率。

In [43]:
df
Out[43]:
采集年月 航空公司代码 航司名称 机型 系列 故障报告ID 采集ID EXCEL行号 机号 航班号 ... 飞行阶段 故障ATA 维修ATA 问题描述 排故措施 排故措施编码 涉及部件件号 涉及部件序号 该故障是否已经进行过多发计算 该故障是否已经进行过重复计算
0 2018/7/31 UEA 成都航空 ARJ21 700 193617 8596 26 B-3388 NaN ... NaN 383302.0 383302.0 航后检查污水箱真空泵持续工作 参考MPP38-33-32,更换逻辑控制模块,测试正常。 NaN 7701032 15 NaN NaN
1 2018/7/31 UEA 成都航空 ARJ21 700 193618 8596 27 B-3388 NaN ... NaN 243200.0 243200.0 机组写本“巡航阶段,操纵台出现啸叫声,逐渐减小持续约5秒” 参考MPP21-30-00-710-805做座舱压力控制实验,当增压到2PSI时主电瓶开始有... NaN 025578-000 090520011FEB0 NaN NaN
2 2018/7/31 UEA 成都航空 ARJ21 700 193619 8596 28 B-3388 NaN ... NaN 534070.0 534070.0 航后检查左主起轮舱密封件有一处破损 航后参考MPP53-76-01更换左主起轮舱密封件,检查正常 NaN 534A7610-000-081A NaN NaN NaN
3 2018/7/31 UEA 成都航空 ARJ21 700 193620 8596 29 B-3388 NaN ... NaN 260101.0 260101.0 航前通完电后CAS上出现蓝色信息“FIRE SYS FAULT”,无CMS信息,复位跳开关无效。 参考MPP 26-01-01拆下FOCU计算机清洁后重新安装正常,测试正常。 NaN NaN NaN NaN NaN
4 2018/7/31 UEA 成都航空 ARJ21 700 193621 8596 30 B-3321 NaN ... NaN 243200.0 243200.0 因B-3388飞机主电瓶啸叫,因航材无件,与本机对串主电瓶 参考MPP24-32-11与B-3388对串主电瓶。已开B-3388 飞机电瓶AOG无料单:... NaN 025578-000 090520011FEAC NaN NaN
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
8868 2021/5/31 UEA 成都航空 ARJ21 700 276337 9874 64 B-604D NaN ... NaN 220700.0 220700.0 机组写本:YD降级,航后检查有CMS信息:\n"GIOM 1:GIOM 1 B-IOC-3D... ①参考FIM ARJ21-A-27-91-04-AEA-421A-A分别测量GIOM 1、G... NaN NaN NaN NaN NaN
8869 2021/5/31 UEA 成都航空 ARJ21 700 276338 9874 65 B-605N NaN ... NaN 346100.0 346100.0 检查发现有一段CMS信息:CDU1 FAILED KEYBOARD FAULT。 航后询问机组CDU1使用正常,参考MPP ARJ21-A-34-61-01做CDU1的操作测... NaN NaN NaN NaN NaN
8870 2021/5/31 UEA 成都航空 ARJ21 700 276339 9874 66 B-620D NaN ... NaN 291100.0 291100.0 2#液压系统储压气压力无法保持。 参考MPP ARJ21-A-29-11-22更换2#系统充气阀,测试正常。 NaN NaN NaN NaN NaN
8871 2021/5/31 UEA 成都航空 ARJ21 700 276340 9874 67 B-620D NaN ... NaN 237100.0 237100.0 空中闪现“CVR/RIPS FAULT”。 参考MPP ARJ21-A-23-71-11更换CVR,测试正常。 NaN NaN NaN NaN NaN
8872 2021/5/31 UEA 成都航空 ARJ21 700 276341 9874 68 B-620E NaN ... NaN 384100.0 384100.0 乘务写本:“WATER FAULT”指示灯常亮。 参考MPP ARJ21-A-38-41-00为水系统增压,故障灯消失,检查正常。 NaN NaN NaN NaN NaN

8873 rows × 30 columns

In [44]:
data['日'] = data['日期'].map(lambda x: x.day)
In [45]:
data['年'] = data['日期'].map(lambda x: x.year)
In [46]:
data['月'] = data['日期'].map(lambda x: x.month)
In [47]:
data.head(3)
Out[47]:
index 采集年月 航空公司代码 航司名称 系列 故障报告ID 采集ID EXCEL行号 机号 日期 ... 运行种类 ETOPS 故障类型 故障ATA 维修ATA 问题描述 排故措施
0 0 2018-07-31 UEA 成都航空 700 193617 8596 26 B-3388 2018-07-08 ... R D ML 383302.0 383302.0 航后检查污水箱真空泵持续工作 参考MPP38-33-32,更换逻辑控制模块,测试正常。 8 2018 7
1 1 2018-07-31 UEA 成都航空 700 193618 8596 27 B-3388 2018-07-09 ... R D PL 243200.0 243200.0 机组写本“巡航阶段,操纵台出现啸叫声,逐渐减小持续约5秒” 参考MPP21-30-00-710-805做座舱压力控制实验,当增压到2PSI时主电瓶开始有... 9 2018 7
2 2 2018-07-31 UEA 成都航空 700 193619 8596 28 B-3388 2018-07-09 ... R D ML 534070.0 534070.0 航后检查左主起轮舱密封件有一处破损 航后参考MPP53-76-01更换左主起轮舱密封件,检查正常 9 2018 7

3 rows × 21 columns

In [48]:
problems_per_year = Counter(data['年'])
years = list(problems_per_year.keys())
problems_year = list(problems_per_year.values())
In [49]:
problems_per_day = Counter(data['日'])
days = list(problems_per_day.keys())
problems_day = list(problems_per_day.values())
In [50]:
problems_per_month = Counter(data['月'])
months = list(problems_per_month.keys())
problems_month = list(problems_per_month.values())
In [51]:
def get_season(month):
    if month >= 3 and month <= 5:
        return '春天'
    elif month >= 6 and month <= 8:
        return '夏天'
    elif month >= 9 and month <= 11:
        return '秋天'
    else:
        return '冬天'

data['季节'] = data['月'].apply(get_season)
In [52]:
problems_per_season = Counter(data['季节'])
seasons = list(problems_per_season.keys())
problems_season = list(problems_per_season.values())
In [53]:
plt.rcParams['font.sans-serif']=['SimHei']#显示中文标签 
plt.rcParams['axes.unicode_minus']=False

sns.set_color_codes("pastel")

fig = plt.figure(figsize=(14, 10))

sub1 = fig.add_subplot(2,2,1)
sns.barplot(x=years, y=problems_year, color='g', ax=sub1)
sub1.set(ylabel="故障", xlabel="年", title="每年故障数")
plt.setp(sub1.patches, linewidth=0)
plt.setp(sub1.get_xticklabels(), rotation=0, fontsize=12)

sub0 = fig.add_subplot(2,2,2)
sns.barplot(x=months, y=problems_month, color='yellow', ax=sub0)
sub0.set(ylabel="故障", xlabel="月", title="每月故障数")
plt.setp(sub1.patches, linewidth=0)
plt.setp(sub1.get_xticklabels(), rotation=0, fontsize=12)

sub2 = fig.add_subplot(2,2,3)
sns.barplot(x=days, y=problems_day, color='r', ax=sub2)
sub2.set(ylabel="故障", xlabel="日", title="每日故障数")

sub3 = fig.add_subplot(2,2,4)
sns.barplot(x=seasons, y=problems_season, color='b', ax=sub3)
texts = sub3.set(ylabel="故障", xlabel="季度", title="每季度故障数")

plt.tight_layout(w_pad=4, h_pad=3)

可以看出故障的发生时间主要集中在2019年和2021年,2018年之前发生的情况较少,也可能是未记录。

日频来看,每个月的24日故障发生频率最高,31日最低。

月频来看,12月到3月的故障发生频率全年占比最高。

季频来看,秋天故障发生频率最低,春季冬季频率较高,可能是极端天气造成。

3. 数据建模

基于故障类型对数据标注,使用自然语言处理(NLP)对故障描述(文本数据)进行文本预处理、信息检索、数据挖掘以及建模。

3.1 文本预处理

通过清除非中文字符、去除停用词以及使用 jieba 对文本精确分词等步骤,处理原始数据,并且分割为训练集和测试集,为代入模型做准备。

In [54]:
from sklearn.model_selection import train_test_split
data['target'] = data['故障类型'].map(lambda x: 0 if x == 'ML' else 1)

problems = data['问题描述'].values
target = data.target.values

x_train, x_test, y_train, y_test, = train_test_split(
    problems, target, test_size=0.2, random_state=0)

len(y_train), len(y_test), len(x_train), len(x_test)
Out[54]:
(6607, 1652, 6607, 1652)
In [55]:
# 清理非中文字符
def clean_str(line):
    line.strip('\n')
    line = re.sub(r"[^\u4e00-\u9fff]", "", line)
    line = re.sub(
        "[0-9a-zA-Z\-\s+\.\!\/_,$%^*\(\)\+(+\"\')]+|[+——!,。?、~@#¥%……&*()<>\[\]::★◆【】《》;;=??]+", "", line)
    return line.strip()


# 加载停用词
with open('stopwords.txt',encoding='utf-8') as f:
    stopwords = [line.strip('\n') for line in f.readlines()]


def cut(data, labels, stopwords):
    result = []
    new_labels = []
    for index in tqdm.notebook.tqdm(range(len(data))):
        comment = clean_str(data[index])
        label = labels[index]
        # 分词
        seg_list = jieba.cut(comment, cut_all=False, HMM=True)
        seg_list = [x.strip('\n') for x in seg_list if x not in stopwords and len(x) > 1]
        if len(seg_list) > 1:
            result.append(seg_list)
            new_labels.append(label)
    # 返回分词结果和对应的标签
    return result, new_labels

# 分别对训练数据和测试数据分词
train_cut_result, train_labels = cut(x_train, y_train, stopwords)
test_cut_result, test_labels = cut(x_test, y_test, stopwords)

3.2 文本信息检索与挖掘

使用 TF-IDF 进行信息检索与数据挖掘。

TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF是词频(Term Frequency),IDF是逆文本频率指数(Inverse Document Frequency)。

一个词语在一篇文章中出现次数越多, 同时在所有文档中出现次数越少, 越能够代表该文章。

In [56]:
# TfidfVectorizer 传入原始文本
train_data = [' '.join(x) for x in train_cut_result]
test_data = [' '.join(x) for x in test_cut_result]

n_dim = 2000

# 数据的TF-IDF信息计算
# sublinear_tf=True 时生成一个近似高斯分布的特征,可以提高大概1~2个百分点
vectorizer = TfidfVectorizer(
    max_features=n_dim, smooth_idf=True, sublinear_tf=True)

# 对训练数据训练
train_vec_data = vectorizer.fit_transform(train_data)

# 训练完成之后对测试数据转换
test_vec_data = vectorizer.transform(test_data)
In [57]:
vectorizer.get_feature_names()[:10]
Out[57]:
['一侧', '一分钟', '一切正常', '一号', '一块', '一声', '一处', '一架', '一根', '一段']
In [58]:
# 输出的类别为 2
n_categories = 2
# 学习率过大会导致 loss 震荡
learning_rate = 0.001
# 损失函数
criterion = nn.CrossEntropyLoss()
# 迭代次数
epochs = 10
# 每次迭代同时加载的个数
batch_size = 100
In [59]:
class TxtDataset(Dataset):
    def __init__(self, VectData, labels):
        # 传入初始数据,特征向量和标签
        self.VectData = VectData
        self.labels = labels

    def __getitem__(self, index):
        # DataLoader 会根据 index 获取数据
        # toarray() 是因为 VectData 是一个稀疏矩阵,如果直接使用 VectData.toarray() 占用内存太大,勿尝试
        return self.VectData[index].toarray(), self.labels[index]

    def __len__(self):
        return len(self.labels)

# 线下内存足够大可以考虑增大 num_workers,并行读取数据
# 加载训练数据集
train_dataset = TxtDataset(train_vec_data, train_labels)
train_dataloader = DataLoader(train_dataset,
                              batch_size=batch_size,
                              shuffle=True,
                              num_workers=0
                              )
# 加载测试数据集
test_dataset = TxtDataset(test_vec_data, test_labels)
test_dataloader = DataLoader(test_dataset,
                             batch_size=batch_size,
                             shuffle=False,
                             num_workers=0
                             )

3.3 模型训练

使用“问题描述”文本数据向量化后作为模型输入,故障类型作为输出,也就是标注。

故障类型分为 乘客发现机组发现 两类,那么对于服务方来说,如果故障由乘客发现,那么故障多应发生在飞机飞行时,虽然危险程度不高,但是乘客的满意度会下降,对航司产生不良影响;如果由机组发现,那么一般出现在飞机未飞行并处在检查阶段时,严重程度较高,但是并非乘客发现,所以影响程度不大。

那么我们目的是,通过问题描述的文本数据关于故障类型建模,从而基于给定的故障描述,对其故障类型、影响程度以及严重程度进行预测和分析。

使用 PyTorch 构建神经网络模型,对训练集进行分批次训练,在迭代10次后,在测试集上的准确率平均达到91%。

In [60]:
class TxtModel(nn.Module):
    def __init__(self, input_size, output_size):
        super(TxtModel, self).__init__()
        self.classifier = nn.Sequential(
            nn.Linear(input_size, 256),
            nn.ReLU(inplace=True),
            nn.Dropout(),
            nn.Linear(256, 256),
            nn.ReLU(inplace=True),
            nn.Dropout(),
            nn.Linear(256, 128),
            nn.ReLU(inplace=True),
            nn.Dropout(),
            nn.Linear(128, 64),
            nn.ReLU(inplace=True),
            nn.Dropout(),
            nn.Linear(64, output_size)
        )

    def forward(self, x):
        output = self.classifier(x.double())
        return output.squeeze(1)
In [61]:
# 定义模型和优化器
model = TxtModel(n_dim, 2)
optimizer = torch.optim.Adam(model.parameters(), lr=learning_rate)

# 每两代衰减学习率
exp_lr_scheduler = lr_scheduler.StepLR(
    optimizer, step_size=int(epochs/2), gamma=0.1)
 
model = model.double()

# 保存准确度最高的模型
best_model = copy.deepcopy(model)
best_accuracy = 0.0

for epoch in range(epochs):
    exp_lr_scheduler.step()
    model.train()
    loss_total = 0
    st = time.time()
    # train_dataloader 加载数据集
    for data, label in tqdm_notebook(train_dataloader):
        output = model(data)
        # 计算损失
        loss = criterion(output, label)
        optimizer.zero_grad()
        # 反向传播
        loss.backward()
        optimizer.step()
        loss_total += loss.item()

    # 输出损失、训练时间等
    print('epoch {}/{}:'.format(epoch+1, epochs))
    print('training loss: {}, time resumed {}s'.format(
        loss_total/len(train_dataset), time.time()-st))

    model.eval()

    loss_total = 0
    st = time.time()

    correct = 0
    for data, label in test_dataloader:
        output = model(data)
        loss = criterion(output, label)
        loss_total += loss.item()

        _, predicted = torch.max(output.data, 1)
        correct += (predicted == label).sum().item()
    # 如果准确度取得最高,则保存准确度最高的模型
    if correct/len(test_dataset) > best_accuracy:
        best_model = copy.deepcopy(model)

    print('testing loss: {}, time resumed {}s, accuracy: {}'.format(
        loss_total/len(test_dataset), time.time()-st, correct/len(test_dataset)))
C:\Users\gzjgz\anaconda3\lib\site-packages\torch\optim\lr_scheduler.py:134: UserWarning: Detected call of `lr_scheduler.step()` before `optimizer.step()`. In PyTorch 1.1.0 and later, you should call them in the opposite order: `optimizer.step()` before `lr_scheduler.step()`.  Failure to do this will result in PyTorch skipping the first value of the learning rate schedule. See more details at https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate
  "https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate", UserWarning)
C:\Users\gzjgz\anaconda3\lib\site-packages\ipykernel_launcher.py:21: TqdmDeprecationWarning: This function will be removed in tqdm==5.0.0
Please use `tqdm.notebook.tqdm` instead of `tqdm.tqdm_notebook`
epoch 1/10:
training loss: 0.005012370547996999, time resumed 2.277116060256958s
testing loss: 0.003232979466030579, time resumed 0.30500173568725586s, accuracy: 0.9157762413576367
epoch 2/10:
training loss: 0.002508180254976636, time resumed 2.2808868885040283s
testing loss: 0.002166566053779425, time resumed 0.3015158176422119s, accuracy: 0.9208045254556882
epoch 3/10:
training loss: 0.0018614117367875395, time resumed 2.376117467880249s
testing loss: 0.0022800233097839155, time resumed 0.34206581115722656s, accuracy: 0.9151477058453803
epoch 4/10:
training loss: 0.0015869862511138052, time resumed 2.409557342529297s
testing loss: 0.0024105224604368354, time resumed 0.4635612964630127s, accuracy: 0.9138906348208674
epoch 5/10:
training loss: 0.001301949810802673, time resumed 2.652583599090576s
testing loss: 0.0025090605043526677, time resumed 0.37800097465515137s, accuracy: 0.9145191703331238
epoch 6/10:
training loss: 0.001297253308056652, time resumed 2.5186803340911865s
testing loss: 0.0025532930881013126, time resumed 0.30899906158447266s, accuracy: 0.9132620993086109
epoch 7/10:
training loss: 0.0012738925601471778, time resumed 2.9685378074645996s
testing loss: 0.002593191604954846, time resumed 0.3460395336151123s, accuracy: 0.912005028284098
epoch 8/10:
training loss: 0.0012343776215677058, time resumed 2.3082220554351807s
testing loss: 0.002659181132786543, time resumed 0.30903077125549316s, accuracy: 0.9094908862350722
epoch 9/10:
training loss: 0.0012118051633510667, time resumed 3.1031415462493896s
testing loss: 0.0027008090936013916, time resumed 0.3820016384124756s, accuracy: 0.9101194217473287
epoch 10/10:
training loss: 0.0011656346210758024, time resumed 5.113566875457764s
testing loss: 0.002705959506636554, time resumed 0.40999460220336914s, accuracy: 0.9101194217473287

总结

通过对数据的全面了解、深度挖掘以及建模,从多维度、多层次来解析机队可靠性故障报告文本数据;探究故障报告基于相关因子的分布和特征;利用神经网络、机器学习算法对文本数据关于故障类型建模,预测问题描述的故障类型。

不过,训练集的数据仅有6607条(较少),随着时间的推进,更多的数据涌入,会进一步提升模型的表现。并且需要在进一步对问题描述和排故措施的相关性和依赖程度进行探究,并且研究排故措施对于问题解决的执行效率和完成程度。


补充:排故措施分析

由于排故措施是针对问题描述的具体解决方案,之前所用的函数方法也可以沿用于此。

我们从2方面来分析:

  1. 关键词频率分析
  2. 文本相似度分析

1. 关键词频率分析

提取排故措施中的动词关键词

可以看出,文本中充分含有 更换、跳开关、操作、保留等动词。

提取关键词,并分析其在文本中的出现频率

In [62]:
get_key(data = data_copy,flag_ = 'v',col = '排故措施')
Out[62]:
Index(['更换', '开关', '操作', '保留', '参考', '判断', '执行', '防冰', '警示', '清除', '完成', '相关',
       '控制', '进行', '使用', '复位', '引气', '损伤', '手持', '安装', '防火', '接头', '熄灭', '转弯',
       '发现', '破损', '观察', '失速', '恢复', '增压', '消除', '放行', '飞行', '断开', '接近', '点火',
       '维修', '加温', '超标', '后续', '自检', '感应', '推迟', '参照', '保护', '继续', '修复', '放电',
       '过热', '位置', '询问', '探头', '修理', '探测', '抑制', '阅读', '转动', '无需', '啸叫', '对调',
       '保障', '停留', '加热', '着陆', '符合', '渗漏', '指示', '答复', '托管', '煮沸', '关闭', '充氧',
       '维护', '充至', '申请', '拆', '加水', '查询', '脱开', '靠背', '接通', '打压', '通道', '驾驶',
       '排放', '告警', '运行', '副驾驶', '处理', '接收', '倾斜', '扶手', '操纵', '损坏', '请求', '连接',
       '收放', '要求', '打磨', '查看'],
      dtype='object')
In [63]:
for key in ['更换','跳开关','操作','保留','参考','判断','执行','防冰','清除','完成','控制']:
    problem_df = findkeyword(data = data_copy, key = key,col = '排故措施')
    for col in problem_df.columns[:-2]:  
        plt.figure(figsize= [20,8])
        sns.countplot(x = col,data = problem_df,order = problem_df[col].value_counts().index)
        plt.xticks(rotation = 45)
        plt.title('各【{}】包含【{}】排故措施频数图'.format(col,key),fontsize=20)
        plt.ylabel('频数', fontsize=18)
        plt.xlabel(col, fontsize=18)
C:\Users\gzjgz\anaconda3\lib\site-packages\ipykernel_launcher.py:4: RuntimeWarning: More than 20 figures have been opened. Figures created through the pyplot interface (`matplotlib.pyplot.figure`) are retained until explicitly closed and may consume too much memory. (To control this warning, see the rcParam `figure.max_open_warning`).
  after removing the cwd from sys.path.

2. 关键词频率分析

核心:通过余弦相似度分析故障问题描述和排故措施的相关程度。

余弦相似度就是通过一个向量空间中两个向量夹角的余弦值作为衡量两个个体之间差异的大小。 余弦相似度的值在0到1之间,越大越说明二者相关程度高。

通过分析文本相似度,可以说明针对故障问题描述,对应的排故措施是否有效实施并且对症下药。

把相似度分为 低中高 三等,其中

  • $0 - 0.5$ 为
  • $0.5 - 0.75$ 为
  • $0.75 - 1$为
In [64]:
def stopwordslist(filepath):
    stopwords = [line.strip() for line in open(filepath, 'r', encoding='utf-8').readlines()]
    return stopwords


# 加载停用词
stopwords = stopwordslist("stopwords.txt")


def cosine_similarity(sentence1: str, sentence2: str) -> float:
    """
    :param sentence1: s
    :param sentence2:
    :return: 两句文本的相识度
    """
    
    jieba.load_userdict("dict.txt")
    seg1 = [word for word in jieba.cut(sentence1) if word not in stopwords]
    seg2 = [word for word in jieba.cut(sentence2) if word not in stopwords]
    word_list = list(set([word for word in seg1 + seg2]))#建立词库
    word_count_vec_1 = []
    word_count_vec_2 = []
    for word in word_list:
        word_count_vec_1.append(seg1.count(word))#文本1统计在词典里出现词的次数
        word_count_vec_2.append(seg2.count(word))#文本2统计在词典里出现词的次数


    vec_1 = np.array(word_count_vec_1)
    vec_2 = np.array(word_count_vec_2)
    #余弦公式


    num = vec_1.dot(vec_2.T)
    denom = np.linalg.norm(vec_1) * np.linalg.norm(vec_2)
    cos = num / denom
    sim = 0.5 + 0.5 * cos


    return sim
In [65]:
idx_low = []
idx_mid = []
idx_high = []
data_copy = data_copy.astype(str)
for i in tqdm.notebook.tqdm(range(len(data_copy))):
    sim = cosine_similarity(data_copy.loc[i,'问题描述'],data_copy.loc[i,'排故措施'])
    if sim > 0.75:
        idx_high.append(i)
    elif sim < 0.75 and sim > 0.5:
        idx_mid.append(i)
    else: 
        idx_low.append(i)
C:\Users\gzjgz\anaconda3\lib\site-packages\ipykernel_launcher.py:35: RuntimeWarning: invalid value encountered in true_divide
In [66]:
data_low = data_copy.loc[idx_low,['航司名称','机号','问题描述','排故措施']]
In [67]:
data_mid = data_copy.loc[idx_mid,['航司名称','机号','问题描述','排故措施']]
In [68]:
data_high = data_copy.loc[idx_high,['航司名称','机号','问题描述','排故措施']]
In [69]:
print("故障描述与排故措施文本相似度为【低】的共有【{}】条".format(data_low.shape[0]))
print("故障描述与排故措施文本相似度为【中】的共有【{}】条".format(data_mid.shape[0]))
print("故障描述与排故措施文本相似度为【高】的共有【{}】条".format(data_high.shape[0]))
故障描述与排故措施文本相似度为【低】的共有【2433】条
故障描述与排故措施文本相似度为【中】的共有【5372】条
故障描述与排故措施文本相似度为【高】的共有【454】条

补充:文本分析(自定义词典)

由于飞机故障的专业名词较多,造成普通分词方法会造成歧义,所以通过自定义词典,加入专业词语和专业名词。

比如:AMS信息、飞控不派遣、WATER FAULT、CVR/RIPS FAULT等

In [70]:
# 清理非中文字符
def clean_str(line):
    line.strip('\n')
    #line = re.sub(r"[^\u4e00-\u9fff]", "", line)
    #line = re.sub(
    #    "[0-9a-zA-Z\-\s+\.\!\/_,$%^*\(\)\+(+\"\')]+|[+——!,。?、~@#¥%……&*()<>\[\]::★◆【】《》;;=??]+", "", line)
    return line.strip()


# 加载停用词
with open('stopwords.txt',encoding='utf-8') as f:
    stopwords = [line.strip('\n') for line in f.readlines()]


def cut(data, stopwords):
    result = []
    new_labels = []
    jieba.load_userdict("dict.txt")
    for index in tqdm.notebook.tqdm(range(len(data))):
        comment = clean_str(data[index])
        # 分词
        #jieba.load_userdict("dict.txt")
        seg_list = jieba.cut(comment, cut_all=False, HMM=True)
        seg_list = [x.strip('\n') for x in seg_list if x not in stopwords and len(x) > 1]
        if len(seg_list) > 1:
            result.append(seg_list)
    # 返回分词结果和对应的标签
    return result

def flat(nums):
    res = []
    for i in nums:
        if isinstance(i, list):
            res.extend(flat(i))
        else:
            res.append(i)
    return res

res = flat(cut(data_copy['问题描述'],stopwords))
In [71]:
res
Out[71]:
['航后检查',
 '污水',
 '真空泵',
 '持续',
 '工作',
 '机组',
 '写本',
 '巡航',
 '阶段',
 '操纵台',
 '啸叫',
 '减小',
 '持续',
 '航后检查',
 '左主起',
 '轮舱',
 '密封件',
 '一处',
 '破损',
 '航前',
 '通完',
 '电后',
 'CAS',
 '蓝色',
 '信息',
 'FIRE',
 'SYS',
 'FAULT',
 'CMS信息',
 '复位',
 '跳开关',
 '无效',
 '3388',
 '飞机',
 '电瓶',
 '啸叫',
 '航材',
 '无件',
 '本机',
 '串主',
 '电瓶',
 '主蓄电池',
 '啸叫',
 '航后检查',
 '驾驶',
 '救生衣',
 '破损',
 '航后检查',
 '驾驶',
 '机组救生衣',
 '破损',
 '航前',
 '上电后',
 'CMS信息',
 'IOC',
 'FAILED',
 'WIRING',
 'NO',
 'IOC',
 'FMS',
 '12R',
 'BUS',
 'OUTPUT',
 '航前',
 '加油',
 '100kg',
 '加油',
 '活门',
 'close',
 '点亮',
 '航后',
 '发现',
 '左发后',
 '油池',
 '油管',
 '发动机',
 '机匣',
 '连接处',
 '挂油',
 '油迹',
 '航后检查',
 '发现',
 'CMS',
 '各有',
 '一段',
 '历史信息',
 'ANTI',
 'ICE',
 'BLD',
 'OVHT',
 'DET',
 'LOOP',
 'ANTI',
 'ICE',
 'LOOP',
 'OPEN',
 'ANTI',
 'ICE',
 'BLD',
 'OVHT',
 'DET',
 'LOOP',
 'ANTI',
 'ICE',
 'LOOP',
 'OPEN',
 '航后检查',
 '发现',
 '方向舵',
 '往下',
 '第三个',
 '静电放电器',
 '底座',
 '丢失',
 '航后检查',
 '发现',
 '方向舵',
 '往下',
 '第三个',
 '静电放电器',
 '丢失',
 '检查发现',
 '右主起',
 '轮舱',
 '密封件破损',
 '乘务员',
 '客舱',
 'PA',
 '声音',
 '时大时',
 '检查发现',
 '机组',
 '氧气压力',
 '机组',
 '写本',
 '起飞',
 '着陆',
 '滑跑',
 '过程',
 '前轮',
 '70Kt',
 '剧烈',
 '抖动',
 '伴随',
 '脚蹬',
 '剧烈',
 '抖动',
 '机组',
 '写本',
 '空中',
 '青色',
 '信息',
 'FIRE',
 'SYS',
 'FAULT',
 '航后检查',
 '发现',
 '主轮',
 '磨损',
 '超标',
 '轮舱',
 '密封件破损',
 '登机门',
 '警示带',
 '破损',
 '检查发现',
 '机组氧气',
 '检查发现',
 '内主',
 '磨损',
 '超标',
 '今日',
 '一段',
 'CMS',
 '历史信息',
 'FWD',
 'CARGO',
 'DOOR',
 'SENSOR',
 'FWD',
 'CARGO',
 'DOOR',
 'SENSOR',
 'ADJUSTMENT',
 'REQUIRED',
 '机组',
 '写本',
 'BLEED',
 'LEAK',
 '红色',
 '警告',
 '航后检查',
 '发现',
 'C座',
 '扶手',
 '破损',
 '驾驶舱门',
 '手柄',
 '航前检查',
 '发现',
 '废水',
 '状态',
 '板上',
 '琥珀色',
 'Water',
 'Fault',
 '指示灯',
 '亮起',
 'PRESSURE',
 'SWITCH',
 '灯亮',
 '航后检查',
 '一段',
 '历史信息',
 'TAWS',
 'FAULT',
 'REPORTED',
 '航后检查',
 '发现',
 '左侧',
 '轮舱',
 '密封件破损',
 '航后检查',
 '发现',
 'CMS',
 '历史',
 '故障',
 '信息',
 'ANTI',
 'ICE',
 'BLD',
 'OVHT',
 'DET',
 'LOOP',
 'ANTI',
 'ICE',
 'LOOP',
 'OPEN',
 '长沙',
 '虹桥',
 '飞机',
 '刹车',
 '滑出',
 '20',
 '公分',
 'CAS',
 'FLT',
 'CTRL',
 'NO',
 'DISPATCH',
 '伴随',
 'CMS',
 'RUD',
 'LOW',
 'PCU',
 'FAILED',
 'RUD',
 'LOW',
 'PCU',
 'FAULT',
 'CMS',
 'PACE',
 'FAILED',
 'ACE',
 'FAULT',
 '双发',
 '停车',
 '启动',
 'APU',
 '电子',
 'BIT',
 '清除',
 'NVM',
 '故障',
 '信息',
 '清除',
 '长沙',
 '虹桥',
 '飞机',
 '空中',
 '信息',
 '复现',
 '虹桥',
 '电子',
 'BIT',
 '清除',
 'NVM',
 '故障',
 '信息',
 '清除',
 '续航',
 '通电',
 '检查',
 'ACTIVE',
 'CMS信息',
 'ANTI',
 'ICE',
 'BLD',
 'OVHT',
 'DET',
 'LOOP',
 'FAILED',
 'WIRING',
 'ANTI',
 'ICE',
 'LOOP',
 'OPEN',
 '检查发现',
 '机长',
 '侧耳',
 '海绵',
 '损坏',
 '9.29',
 '机组',
 '成都',
 '上饶',
 '巡航',
 '阶段',
 '上饶',
 '舟山',
 '进近',
 '阶段',
 '右发',
 'N1',
 '振动',
 '瞬时',
 '3.9',
 '机组',
 '写本',
 '驾驶舱门',
 '门锁',
 '故障',
 '机组',
 '执行',
 'EU6674',
 '舟山',
 '上饶',
 '航班',
 '下降时',
 'P25',
 'CDU',
 '显示',
 'GNSS',
 'NOT',
 'AVAILABLE',
 '飞机',
 'LNAV1',
 '接通',
 '情况',
 '指令',
 '偏转',
 '机组',
 '制止',
 '10',
 '秒钟',
 'GPS',
 '恢复',
 '工作',
 '航后检查',
 '发现',
 '机腹',
 '下方',
 '排放',
 '杆漏',
 '液压油',
 '航后',
 '发现',
 '历史信息',
 'PASS',
 'ENTR',
 'DOOR',
 'SENSOR',
 'ADJUSTMENT',
 'REQUIRED',
 '航后检查',
 '发现',
 '登机门',
 '临近',
 '地板',
 '标志灯',
 '翘起',
 '机组',
 '写本',
 '燃油',
 '加油口盖',
 '锁链',
 '脱落',
 '检查发现',
 '方向舵',
 'PCU',
 '插头',
 'P1',
 '2743B',
 '损坏',
 '机组',
 '反馈',
 '南宁',
 '成都',
 '航段',
 '空中',
 'RTU1',
 'COM1',
 '频率',
 '跳频',
 '现象',
 '重置',
 '频率',
 '机组',
 '反馈',
 '成都',
 '双发',
 '启动',
 '滑出',
 '蓝色',
 'CAS信息',
 'YD',
 'FAULT',
 '机组',
 '重置',
 'YD',
 '电门',
 '后续',
 '右主起',
 '门框',
 '橡胶板',
 '磨损',
 '超标',
 '航前检查',
 '发现',
 'CAS信息',
 'CVR',
 'RIPS',
 'FAULT',
 '航前',
 '乘务员',
 '废水',
 '状态',
 '状态',
 'WATER',
 'FAULT',
 '飞机',
 '滑出',
 'CAS',
 'VANE',
 'HEATER',
 'FAIL',
 'CMS',
 'SPC2',
 'RIGHT',
 'VANE',
 'HEATER',
 'FAIL',
 '今日',
 '哈尔滨',
 '黑河',
 '航段',
 '两次',
 'RA',
 '黄色',
 '警告',
 '左右侧',
 'PFD',
 '无线电',
 '高度',
 '显示',
 '相差',
 '100ft',
 '伴随',
 'CAS信息',
 'EFIS',
 'MISCOMPARE',
 '短停',
 'CMS信息',
 'FOCU',
 'FAILED',
 'WIRING',
 'ENG',
 'FIRE',
 'WARNING',
 'DISCRETE',
 'FAILED',
 'WIRIN',
 '机组',
 'CDU2',
 '按键',
 '卡阻',
 '航后检查',
 '发现',
 '右侧',
 '副翼',
 '内侧',
 '放电',
 '脱胶',
 '机组',
 'FCP',
 '内部',
 '导光板',
 '不亮',
 '机组',
 '氧气压力',
 '机组',
 '速度',
 '0.75',
 '高度表',
 'PFD1',
 '34100FT',
 '10390M',
 'PFD2',
 '34280FT',
 '10445M',
 'ISI',
 '34310FT',
 '第一部',
 'IAS',
 '258kt',
 '第二部',
 'IAS',
 '261ft',
 '高度表',
 '误差',
 '较大',
 '检查',
 '管制',
 '第一部',
 '指示',
 '正确',
 '下降',
 '高度表',
 '误差',
 '200FT',
 'EIFS',
 '警告',
 '信息',
 'ALT',
 '琥珀色',
 '警告',
 '检查发现',
 '主起落架',
 '轮舱',
 '密封件破损',
 '超标',
 '机组',
 'GNSS',
 'NOT',
 'AVAILABEL',
 '启动',
 '瞬间',
 '显示',
 '左发',
 '引气',
 '故障',
 '信息',
 '闪现',
 '消失',
 '航前检查',
 '发现',
 '水系统',
 '面板',
 'WATER',
 'FAULT',
 '故障灯',
 'WSIC',
 '面板',
 'LEVEL',
 'SENSER',
 '故障灯',
 '航后检查',
 '发现',
 'CAS信息',
 'FLT',
 'CTRL',
 'NO',
 'DISPATCH',
 '航后检查',
 '发现',
 'CMS信息',
 'GCUA',
 'EXT',
 'PWR',
 'PHASE',
 'SEQUENCE',
 'WRG',
 'FAULT',
 '检查发现',
 '第三',
 '观察员座椅',
 '安全带',
 '破损',
 '试车',
 '检查发现',
 '左发',
 '上部',
 '反推锁作动筒',
 '下部',
 '油迹',
 '航前检查',
 '发现',
 '水系统',
 '面板',
 'WATER',
 'FAULT',
 '故障灯',
 'WSIC',
 '面板',
 'COMPRESSOR',
 'LEVEL',
 'SENSOR',
 '故障灯',
 '机组',
 '写本',
 'CVR',
 'RIPS',
 'FAULT',
 '航后',
 '打压',
 'CMS',
 'ACTIVE',
 '信息',
 'BCU1',
 'MAINTENANCE',
 'INTERNAL',
 'IB',
 'BCU',
 'FAULT',
 '航后检查',
 '发现',
 '左侧',
 '轮舱',
 '密封件破损',
 '航后检查',
 '发现',
 '右侧',
 '应急',
 '撤离',
 '地板',
 '发光',
 '标志',
 '插槽',
 '损坏',
 '机组',
 '3328',
 '飞机',
 '执行',
 '南宁',
 '成都',
 '航班',
 '高度',
 '7000',
 '米左右',
 '显示器',
 '持续',
 '半分钟',
 '风向',
 '风速',
 '跳变',
 '超过',
 '180',
 '风速',
 '差值',
 '40KT',
 '而此',
 '期间',
 '感觉',
 '风速',
 '风向',
 '平稳',
 '检查发现',
 '机长',
 '侧侧',
 '阅读',
 '灯不亮',
 '济南',
 '成都',
 '航段',
 '空中',
 'FIRE',
 'SYS',
 'FAULT',
 'EI',
 'CAS信息',
 '航后检查',
 '伴随',
 'ENG',
 'FIRE',
 'WARNING',
 'DISCRETE',
 'FAILED',
 'WIRING',
 'CMS信息',
 '航后检查',
 '发现',
 '历史',
 'CMS信息',
 'ENGINE',
 'FUEL',
 'DIST',
 'SYSTEM',
 'MAINTENANCE',
 'FUEL',
 'STRAINER',
 'TRANSDUCER',
 'FAIL',
 '航后',
 '发现',
 '乘务',
 '面板',
 'WASTE',
 'FAULT',
 '点亮',
 '检查',
 'LCM',
 'BLOWER',
 'OVERHEAT',
 '点亮',
 '检查',
 '厕所',
 '冲洗',
 '复位',
 'LCM',
 '跳开关',
 '故障灯',
 '消失',
 '按压',
 '任一',
 '厕所',
 '冲洗',
 '按钮',
 '故障灯',
 '航前',
 '通电',
 '发现',
 '水系统',
 '面板',
 'WATER',
 'FAULT',
 '故障灯',
 'WSIC',
 '面板',
 'LEVEL',
 'SENSER',
 '故障灯',
 '航后检查',
 'CMS',
 '历史',
 '故障',
 '信息',
 'FWD',
 'CARGO',
 'DOOR',
 'SENSOR',
 'FWD',
 'CARGO',
 'DOOR',
 'SENSOR',
 'ADJUSTMENT',
 'REQUIRED',
 '航后检查',
 'CMS',
 '历史',
 '故障',
 '信息',
 'AFT',
 'CARGO',
 'DOOR',
 'SENSOR',
 'AFT',
 'CARGO',
 'DOOR',
 'SENSOR',
 'ADJUSTMENT',
 'REQUIRED',
 '机组',
 '氧气压力',
 '起飞',
 '离地',
 '收轮',
 'LAND',
 'GEAR',
 'WO',
 'ARJ00087',
 '一发',
 '风扇罩',
 '线缆',
 '支架',
 '背面',
 '塑料片',
 '脱落',
 '修复',
 '方案',
 '电子',
 '继电器',
 '设备',
 '架上',
 'S5',
 '2116',
 '继电器',
 'X1',
 '孔内',
 '导线',
 '脱出',
 '左大翼',
 '燃油箱',
 '521BB',
 '盖板',
 '疑似',
 '燃油',
 '渗漏',
 '检查发现',
 '液压系统',
 '排气泄压阀',
 '渗漏',
 'P21',
 '面板',
 '后部',
 'B7',
 '2407',
 '汇流条',
 '输入',
 '孔内',
 '导线',
 '断丝',
 '超标',
 'P21',
 '面板',
 '后部',
 'B7',
 '2407',
 '汇流条',
 '输出',
 'A2',
 'C3',
 '孔内',
 '导线',
 '脱出',
 'P21',
 '面板',
 '后部',
 'B7',
 '2407',
 '汇流条',
 '损坏',
 '机组',
 '氧气瓶',
 '压力',
 '左侧',
 '失速保护计算机',
 '风标',
 '烧蚀',
 '驾侧',
 '手持话筒',
 '故障',
 '第三',
 '观察员',
 '手持话筒',
 '故障',
 '检查发现',
 '乘务',
 '座椅',
 '手电筒',
 '故障',
 '航后检查',
 '发现',
 '左主起',
 '轮舱',
 '密封件',
 '损坏',
 '航后检查',
 '发现',
 '成都',
 '上饶',
 '一段',
 '历史信息',
 'LEFT',
 'BLEED',
 'OVHT',
 'DET',
 'LOOP',
 'LEFT',
 'BLEED',
 'LOOP',
 'OPEN',
 '航后检查',
 '发现',
 '登机门',
 '警示带',
 '破损',
 '航前',
 '上电后',
 '检查发现',
 '废水',
 '状态',
 '板上',
 'Water',
 'Fault',
 '指示灯',
 'WSIC',
 '面板',
 'PRESSURE',
 'SWITCH',
 '故障灯',
 '航后',
 '收到',
 '机组',
 '汇报',
 '机组',
 '长沙',
 '成都',
 '航段',
 '飞机',
 '跑道',
 'VHF1',
 '通讯',
 '不畅',
 '起飞',
 '航前',
 '发现',
 '水系统',
 '故障',
 '水系统界面控制器',
 '显示',
 'PRESSURE',
 'SWITCH',
 '航前',
 '加水',
 '检查发现',
 '废水',
 '状态',
 '板上',
 'Water',
 'Fault',
 '指示灯',
 '常亮',
 'WSIC',
 '面板',
 'PRESSURE',
 'SWITCH',
 '故障灯',
 '济南',
 '哈尔滨',
 '航段',
 '空中',
 '青色',
 'CAS信息',
 'PACK',
 'FAULT',
 '落地',
 '检查',
 'CMS',
 '历史信息',
 'ECS',
 'FAILED',
 'WIRING',
 'FCV1',
 'FAIL',
 'OPEN',
 '机组',
 '写本',
 '双发',
 '大功率',
 '工作',
 '噪音',
 'N1',
 '振动',
 '2.4',
 '航后检查',
 '发现',
 '右主起',
 '轮舱',
 '密封件破损',
 '航后检查',
 '登机门',
 '警示带',
 '损坏',
 '机组',
 '写本',
 '右侧',
 'DCP',
 '角度',
 '距离',
 '旋钮',
 '粘连',
 '机组',
 '写本',
 '飞机',
 '高度',
 '8900ft',
 'CAS信息',
 'AT',
 'FAIL',
 'AT',
 '自动',
 '断开',
 '航后检查',
 '发现',
 '登机门',
 '临近地板出口标志',
 '固定',
 '锁扣',
 '损坏',
 '航前',
 ...]
In [72]:
plt.figure(figsize= [30,20])
data_ = pd.DataFrame(Counter(res).most_common(),columns = ['关键词','频数'])[:100]
print('故障信息关键词(中英文)共有 【{}】 条数据(自定义词典)'.format(len(pd.DataFrame(Counter(res).most_common(),columns = ['关键词','频数']))))
sns.barplot(x = '关键词',y = '频数', data = data_)
plt.xticks(rotation = 90, fontsize = 15)
plt.ylabel('频数', fontsize=22)
plt.xlabel('关键词', fontsize=22)
plt.title('故障信息关键词(中英文)频数图(自定义词典)Top 100',fontsize = 30)
故障信息关键词(中英文)共有 【5964】 条数据(自定义词典)
Out[72]:
Text(0.5, 1.0, '故障信息关键词(中英文)频数图(自定义词典)Top 100')

英文故障文本分析

故障描述经常出现英文,比如:FAULT、FAILED、SYSTEM等,许多直接表示了故障的发生类型或形式。

现提取英文文本并分析出现频率。

In [73]:
def find_unchinese(file):
    pattern = re.compile(r'[\u4e00-\u9fa5]')
    unchinese = re.sub(pattern,"",file)
    unchinese = re.sub(
       "[-\s+\.\!\_,$%^*\(\)\+(+\"\'“”)]+|[+——!,。?、~@#¥%……&*()<>\[\]::★◆【】《》;;=??]+", " ", unchinese)
    if len(unchinese) > 1:
        return unchinese
In [74]:
def unchinese_freq(data,col,keyword,topK):
    tmp = data[col].apply(find_unchinese).dropna()
    tmp = tmp[tmp.str.contains(keyword)]
    
    list_ = []
    for txt in tmp:
        list_.append(txt[:txt.rfind(keyword)+len(keyword)])
    return pd.DataFrame(Counter(list_).most_common(),columns = ['英文关键词','频数'])[:topK]
In [75]:
unchinese_freq(data = data_copy, col = '问题描述', topK = 20, keyword = 'FAULT')
Out[75]:
英文关键词 频数
0 CAS CVR/RIPS FAULT 54
1 CVR/RIPS FAULT 26
2 CMS TW LRU OK/INFO TAWS FAULT 26
3 WATER FAULT 25
4 CVR/RIPS FAULT 21
5 CMS TAWS FAULT 20
6 CMS WXRM FAILED INTERNAL FAULT 20
7 / WATER FAULT 14
8 CAS FIRE SYS FAULT 12
9 WATER FAULT 10
10 CMS TW TAWS FAULT 9
11 CAS CVR/RIPS FAULT 8
12 CAS CVR/RIPS FAULT 8
13 CASCVR/RIPS FAULT 8
14 TW LRU OK/INFO TAWS FAULT 8
15 CMS TW LRU OK/INFO TAWS FAULT 8
16 EICAS CVR/RIPS FAULT 7
17 FAULT 7
18 WATER FAULT 7
19 CAS WING A/I FAULT 7
In [76]:
unchinese_freq(data = data_copy, col = '排故措施', topK = 20, keyword = 'FAULT')
Out[76]:
英文关键词 频数
0 FIM38 33 00 810 803 FAULT 37
1 FIM38 33 00 FAULT 10
2 FAULT 8
3 FAULT 6
4 CMS TAWS FAULT 5
5 FIM38 33 00 810 803WSIC FAULT 4
6 WSIC FAULT 3
7 CMS TW LRU OK/INFO TAWS FAULT 2
8 WSICFAULT 2
9 PRESSURE SWITCH FAULT 2
10 FIM38 33 00WSIC FAULT 2
11 1 CAS WING A/I FAULT CAS WING A/I DEGRADE 2 ... 2
12 ①1 CAS FLT CTL NO DISPATCH CMS HS ACE FAILED... 1
13 EM72 00 00 810 595 FADEC CASCMS ECPP9 P10 FAD... 1
14 CMS APU FADEC APU DOOR FAULT 1
15 MPP38 13 00 WSIC LEVEL SENSOR FAULT RESET FAULT 1
16 CMS CMS HS ACE FAILED COPILOT PITCH TRIM SW F... 1
17 EICAS WING A/I FAULT 1
18 CVR/RIPS FAULT 1
19 ① RTO AUTOBREAK FAIL CAS BCU1 INTERNAL IB BC... 1

%E6%84%9F%E8%B0%A2%E9%98%85%E8%AF%BB%E7%88%B1%E5%BF%83%E6%96%87%E6%9C%AB%E5%8A%A8%E6%80%81%E5%88%86%E5%89%B2%E7%BA%BF%E5%88%86%E9%9A%94%E7%AC%A6.gif