Heim  >  Artikel  >  Backend-Entwicklung  >  Generieren Sie automatisch tägliche Datenberichte mit Python!

Generieren Sie automatisch tägliche Datenberichte mit Python!

王林
王林nach vorne
2023-05-25 17:01:081561Durchsuche

Generieren Sie automatisch tägliche Datenberichte mit Python!

Tatsächlich denke ich, dass es ganz einfach ist. Der Kern besteht darin, dass Sie die Inhaltsvorlage des Tagesberichts zusammenstellen und dann die geänderte Menge an Python zum Ausfüllen übergeben. Was Sie im Grunde verwenden müssen, ist Python zum Verarbeiten Excel, Word, PPT und andere verwandte Bibliotheken. Wenn Sie sie geschickt einsetzen, können Sie einen ganzen Prozess automatisieren.

Tageszeitungen sind ein Problem, dem sich die meisten Wanderarbeiter nicht entziehen können.

Für Manager sind tägliche Berichte die beste Möglichkeit, sich im Vorfeld zurechtzufinden und die Atmosphäre und den Status des Teams zu verstehen. Aber für die Mitarbeiter gibt es nichts zu besprechen. Bei sich wiederholenden Arbeiten empfehle ich jedem dringend, Python zur Modularisierung und Automatisierung zu verwenden, um eine effiziente Büroarbeit zu erreichen.

Nachfolgend verwenden wir einen Fall eines zusätzlichen Verkaufstagesberichts, um die Vorteile des automatisierten Python-Büros zu demonstrieren. Dieser Artikel vereinfacht den Fallprozess und der vollständige Code ist am Ende des Artikels angehängt.

Generieren Sie automatisch tägliche Datenberichte mit Python!

Detaillierte Bedarfserklärung

Die Bedürfnisse der Freunde sind wie folgt: Ihre üblichen Verkaufsdaten werden in Excel erfasst und nach der Zusammenfassung werden Statistiken nach Abteilungen erstellt. Aber zu Beginn dieses Jahres bat uns der Leiter plötzlich, einen täglichen Bericht zu schreiben. Nachdem wir einen Monat lang geschrieben hatten, stellten wir fest, dass wir ihn nicht überprüften, und hörten auf zu schreiben.

Generieren Sie automatisch tägliche Datenberichte mit Python!

Jetzt muss ich plötzlich alle Tagesberichte bis morgen in diesem Monat einreichen, was dem Erstellen von fast 120 Tagen Tagesberichten von Februar bis Mai entspricht. Wenn ich mit den Händen kopiere und einfüge, muss ich mich wahrscheinlich übergeben Blut. Ein Freund schickte mir alle relevanten Dokumente zum Verfassen seines Tagesberichts und stellte fest, dass der Endeffekt des Tagesberichts wie folgt aussieht.

Generieren Sie automatisch tägliche Datenberichte mit Python!

Die Anforderungen sind also relativ einfach. Sie müssen nur die täglichen Daten aus der Excel-Tabelle lesen, sie mit Python verarbeiten und sie dann nacheinander in das Word-Dokument schreiben, um eine Stapelgenerierung täglicher Berichte zu erreichen.

Datenverarbeitung

Bevor Sie eine Datenverarbeitung durchführen, müssen Sie zunächst verstehen, welche Daten letztendlich benötigt werden. Wie in der folgenden Abbildung dargestellt, gibt es im Ziel-Tageswort zwei Hauptkategorien: Die rot markierten Werte bestehen hauptsächlich aus den Daten des Tages, oder die nach ihrer Berechnung erhaltenen Daten sind einfacher; , also die Daten der letzten sieben Tage (Verkaufsmenge, Verkaufsbetrag, Verkaufsziel, Fertigstellungsgrad).

Generieren Sie automatisch tägliche Datenberichte mit Python!

Zuerst importieren wir das Pandas-Modul zur Datenverarbeitung.

import pandas as pd
df = pd.read_excel("日报数据.xlsx")
df

Ausgabeergebnis:

Generieren Sie automatisch tägliche Datenberichte mit Python!

Nach dem Import der Daten können wir dann Datenoperationen entsprechend unseren Anforderungen durchführen. Es gibt zwei Haupttypen von Datenoperationen: Die eine besteht darin, Addition +, Subtraktion -, Multiplikation * und Division / zur Durchführung von Datenoperationen zu verwenden, und die andere darin, statistische Methoden zur Durchführung von Datenoperationen zu verwenden.

