Heim >Backend-Entwicklung >Python-Tutorial >Fünf einfache und effektive Python-Skripte zum Bereinigen Ihrer Daten
Beim maschinellen Lernen sollten wir weniger „Datenbereinigung“ und mehr „Datenvorbereitung“ durchführen. Dieses Skript spart mir viel Zeit, wenn wir Daten aus Whitepapers, E-Books oder anderen PDF-Dokumenten extrahieren müssen.
import tabula #获取文件 pdf_filename = input ("Enter the full path and filename: ") # 提取PDF的内容 frame = tabula.read_pdf(pdf_filename,encoding = 'utf-8', pages='all') #根据内容创建CSV文件 frame.to_csv('pdf_conversion.csv')
Dies ist eine relativ einfache Möglichkeit, Daten schnell zu extrahieren, bevor sie in eine Datenbank für maschinelles Lernen, Tableau oder Count und andere Tools importiert werden.
Viele Systeme bieten die Option zum Exportieren in CSV an, aber es gibt keine Möglichkeit, die Daten vor dem Exportieren zuerst zusammenzuführen. Dies kann dazu führen, dass mehr als 5 Dateien in einen Ordner exportiert werden, der denselben Datentyp enthält. Dieses Python-Skript löst dieses Problem, indem es diese Dateien nimmt und sie in einer Datei zusammenführt.
from time import strftime import pandas as pd import glob # 定义包含CSV文件的文件夹的路径 path = input('Please enter the full folder path: ') #确保后面有一个斜杠 if path[:-1] != "/": path = path + "/" #以列表形式获取CSV文件 csv_files = glob.glob(path + '*.csv') #打开每个CSV文件并合并为一个文件 merged_file = pd.concat( [ pd.read_csv(c) for c in csv_files ] ) #创建新文件 merged_file.to_csv(path + 'merged_{}.csv'.format(strftime("%m-%d-%yT%H:%M:%S")), index=False) print('Merge complete.')
Die endgültige Ausgabe liefert Ihnen eine CSV-Datei mit allen Daten in der CSV-Liste, die Sie aus dem Quellsystem exportiert haben.
Wenn Sie doppelte Datenzeilen aus CSV-Dateien entfernen müssen, kann dies Ihnen dabei helfen, Bereinigungsvorgänge schnell durchzuführen. Wenn ein Datensatz für maschinelles Lernen doppelte Daten enthält, kann sich dies direkt auf die Ergebnisse in einem Visualisierungstool oder einem Projekt für maschinelles Lernen auswirken.
import pandas as pd # 获取文件名 filename = input('filename: ') #定义要检查是否重复的CSV列名 duplicate_header = input('header name: ') #获取文件的内容 file_contents = pd.read_csv(filename) # 删除重复的行 deduplicated_data = file_contents.drop_duplicates(subset=[duplicate_header], keep="last", inplace=True) #创建新文件 deduplicated_data.to_csv('deduplicated_data.csv')
Beim Exportieren von Dateien aus anderen Systemen enthält diese manchmal eine Datenspalte, wenn wir sie in zwei Spalten benötigen.
import pandas as pd #获取文件名并定义列 filename = input('filename: ') col_to_split = input('column name: ') col_name_one = input('first new column: ') col_name_two = input('second new column: ') #将CSV数据添加到dataframe中 df = pd.read_csv(filename) # 拆分列 df[[col_name_one,col_name_two]] = df[col_to_split].str.split(",", expand=True) #创建新csv文件 df.to_csv('split_data.csv')
Angenommen, Sie haben eine Liste mit Konten und damit verbundenen Bestellungen und möchten den Bestellverlauf zusammen mit den zugehörigen Kontodetails anzeigen. Eine gute Möglichkeit hierfür ist das Zusammenführen der Daten in einer CSV-Datei.
import pandas as pd #获取文件名并定义用户输入 left_filename = input('LEFT filename: ') right_filename = input('RIGHT filename: ') join_type = input('join type (outer, inner, left, right): ') join_column_name = input('column name(i.e. Account_ID): ') #读取文件到dataframes df_left = pd.read_csv(left_filename) df_right = pd.read_csv(right_filename) #加入dataframes joined_data = pd.merge(left = df_left, right = df_right, how = join_type, on = join_column_name) #创建新的csv文件 joined_data.to_csv('joined_data.csv')
Diese Skripte können uns effektiv dabei helfen, die Daten automatisch zu bereinigen, und dann können die bereinigten Daten zur Verarbeitung in das maschinelle Lernmodell geladen werden. Pandas ist die Bibliothek der Wahl für die Datenbearbeitung, da sie so viele Optionen bietet.
Das obige ist der detaillierte Inhalt vonFünf einfache und effektive Python-Skripte zum Bereinigen Ihrer Daten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!