多excel匹配合併成為一張excel表

2021-09-02 04:55:06 字數 1244 閱讀 3756

先廢話:

做運維的,居然被資源統計搞得頭疼眼瞎的,也是日了狗了。遂搞了個這個,化兩個人一下午都搞不完的東西為一小時之內,考慮到資料出來了還要修改啥的,1h足夠了。ok,進入正題。

工具:jupiter notebook

需要的包:pandas

以下為正文:

1、導包

import pandas as pd
2、讀取**:

df = pd.read_excel("虛擬機器資源統計報表.xls",sheet_name='xx表')
df為主表,大多數字段(虛擬機器名稱、cpu利用率等)裡面都有,缺少的字段(申請時間)在df_表.

df_表為補充表。我對補充表做了資料處理:將多個標籤合併為乙個,其時間由新->舊。。。。。。需要注意的是,當匹配多個結果,我選擇查詢到的第乙個結果,即最新的結果

3、建立自己的**mydf,用來儲存最終結果

# 把需要的字段拿出來

mydf = pd.dataframe(columns = ["虛擬機器名稱", "cpu配置(核)", "cpu使用率(%)", "子系統", "申請時間"])

4、把主表df能用的資料先考到最終表mydf中

mydf["虛擬機器名稱"]=df['虛擬機器名稱']

mydf["cpu配置(核)"]=df['cpu配置(核)']

mydf["cpu使用率(%)"]=df['cpu使用率(%)']

mydf["子系統"]=df['子系統']

5、合併**

# 合併兩張表,為主表缺少的字段「申請時間」字段賦值

for i in mydf["虛擬機器名稱"]:

# a型別為series,series型別包括index和values兩部分

a=df_["虛機申請時間(必填)"][df_["虛機名稱"] == i]

b=a.values #返回乙個多維陣列numpy物件

if(len(b)>0):

mydf["申請時間"][mydf['虛擬機器名稱'] == i] = b[0]

else:

mydf["申請時間"][mydf['虛擬機器名稱'] == i] = "" #沒查到的都置空

6、資料匯出

mydf.to_excel("mydf.xls") #匯出資料到excel檔案
7、結果很驚喜~

多個EXCEL檔案合併成乙個

python的numpy處理起來會比較方便,有空實現一下,這裡是excel內部 的方式 合併方法如下 1.需要把多個excel表都放在同乙個資料夾裡面,並在這個資料夾裡面新建乙個excel。如圖所示 2.用microsoft excel開啟新建的excel表,並右鍵單擊sheet1,找到 檢視 單擊...

如何快速把多個excel表合併成乙個excel表

有這麼一種情況,就是我們有很多張excel,而且excel表裡面的公式基本一樣,我們就想快速的把這些excel合併在一起,意思在合併在乙個excel頁面,這樣可以方便我們分析和統計,其實利用excel表的巨集計算就可以實現。下面我們就來一起解決這個問題。找到工具欄上面的 執行 下的 執行子過程 使用...

如何快速把多個excel表合併成乙個excel表

我們需要把多個excel表都放在同乙個資料夾裡面,並在這個資料夾裡面新建乙個excel。如圖所示 用microsoft excel開啟新建的excel表,並右鍵單擊sheet1,找到 檢視 單擊進去。進去之後就看到了巨集計算介面。如圖所示 然後我們把下面這些巨集計算的 複製進去,然後找到工具欄上面的...