Geben Sie den folgenden Befehl in der interaktiven Umgebung ein:

df["日期"] = df["日期"].apply(lambda x:x.strftime("%Y-%m-%d"))
df["当日完成度"] = (df["销售金额"]/df["销售目标"]*100).round(1)
df["累计销售金额"] = df["销售金额"].cumsum()
df["当年完成度"] = (df["累计销售金额"]/2200000*100).round(1)
df["累计销售金额"] = (df["累计销售金额"]/10000).round(2)
df

Ausgabeergebnis:

Generieren Sie automatisch tägliche Datenberichte mit Python!

Sie können sehen, dass die im Screenshot des Endergebnisses rot markierten Dateninhalte alle berechnet wurden. Die grün markierte Tabelle ist noch einfacher, nutzen Sie einfach die Datenauswahl im Pandas-Modul.

Geben Sie in der interaktiven Umgebung den folgenden Befehl ein:

num = 10
df.iloc[num-7:num, :5]

Ausgabeergebnis:

Generieren Sie automatisch tägliche Datenberichte mit Python!

Mit dieser Methode können Sie ganz einfach die tägliche Datenerfassung für die letzten 7 Tage an einem bestimmten Datum abrufen.

Tagesberichte automatisch generieren

Bei der Verwendung von Python zur Automatisierung von Word-Vorgängen wird normalerweise das Modul python-docx verwendet. Es gibt im Allgemeinen zwei Methoden zur Stapelgenerierung von Word-Dokumenten: die Verwendung von add_paragraph(), add_table() und anderen Methoden, um verschiedene Inhalte zu Word hinzuzufügen Unterlagen. Das andere ist das, was wir dieses Mal verwenden werden, nämlich Text- und Tabellendaten im ursprünglichen Word-Dokument entsprechend der Position zu ersetzen.

Geben Sie den folgenden Befehl in die interaktive Umgebung ein:

for index, rows in df.iterrows():
 if index > 30:
 doc.paragraphs[0].runs[1].text = rows[0]
 doc.paragraphs[4].runs[4].text = rows[0]
 doc.paragraphs[4].runs[6].text = str(rows[1])
 doc.paragraphs[4].runs[8].text = str(rows[2])
 doc.paragraphs[5].runs[1].text = str(rows[3])
 doc.paragraphs[5].runs[3].text = str(rows[4])
 doc.paragraphs[9].runs[2].text = str(rows[5])
 doc.paragraphs[9].runs[7].text = str(rows[6])
 table = doc.tables[0]
 data_table = df.iloc[index-6:index+1,:5]
 for i in range(7):
 for j in range(5):
 table.cell(i+1,j).text = str(df.iloc[i,j])

 doc.save(f"销售日报-{rows[0]}.docx")

Führen Sie den Code aus und geben Sie das Ergebnis aus:

Generieren Sie automatisch tägliche Datenberichte mit Python!

Wie im Bild oben gezeigt, wurden 120 aufgezeichnete tägliche Verkaufsberichte geschrieben. Das automatisierte Python-Büro ist so magisch.

So erhalten Sie den vollständigen Code:

Link:​​https://www.php.cn/link/0d5a4a5a748611231b945d28436b8ece​​​

Extraktionscode: p9iw

Aufgrund seiner einfachen Syntax und Benutzerfreundlichkeit wird Python als die „am besten geeignete Programmiersprache für Anfänger zum Erlernen“ bezeichnet. Für verschiedene sich wiederholende Computeraufgaben bei der Arbeit können Sie erwägen, Python zu verwenden, um sie in automatisierte Programme umzuwandeln.

Wenn Sie ein Python-Anfänger sind, werden Sie feststellen, dass die Logik dieses Artikels sehr einfach ist und Sie sie sogar verbessern können. Das Modul python-docx hat beispielsweise Vorteile beim Lesen von Word-Dokumenten, aber wenn Sie Text in Vorlagen schreiben, können Sie die Verwendung des Moduls docxtpl in Betracht ziehen (lernen Sie ein wenig Jinja2-Syntax).

Das obige ist der detaillierte Inhalt vonGenerieren Sie automatisch tägliche Datenberichte mit Python!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen