[Pandas]利用Pandas處理excel數據


Python 處理excel的第三包有很多,比如XlsxWriterxlrd&xlwtOpenPyXLMicrosoft Excel API等,最后綜合考慮選用了Pandas。

Pandas 是基於NumPy 的一種工具,該工具是為了解決數據分析任務而創建的。Pandas 納入了大量庫和一些標准的數據模型,提供了高效地操作大型數據集所需的工具。pandas提供了大量能使我們快速便捷地處理數據的函數和方法。你很快就會發現,它是使Python成為強大而高效的數據分析環境的重要因素之一。pandas不但可以讀取excel中數據還可以修改excel數據以及生成excel文件。

1.抽取excle中數據,將數據以JSON格式輸出

 1 # -*- coding: utf-8 -*-
 2 import pandas as pd
 3 import os
 4 import json
 5 
 6 # 提取excel表格中數據,將其轉換成dateframe類型
 7 os.chdir('excel文件地址')
 8 
 9 invoice_data = pd.read_excel('./Invoice_data_Demo.xls', header=0, encoding='utf8')
10 
11 sheet_list = []
12 # 取出excel表頭
13 sheet_head = list(invoice_data.columns)
14 sheet_list.append(sheet_head)
15 # 取出excel中每一行數據
16 for i in range(0, len(invoice_data)):
17     data_line = list(invoice_data.loc[i])
18     data_line = [str(i) for i in data_line]
19     sheet_list.append(data_line)
20 print(sheet_list)
21 
22 data_l = json.dumps(sheet_list, ensure_ascii=False)
23 print(data_l)

2.生成excel/csv文件

 1 # -*- coding: utf-8 -*-
 2 
 3 import pandas as pd
 4 
 5 a = ['a','b','c']
 6 b = [1,2,3]
 7 dit = {'char':a, 'num':b}
 8 file_path = r'./output.xlsx'
 9 writer = pd.ExcelWriter(file_path)
10 df = pd.DataFrame(dit)
11 # columns參數用於指定生成的excel中列的順序
12 df.to_excel(writer, columns=['char','num'], index=False,encoding='utf-8',sheet_name='Sheet')
13 writer.save()
14 
15 # 生成csv文件
16 df.to_csv(r'./1.csv',columns=['char','num'],index=False,sep=',')

 

掃碼關注公眾號【雲將數據】,更多大數據及人工智能領域信息!

 

關注公眾號

免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2023 CODEPRJ.COM