成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

盤點打工人必備的十個Python自動化腳本

開發 前端
大家在職場辦公中是否遇到下面的問題?Excel表格滿天飛,處理起來很不容易;每個月郵件轟炸,逐個修改抄送名單到眼睛發酸;加班到深夜,卻還有很多分析報告未完成,等等場景。

大家在職場辦公中是否遇到下面的問題?Excel表格滿天飛,處理起來很不容易;每個月郵件轟炸,逐個修改抄送名單到眼睛發酸;加班到深夜,卻還有很多分析報告未完成,等等場景。

如果你遇到上面的問題,那么恭喜你已經成為一個合格的打工人,如何解決這些問題,就是本節內容的核心,本節使用Python盤點十個在辦公場景中使用最多的腳本,幫你提高工作效率。

首先使用Python中的Faker庫生成一個包含員工信息的模擬數據集,字段為中文字段,包括員工編號、姓名、部門、工資、入職日期、郵箱等,這個案例數據集用于本節的代碼演示。

import pandas as pd
import numpy as np
from faker import Faker


# 初始化Faker,支持中文
fake = Faker("zh_CN")


# 生成100條員工數據
data = {
    "員工編號": range(1, 101),
    "姓名": [fake.name() for _ in range(100)],
    "部門": np.random.choice(["人力資源部", "財務部", "信息技術部", "銷售部", "市場部"], 100),
    "工資": np.random.randint(3000, 10000, 100),
    "入職日期": [fake.date_between(start_date="-5y", end_date="today") for _ in range(100)],
    "郵箱": [fake.email() for _ in range(100)],
}


# 創建DataFrame
df = pd.DataFrame(data)


# 保存為Excel文件
df.to_excel("員工數據.xlsx", index=False)

1.數據清洗與格式轉換

將入職日期格式化為 YYYY-MM-DD,并刪除工資低于5000的記錄,用于標準化數據格式,清理無效數據,手動修改日期格式和刪除記錄效率低,容易出錯。

import pandas as pd


# 讀取數據
df = pd.read_excel("員工數據.xlsx")


# 格式化日期
df["入職日期"] = pd.to_datetime(df["入職日期"]).dt.strftime("%Y-%m-%d")


# 刪除工資低于5000的記錄
df = df[df["工資"] >= 5000]


# 保存清洗后的數據
df.to_excel("清洗后的員工數據.xlsx", index=False)

2.按部門拆分Excel文件

將員工數據按部門拆分為多個Sheet,方便按部門查看數據,手動拆分數據費時費力,尤其是數據量較大時,使用這個腳本可批量操作。

import pandas as pd


df = pd.read_excel("員工數據.xlsx")
departments = df["部門"].unique()


with pd.ExcelWriter("按部門拆分的員工數據.xlsx") as writer:
    for dept in departments:
        df_dept = df[df["部門"] == dept]
        df_dept.to_excel(writer, sheet_name=dept, index=False)

3.生成工資統計報表

統計每個部門的平均工資和總工資,生成部門工資概覽報表,手動計算統計指標容易出錯,尤其是數據量較大時。

import pandas as pd


df = pd.read_excel("員工數據.xlsx")
report = df.groupby("部門").agg({"工資": ["mean", "sum"]})
report.columns = ["平均工資", "總工資"]
report.to_excel("工資統計報表.xlsx")

4.自動發送工資條郵件

為每個員工生成工資條并發送郵件,自動化工資條發放,手動發送郵件效率低,容易遺漏或出錯。

import pandas as pd
import smtplib
from email.mime.text import MIMEText


df = pd.read_excel("員工數據.xlsx")


# 郵件配置
smtp_server = "smtp.example.com"
port = 587
sender_email = "hr@company.com"
password = "your_password"


for index, row in df.iterrows():
    msg = MIMEText(f"尊敬的{row['姓名']},您的本月工資為{row['工資']}元。")
    msg["Subject"] = "您的工資條"
    msg["From"] = sender_email
    msg["To"] = row["郵箱"]


    with smtplib.SMTP(smtp_server, port) as server:
        server.starttls()
        server.login(sender_email, password)
        server.send_message(msg)

5.為Excel添加條件格式

高亮顯示工資高于8000的員工,快速識別高工資員工,手動高亮顯示效率低,尤其是數據量較大時。

from openpyxl import load_workbook
from openpyxl.styles import PatternFill


wb = load_workbook("員工數據.xlsx")
ws = wb.active


# 定義綠色填充
green_fill = PatternFill(start_color="00FF00", end_color="00FF00", fill_type="solid")


for row in ws.iter_rows(min_row=2, max_col=4, max_row=ws.max_row):
    if row[3].value > 8000:  # 假設工資在第4列
        for cell in row:
            cell.fill = green_fill


wb.save("高亮顯示員工數據.xlsx")

6.生成員工入職年份分布圖

統計員工入職年份分布并生成圖表,分析員工入職趨勢,手動繪制圖表費時,尤其是數據量較大時。

import pandas as pd
from openpyxl import Workbook
from openpyxl.chart import BarChart, Reference


