Heim > Artikel > Backend-Entwicklung > Kostenloses Projekt: Verwenden Sie ChatGPT zum Plotten mit Python und Matplotlib
In diesem Projekt wird ChatGPT gebeten, Ihnen beizubringen, wie Sie Python-Code zum Erstellen von Diagrammen und Visualisierungen generieren. Geben Sie einfach eine kurze Beschreibung des Plots ein, den Sie erstellen möchten, und ChatGPT generiert den erforderlichen Code mithilfe der beliebten Matplotlib-Bibliothek. Dieses Tool ermöglicht es auch Benutzern ohne Programmiererfahrung, professionelle Diagramme für ihre Daten zu entwickeln. Egal, ob Sie Forscher, Datenwissenschaftler oder Student sind, mit ChatGPT können Sie ganz einfach schöne und informative Diagramme in Python erstellen. (Generiert von ChatGPT mit geringfügigen Änderungen).
Das Projekt in JupyterNotebook ist kostenlos im Cognitive Class verfügbar.
Frage: „Bring mir bei, wie man in Python plottet“
Das Ergebnis:
Es gibt viele Möglichkeiten, Daten in Python darzustellen. Hier ist ein einfaches Beispiel mit Matplotlib, einer beliebten Datenvisualisierungsbibliothek in Python:
# using the provided by chatGPT to run in the notebook import matplotlib.pyplot as plt # Sample data x = [1, 2, 3, 4] y = [1, 4, 9, 16] # Create a figure and an axes fig, ax = plt.subplots() # Plot the data ax.plot(x, y) # Add a title ax.set_title('My Plot') # Show the plot plt.show()
Dadurch wird ein einfaches Liniendiagramm der Daten in x und y erstellt. Für die Erstellung von Plots in Matplotlib stehen zahlreiche Optionen und Anpassungsmöglichkeiten zur Verfügung. Sie können beispielsweise das Erscheinungsbild der Linien ändern, die Achsenbeschriftungen ändern, eine Legende hinzufügen usw.
Hier finden Sie weitere Informationen zu Matplotlib und anderen Plotbibliotheken in Python:
Die Matplotlib-Dokumentation: https://matplotlib.org/stable/index.html
Ein Tutorial zu Matplotlib: https://matplotlib.org/stable/tutorials/index.html
Seaborn, eine auf Matplotlib basierende Datenvisualisierungsbibliothek: https://seaborn.pydata.org/
Plotly, eine Bibliothek zum Erstellen interaktiver Plots: https://plotly.com/python/
Wie Sie sehen können, stellt ChatGPT einleitende Text- und Codeblöcke bereit (der Einfachheit halber mit einem Kopiersymbol) und schließt das Gespräch mit zusätzlichen nützlichen Informationen ab.
Indem Sie einfach fragen „Zeigen Sie mir weitere Beispiele für Plots in Python“. Tatsächlich merkt sich chatGPT Ihre vorherigen Gespräche.
Das Ergebnis:
Hier sind ein paar weitere Beispiele für Diagramme, die Sie in Python mit der Matplotlib-Bibliothek erstellen können: Streudiagramm
import matplotlib.pyplot as plt # Sample data x = [1, 2, 3, 4] y = [1, 4, 9, 16] # Create a figure and an axes fig, ax = plt.subplots() # Plot the data ax.scatter(x, y) # Add a title ax.set_title('My Scatter Plot') # Show the plot plt.show()
Balkenplot
import matplotlib.pyplot as plt # Sample data x = [1, 2, 3, 4] y = [1, 4, 9, 16] # Create a figure and an axes fig, ax = plt.subplots() # Plot the data ax.bar(x, y) # Add a title ax.set_title('My Bar Plot') # Show the plot plt.show()
Kreisdiagramm
import matplotlib.pyplot as plt # Sample data labels = ['Apples', 'Bananas', 'Oranges'] sizes = [30, 45, 25] # Create a figure and an axes fig, ax = plt.subplots() # Plot the data ax.pie(sizes, labels=labels) # Add a title ax.set_title('My Pie Chart') # Show the plot plt.show()
Denken Sie daran, dass dies nur einige Beispiele sind und es viele andere Arten von Diagrammen gibt, die Sie in Python mit Matplotlib erstellen können. Weitere Informationen und Beispiele finden Sie in der Matplotlib-Dokumentation: https://matplotlib.org/stable/index.html.
Lassen Sie uns anhand eines Beispieldatensatzes grafisch darstellen
Die erste Phase, die Sie zum Laden von Daten benötigen. Wir können ChatGPT bitten, einige Beispieldatensätze vorzuschlagen, indem wir fragen: „Könnten Sie mir Beispieldatensätze für Anfänger in Python nennen?“
Das Ergebnis:
Sicher! Hier sind ein paar Datensätze, die für Anfänger in Python nützlich sein könnten:Iris-Datensatz: Dies ist ein kleiner Datensatz, der Informationen über verschiedene Arten von Irisblüten enthält, einschließlich der Länge und Breite der Kelch- und Blütenblätter. Es wird häufig als Anfängerdatensatz zum Erlernen von Techniken des maschinellen Lernens und der Datenanalyse verwendet. Sie können den Iris-Datensatz in Python mit dem Modul sklearn.datasets laden.
Boston Housing-Datensatz: Dieser Datensatz enthält Informationen über die Immobilienpreise im Raum Boston, einschließlich des Durchschnittswerts der Häuser, der Kriminalitätsrate und anderer Faktoren. Es wird oft als Anfängerdatensatz zum Erlernen von Regressionstechniken verwendet. Sie können den Boston Housing-Datensatz in Python mit dem Modul sklearn.datasets laden.
MNIST-Datensatz: Dies ist ein Datensatz handgeschriebener Ziffern mit 60.000 Trainingsbeispielen und 10.000 Testbeispielen. Es wird häufig als Anfängerdatensatz zum Erlernen von Bildklassifizierungstechniken verwendet. Sie können den MNIST-Datensatz in Python mit dem Modul keras.datasets laden.
From these suggested datasets, we select Iris dataset to continue to work with as a sample.
h
We need a proper sample in tabular format, so we asked “load iris data with table looking format”
The result:
To load the Iris dataset in a table-like format in Python, you can use the Pandas library. Here is an example of how you can load the Iris dataset and display it in a table-like format:
import pandas as pd from sklearn import datasets # Load the Iris dataset iris = datasets.load_iris() # Create a DataFrame with the features and target values df = pd.DataFrame(iris.data, columns=iris.feature_names) df['target'] = iris.target # Display the DataFrame print(df) #--> or we can call the dataset to displace it df
_This will create a Pandas DataFrame with the features (sepal length, sepal width, petal length, and petal width) of the Iris dataset as columns, and the target values (the species of iris) as an additional column.
You can then use the usual Pandas functions to manipulate and analyze the data in the DataFrame. For example, you can use the head() function to display the first few rows of the DataFrame, or use the describe() function to get summary statistics for the numerical columns._
Conveniently, we can ask follow-up questions; here we asked “plot it”
The result:
To plot the Iris dataset using Matplotlib, you can use the following code:
# --> Trying of the suggestions from ChatGPT # --> we removed the redundant lines (e.g. loading libraries and importing data) from the suggestion # Create a figure and an axes fig, ax = plt.subplots() # Plot the data, coloring the points by the target values scatter = ax.scatter(df['sepal length (cm)'], df['sepal width (cm)'], c=df['target']) # Add a legend legend = ax.legend(*scatter.legend_elements(), title='Species') # Add a title ax.set_title('Iris dataset') # Show the plot plt.show()
We select and ask to plot a specific column in the dataset. For example, asking “show me the distribution of the column ‘sepal length (cm)”
The result:To show the distribution of a column in a Pandas DataFrame, you can use the hist() function of the DataFrame. For example, to show the distribution of the ‘sepal length (cm)’ column in the Iris dataset, you can use the following code:
# Create a figure and an axes fig, ax = plt.subplots() # Plot the distribution of the 'sepal length (cm)' column df['sepal length (cm)'].hist(ax=ax) # Add a title ax.set_title('Distribution of sepal length') # Show the plot plt.show()
As you may notice, the plot does not have labels. Therefore, we can **ask “redo it with proper axis labels”.
The result:**
# Create a figure and an axes fig, ax = plt.subplots() # Plot the distribution of the 'sepal length (cm)' column df['sepal length (cm)'].hist(ax=ax) # Add axis labels ax.set_xlabel('Sepal length (cm)') ax.set_ylabel('Frequency') # Add a title ax.set_title('Distribution of sepal length') # Show the plot plt.show()
Another useful plot to show the distribution is using boxplot which enables us to visualize standard deviation and identify outliers.
Here we ask for a boxplot of all the columns showing in the single plot by asking “show me boxplot of distributions of all columns in same plot”.
The result:To show the distribution of all columns in a Pandas DataFrame as boxplots on the same plot, you can use the boxplot() function of the DataFrame.
For example, to show the distributions of all columns in the Iris dataset as boxplots, you can use the following code:
import matplotlib.pyplot as plt import pandas as pd from sklearn import datasets # Load the Iris dataset iris = datasets.load_iris() # Create a DataFrame with the features df = pd.DataFrame(iris.data, columns=iris.feature_names) # Add a column with the target values df['target'] = iris.target # Create a figure and an axes fig, ax = plt.subplots() # Plot the boxplots of all columns df.boxplot(ax=ax) # Add a title ax.set_title('Distributions of all columns') # Show the plot plt.show()
ChatGPT is an excellent tool for working on your project. It is important to frame the question in a way that addresses your problem. Keep in mind that dividing your project into smaller blocks and addressing them individually is the key to addressing the project.
To ask a programming question from ChatGPT, you can simply provide a clear and concise description of your problem, along with any relevant code or error messages. You should also specify the programming language and any libraries or frameworks that you are using.
So, let's ask ChatGPT what it thinks.
When formulating a prompt for ChatGPT, it’s important to keep a few things in mind in order to get the most out of the model:
Be specific and clear about what you want the model to do. For example, instead of asking “What do you know about this topic?”, ask “Can you provide a brief overview of the history of the topic?”Provide context if necessary. If you’re asking a question about a specific event or person, give some background information so that the model can understand the context in which you’re asking the question.
Seien Sie prägnant. Lange und komplexe Eingabeaufforderungen können für das Modell schwer verständlich sein und möglicherweise zu weniger genauen oder relevanten Antworten führen.
Vermeiden Sie übermäßig technische Ausdrücke oder Fachjargon, mit denen das Model möglicherweise nicht vertraut ist.
Vermeiden Sie es, mehrere Fragen auf einmal zu stellen. Es ist besser, eine Frage nach der anderen zu stellen.
Hier sind ein paar Beispiele für gute Aufforderungen für ChatGPT:
„Können Sie den Hauptunterschied zwischen überwachtem und unbeaufsichtigtem Lernen erklären?“„Was sind die Hauptkomponenten eines neuronalen Netzwerks und wie funktionieren sie?“
„Bitte schreiben Sie eine Kurzgeschichte über einen Roboter, der Gedanken lesen kann“
Andererseits wären einige Beispiele für schlechte Eingabeaufforderungen:
„alles“
„Was kannst du mir sagen?“
„was du weißt“Durch Befolgen dieser Richtlinien können Sie sicherstellen, dass Sie bei der Verwendung von ChatGPT die genauesten und relevantesten Antworten vom Modell erhalten.
ChatGPT ist nicht perfekt; Das bereitgestellte Beispiel stammt von sklearn. In der realen Welt müssen Sie mithilfe von Pandas Ihre eigenen Daten aus Ihrer Ressource laden (das folgende Beispiel zeigt das Laden von Iris aus dem lokalen Speicher).
Im Allgemeinen werden Sie als praktizierender Datenwissenschaftler häufig mit dem vielschichtigen Prozess der Datenerfassung, -aufbereitung, -modellkonstruktion und -interpretation konfrontiert. Diese Phasen haben jeweils ihre eigenen, einzigartigen Anforderungen an Fähigkeiten und Ressourcen. Sie können beispielsweise Pandas verwenden, um Ihre Datensätze zu laden und zu bearbeiten. Es ist wichtig zu bedenken, dass die von ChatGPT bereitgestellten Beispiele als grundlegende Lernhilfe dienen sollen und möglicherweise nicht für den Umgang mit komplexeren oder umfangreicheren Datensätzen geeignet sind.
Also fragen wir ChatGPT, was es denkt.
Es gibt mehrere Gründe, warum ChatGPT und andere große Sprachmodelle Datenwissenschaftler nicht ersetzen werden:
Datenwissenschaftler verfügen über ein viel breiteres Spektrum an Fähigkeiten: Datenwissenschaftler werden in einem breiten Spektrum an Fähigkeiten geschult, darunter Datenanalyse, maschinelles Lernen, Programmierung, Statistik und mehr. ChatGPT und andere große Sprachmodelle sind nur in der Lage, Text basierend auf einer bestimmten Eingabeaufforderung zu generieren, und sie verfügen nicht über die anderen Fähigkeiten, die Datenwissenschaftler besitzen.
Datenwissenschaftler können die Ergebnisse ihrer Arbeit interpretieren und erklären: Datenwissenschaftler werden darin geschult, die Ergebnisse ihrer Arbeit zu interpretieren und zu erklären, was für die Entscheidungsfindung und Kommunikation mit Stakeholdern von entscheidender Bedeutung ist. ChatGPT und andere große Sprachmodelle sind nicht in der Lage, die Ergebnisse ihrer Arbeit zu interpretieren oder zu erklären.
Datenwissenschaftler können mit einer Vielzahl von Daten arbeiten: Datenwissenschaftler sind für die Arbeit mit einer Vielzahl von Daten, einschließlich strukturierter und unstrukturierter Daten, geschult und können eine Vielzahl von Tools und Techniken verwenden, um Erkenntnisse aus den Daten zu gewinnen. ChatGPT und andere große Sprachmodelle sind nur in der Lage, Text basierend auf einer bestimmten Eingabeaufforderung zu generieren, und sie können nicht mit anderen Datentypen arbeiten.
Datenwissenschaftler können mit einem breiten Spektrum von Interessengruppen zusammenarbeiten: Datenwissenschaftler sind für die Zusammenarbeit mit einem breiten Spektrum von Interessengruppen ausgebildet, darunter Unternehmensführer, Fachexperten und technische Experten, und sie können komplexe Konzepte klar und verständlich kommunizieren Weg. ChatGPT und andere große Sprachmodelle sind nicht in der Lage, mit Stakeholdern zusammenzuarbeiten oder komplexe Konzepte zu kommunizieren.
Schauen Sie sich dieses anfängerfreundliche geführte Projekt + andere kostenlose Kurse an, die von IBM-Entwicklern und Datenwissenschaftlern entwickelt wurden, unter https://cognitiveclass.ai/
Bis zum nächsten Mal!
Das obige ist der detaillierte Inhalt vonKostenloses Projekt: Verwenden Sie ChatGPT zum Plotten mit Python und Matplotlib. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!