先廢話:
做運維的,居然被資源統計搞得頭疼眼瞎的,也是日了狗了。遂搞了個這個,化兩個人一下午都搞不完的東西為一小時之內,考慮到資料出來了還要修改啥的,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,找到 檢視 單擊進去。進去之後就看到了巨集計算介面。如圖所示 然後我們把下面這些巨集計算的 複製進去,然後找到工具欄上面的...