df = pd.read_excel("員工數據.xlsx")
df["入職年份"] = pd.to_datetime(df["入職日期"]).dt.year
year_distribution = df["入職年份"].value_counts().sort_index()


# 創建Excel圖表
wb = Workbook()
ws = wb.active
ws.append(["年份", "人數"])
for year, count in year_distribution.items():
    ws.append([year, count])


chart = BarChart()
chart.title = "員工入職年份分布"
data_range = Reference(ws, min_col=2, min_row=1, max_row=len(year_distribution)+1, max_col=2)
categories = Reference(ws, min_col=1, min_row=2, max_row=len(year_distribution)+1)
chart.add_data(data_range, titles_from_data=True)
chart.set_categories(categories)
ws.add_chart(chart, "D2")


wb.save("員工入職年份分布.xlsx")

7.批量重命名Excel列名

將列名改為拼音格式,統一列名格式,方便后續處理,手動修改列名容易出錯,尤其是列數較多時。

import pandas as pd


df = pd.read_excel("員工數據.xlsx")
df.columns = ["employee_id", "name", "department", "salary", "join_date", "email"]
df.to_excel("重命名后的員工數據.xlsx", index=False)

8.填充空值

將缺失的郵箱填充為默認值,處理數據缺失問題,手動填充空值效率低,尤其是數據量較大時。

import pandas as pd


df = pd.read_excel("員工數據.xlsx")
df["郵箱"].fillna("無郵箱@公司.com", inplace=True)
df.to_excel("填充空值后的員工數據.xlsx", index=False)

9.生成隨機績效評分

為每位員工生成隨機績效評分(1-5分),模擬績效數據,手動生成隨機數據效率低。

import pandas as pd
import numpy as np


df = pd.read_excel("員工數據.xlsx")
df["績效評分"] = np.random.randint(1, 6, size=len(df))
df.to_excel("帶績效評分的員工數據.xlsx", index=False)

10.自動化數據驗證

在Excel中添加下拉列表限制部門輸入值,防止輸入錯誤數據,手動設置數據驗證繁瑣。

from openpyxl import load_workbook
from openpyxl.worksheet.datavalidation import DataValidation


wb = load_workbook("員工數據.xlsx")
ws = wb.active


# 添加數據驗證
dv = DataValidation(type="list", formula1='"人力資源部,財務部,信息技術部,銷售部,市場部"')
dv.add("C2:C100")  # 假設部門列在C列
ws.add_data_validation(dv)


wb.save("帶數據驗證的員工數據.xlsx")

通過以上案例,你可以輕松實現多種Excel自動化任務,比如數據清洗與格式轉換、數據拆分與合并、統計分析與報表生成、自動化郵件發送、圖表生成與可視化等,通過這些Python腳本可以顯著提高工作效率!

責任編輯:華軒 來源: 大話數據分析
相關推薦

2024-06-21 10:46:44

2024-10-28 19:36:05

2024-08-14 14:42:00

2024-12-10 07:15:00

2024-12-10 00:01:00

自動化腳本優化

2022-05-07 14:08:42

Python自動化腳本

2024-07-01 18:07:30

Python腳本自動化

2022-10-09 14:50:44

Python腳本

2022-07-27 08:01:28

自動化DevOps

2023-08-01 12:57:41

網頁Volusion?國外

2022-07-05 14:00:49

編排工具自動化

2024-08-19 10:21:37

接口Python魔法方法

2024-08-16 21:14:36

2024-05-13 16:29:56

Python自動化

2024-11-13 13:14:38

2022-02-17 13:03:28

Python腳本代碼

2024-08-16 21:51:42

2020-11-03 21:11:39

IT

2023-02-15 08:34:12

測試移動開發

2022-04-20 07:42:08

Python腳本代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品2区 | 一级片在线观看 | 精品一区二区三区91 | 天天弄 | 精品久久久久久久久久久 | 欧美一区二区在线播放 | 欧美日韩国产传媒 | 国产亚洲欧美另类一区二区三区 | 欧美日一区二区 | 青青久久 | 中文在线视频观看 | 天堂久久一区 | 欧美精品一区二区三区在线播放 | 成人高潮片免费视频欧美 | 天天干天天干 | 欧美精品一区二区三区在线 | 日韩一区二区在线看 | 国产精品毛片一区二区在线看 | 九九精品在线 | 黑人中文字幕一区二区三区 | 欧美日韩一区在线 | 久久久久国产一区二区三区四区 | 国产欧美一区二区久久性色99 | 亚洲精品一区二区 | 一区二区三区四区电影视频在线观看 | 99精品免费视频 | 69av网 | 亚洲性视频 | 欧美2区| 成人18亚洲xxoo | 欧美一级艳情片免费观看 | 亚洲精品乱码久久久久久蜜桃91 | 久久国产精彩视频 | 拍真实国产伦偷精品 | 日韩一区二区三区在线 | 精品国产乱码久久久久久1区2区 | 国产日韩一区二区三区 | 97久久久久久久久 | 久久精品99久久 | 日韩精品免费 | 91精产国品一二三区 |