python讀寫excel數據–pandas詳解
一、讀寫excel數據
利用pandas可以很方便的讀寫excel數據
1.1 讀:
data_in = pd.read_excel('M2FENZISHI.xlsx')
1.2寫:
首先要創建數據框
# example df = pd.DataFrame({'A':[0,1,2]}) writer = pd.ExcelWriter('test.xlsx') #name of excel file df.to_excel(writer, sheet_name='Sheet1') # write writer.save() # save
二、舉例
2.1 要求
這個例子稍微有點復雜,隻看讀和寫的部分就可以瞭。
例子要實現的目標為:有一個excel文件,如下:
現在要將裡面的化學符號中數字和字母分開,得到如下結果
2.2 實現
由於化學符號裡面有數字和字母,要提取數字或者字母首先想到的是正則表達式re模塊。
在讀取時由於我們已經將第一列命名data,因此pandas可以直接隻讀這一列的提名。
讀取數字可以使用re.compile實現,如:
下面是完整實現的代碼
import numpy as np import re import pandas as pd data_in = pd.read_excel('M2FENZISHI.xlsx')['data'] #load data print(data_in.shape) length = len(data_in) # length pattern = re.compile(r'\d+') # find number num_out = [] for i in range(length): temp = pattern.findall(data_in[i]) # find number int_num = list(map(int,temp)) num_out.append(int_num) num_out = np.array(num_out) print(num_out.shape) # writer data to excel df = pd.DataFrame({'C': num_out[:, 0], 'H': num_out[:, 1], 'O': num_out[:, 2], 'N': num_out[:, 3], 'P': num_out[:, 4], 'S': num_out[:, 5]}) writer = pd.ExcelWriter('test.xlsx') # name of the file df.to_excel(writer, sheet_name='Sheet1') writer.save()
結果如下:
總結
本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!
推薦閱讀:
- 教你如何把Python CSV 合並到多個sheet工作表
- python使用pandas讀寫excel文件的方法實例
- python pandas合並Sheet,處理列亂序和出現Unnamed列的解決
- 基於Python實現文本文件轉Excel
- python讀取文件夾中圖片的圖片名並寫入excel表格