精品区域以及营业厅站点告警筛选-用到pandas,csv等模块

2019-08-08  本文已影响0人  余生还长你别慌

​ 输入11区的站点信息和所有的告警信息两个excel文件,通过比对'网元北向标志'和前面两个文件中的网元id,筛选出11区和营业厅的站点告警,写入'精品区域告警统计.csv'和'6大营业厅告警统计.csv'。主函数主要是引用函数生成两个告警统计,然后用前面写好的fm_filter模块和函数处理这两个告警统计,最后形成告警统计表。ps:中间的time模块引用加入了时间结尾的不同的文件,方便记录。

# -*- encoding=UTF-8 -*-
__author__ = 'wjj1982'
__date__ = '2019/7/12 21:39'
__product__ = 'PyCharm'
__filename__ = 'test'

import pandas as pd
import csv
import os
import fm_filter1
import time


'''该函数功能为,输入11区的站点信息和所有的告警信息两个excel文件,
通过比对'网元北向标志'和前面两个文件中的网元id,筛选出11区和营业厅的站点告警,写入'精品区域告警统计.csv'和'6大营业厅告警统计.csv'''
def fm_choose(filename_11qu, filename_suoyou):
    if filename_11qu == '精品区域场景路线及规划站点3.2-精品11区站点.xlsx':
        filename_11qu = open(filename_11qu, 'rb')
        pd_csv_11qu = pd.read_excel(filename_11qu, sheet_name='汇总')
        fm_code = 'GnodeBID'
        filename_out = '精品区域告警统计.csv'
    else:
        filename_11qu = open(filename_11qu, 'rb')
        pd_csv_11qu = pd.read_excel(filename_11qu)
        fm_code = '站点ID'
        filename_out = '6大营业厅告警统计.csv'
    filename_suoyou = open(filename_suoyou, 'rb')
    pd_csv_suoyou = pd.read_csv(filename_suoyou)
    filename_11qu.close()
    filename_suoyou.close()

    filename_11qu_suoyou = open(filename_out, 'a', newline='')
    wf1 = csv.writer(filename_11qu_suoyou)
    wf1.writerow(pd_csv_suoyou.columns)

    for i in range(0, pd_csv_suoyou.shape[0]):
        if pd_csv_suoyou.iloc[i]['网元北向标志'] in list(pd_csv_11qu[fm_code].values):
            wf1.writerow(pd_csv_suoyou.iloc[i])
    filename_11qu_suoyou.close()


if __name__ == '__main__':
    filename_jingpinquyu = '精品区域场景路线及规划站点3.2-精品11区站点.xlsx'
    filename_yingyeting = '6大营业厅站点清单.xlsx'
    filename_suoyou = '当前告警_所有.csv'
    fm_choose(filename_jingpinquyu, filename_suoyou)
    fm_choose(filename_yingyeting, filename_suoyou)

    now = time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime(time.time()))
    filename_out1 = '精品区域告警统计_' + now + r'.csv'
    filename_out2 = '6大营业厅告警统计_' + now + r'.csv'

    # 该模块和函数为前面日记中的fm_filter,筛选站点告警并写入多个sheet的。
    fm_filter1.fm_filter('精品区域告警统计.csv', filename_out1)
    fm_filter1.fm_filter('6大营业厅告警统计.csv', filename_out2)

    if os.path.exists('精品区域告警统计.csv'):
        os.remove('精品区域告警统计.csv')
    if os.path.exists('6大营业厅告警统计.csv'):
        os.remove('6大营业厅告警统计.csv')
上一篇 下一篇

猜你喜欢

热点阅读