【数据分析】:xlwt基础:excel存取读写

版权声明:转载请联系博主。 https://blog.csdn.net/sunyaowu315/article/details/81982308

1 openpyxl

from openpyxl import load_workbook   #excel文件读写模块
    '''excel文件读写模块'''
    def get_excel(self,indata,sheetname,row_add,col_add):
        # 将数据和字段名写入excel的函数
        ds1 = indata.copy()
        #加载文件
        #激活sheet页
        #workbook = load_workbook(_path + '\日报数据.xlsx')
        worksheet = workbook.get_sheet_by_name(sheetname)
        #将数据循环写入excel的每个单元格中   
        for row in range(ds1.shape[0]):
            for col in range(ds1.shape[1]):
                worksheet.cell(row = row + row_add, column = col + col_add).value = ds1.values[row][col]
        #返回生成的excel
        #workbook.save(_path + '\日报数据.xlsx')      

2 xlwt

import xlwt
import xlsxwriter
    def data_query_description(self,num,name):
        data = pd.read_excel(_path +'\data\%s.xlsx'%name[5])
        worksheet1 = workbook.add_worksheet('query_data_report')
        worksheet1.set_column('A:B',50)
        a = ['通讯录信息','运营商信息','通话记录','通话记录']
        b = ['phone_counts','voice_counts','tel_5_counts','emer_in_voice']
        c = ['开通通讯录权限','开通运营商信息权限','有通话记录','与紧急联系人存在通话记录']
        data_count = []
        m = 0
        for i,j,n in zip(a,b,c):
            _p = len(data)
            _q = len(data[data[j]>0])
            data_count.append(_q)
            d,e = '爬取%i数据共%s条,其中有效数据共%i条' %(num,i,_q),'说明用户%s的比例为:%.2f%%' %(n,_q/_p*100)
            print(d,e)  
            worksheet1.write(m,0,d)#写入excel报告
            worksheet1.write(m,1,e)#写入excel报告
            time.sleep(0)       
            m += 1
            print('-----next-----')
        time.sleep(0) 
        d = '开通运营商权限的%i个用户中,有过通话记录的为%i,占比%.2f%%'   %(data_count[1],data_count[2],data_count[2]/data_count[1]*100) 
        print(d)  
        e = '有过通话记录的%i个用户中,与紧急联系人通话的为%i,占比%.2f%%'   %(data_count[2],data_count[3],data_count[3]/data_count[2]*100) 
        print('-----next-----')
        print(e)          
        print('Bingo!')
        worksheet1.write(m + 1,0,d)#写入excel报告
        worksheet1.write(m + 2,0,e)#写入excel报告
        self.data_query_show(num,data,name,worksheet1) 
        workbook.close() #关闭excel文件
        return data

3 openpyxl

猜你喜欢

转载自blog.csdn.net/sunyaowu315/article/details/81982308