Direkt zum Inhalt
HeimDer blogPython

Top 26 Python pandas Interview Fragen und Antworten

Entdecke die wichtigsten Python-Pandas-Interview-Fragen und -Antworten für Data-Science-Funktionen
Aktualisierte 10. Sept. 2024  · 15 Min. lesen

Dieser Artikel ist ein geschätzter Beitrag unserer Community und wurde von DataCamp für Klarheit und Genauigkeit bearbeitet.

Willst du dein eigenes Fachwissen weitergeben? Wir würden uns freuen, von dir zu hören! Du kannst deine Artikel oder Ideen gerne über unser Community-Beitragsformular einreichen.

Als eine der anspruchsvollsten Fähigkeiten für eine datenorientierte Position suchen viele Datenexperten oder -enthusiasten nach den am häufigsten gestellten Pandas-Interviewfragen, um einen guten Job in der boomenden Datenbranche zu bekommen.

Egal, ob du auf der Suche nach deinem ersten Job bist oder dich weiterentwickeln willst, wir haben alles, was du brauchst. In diesem Artikel haben wir die am häufigsten gestellten Python-Pandas-Interviewfragen und ihre Antworten zusammengestellt. Einige der Fragen stammen aus meinen eigenen Vorstellungsgesprächen bei Target als Datenwissenschaftler.

Lies also weiter, um Pandas Interviewfragen aller Stufen zu entdecken.

Wenn du wenig Zeit hast und eine schnelle Zusammenfassung über Pandas brauchst, schau dir unseren Spickzettel über Pandas an.

pandas Basic Interview Fragen

Schauen wir uns nun einige grundlegende Interviewfragen zu Pandas an. Freundliche Interviewer beginnen vielleicht mit diesen einfachen Fragen, um dich am Anfang zu beruhigen, während andere diese Fragen stellen, um dein grundlegendes Verständnis der Bibliothek zu beurteilen.

1. Was ist Pandas in Python?

Pandas ist eine Open-Source-Python-Bibliothek mit leistungsstarken und integrierten Methoden zum effizienten Bereinigen, Analysieren und Bearbeiten von Datensätzen. Dieses leistungsstarke Paket wurde 2008 von Wes McKinney entwickelt und lässt sich leicht mit verschiedenen anderen Data Science-Modulen in Python kombinieren.

Pandas baut auf der NumPy-Bibliothek auf, d.h. seine Datenstrukturen Series und DataFrame sind die erweiterten Versionen von NumPy-Arrays.

2. Wie greift man auf die obersten 6 Zeilen und die letzten 7 Zeilen eines Pandas DataFrame zu?

Die Methode head() in Pandas wird verwendet, um auf die ersten Zeilen eines DataFrame zuzugreifen, und die Methode tail() wird verwendet, um auf die letzten Zeilen zuzugreifen.

Um auf die oberen 6 Zeilen zuzugreifen: dataframe_name.head(6)

Um auf die letzten 7 Zeilen zuzugreifen: dataframe_name.tail(7)

3. Warum hat DataFrame.shape keine Klammern?

In Pandas ist shape ein Attribut und keine Methode. Du solltest also ohne Klammern darauf zugreifen.

DataFrame.shape gibt ein Tupel mit der Anzahl der Zeilen und Spalten in einem DataFrame aus.

4. Was ist der Unterschied zwischen Series und DataFrame?

DataFrame: Der Pandas DataFrame hat ein tabellarisches Format mit mehreren Zeilen und Spalten, wobei jede Spalte einen anderen Datentyp haben kann.

Serie: Die Reihe ist ein eindimensionales beschriftetes Array, das jeden Datentyp speichern kann, aber alle seine Werte sollten denselben Datentyp haben. Die Datenstruktur der Reihe ist eher wie eine einzelne Spalte eines DataFrame.

Die Datenstruktur Serie verbraucht weniger Speicher als ein DataFrame. Bestimmte Datenverarbeitungsaufgaben sind damit also schneller.

DataFrame kann jedoch große und komplexe Datensätze speichern, während Series nur homogene Daten verarbeiten kann. Die Anzahl der Operationen, die du mit einem DataFrame durchführen kannst, ist also deutlich höher als mit einer Series-Datenstruktur.

5. Was ist ein Index in Pandas?

Der Index ist eine Reihe von Bezeichnungen, die jede Zeile eines DataFrame eindeutig identifizieren können. Der Index kann einen beliebigen Datentyp wie Integer, String, Hash usw. haben,

df.index gibt die aktuellen Zeilenindizes des DataFrame df aus.

Intermediate pandas Interview Fragen

Diese Fragen sind etwas anspruchsvoller und du wirst sie eher in Rollen finden, die Erfahrung mit Pandas voraussetzen.

6. Was ist Multi-Indizierung in Pandas?

Index in Pandas spezifiziert jede Zeile eines DataFrame eindeutig. Normalerweise wählen wir die Spalte, die jede Zeile eines DataFrame eindeutig identifizieren kann, und setzen sie als Index. Aber was ist, wenn du keine einzige Säule hast, die das tun kann?

Du hast zum Beispiel die Spalten "Name", "Alter", "Adresse" und "Noten" in einem DataFrame. Jede der oben genannten Spalten hat möglicherweise keine eindeutigen Werte für die verschiedenen Zeilen und ist daher als Index ungeeignet.

Allerdings können die Spalten "Name" und "Adresse" zusammen jede Zeile des DataFrame eindeutig identifizieren. Du kannst also beide Spalten als Index festlegen. Dein DataFrame hat jetzt einen Multi-Index oder hierarchischen Index.

7. Erklären Sie Pandas Reindexing

Mit der Neuindizierung in Pandas können wir ein neues DataFrame-Objekt aus dem bestehenden DataFrame mit den aktualisierten Zeilenindizes und Spaltenbeschriftungen erstellen.

Du kannst der Funktion DataFrame.reindex() einen Satz neuer Indizes übergeben und sie wird ein neues DataFrame-Objekt mit den angegebenen Indizes erstellen und die Werte aus dem aktuellen DataFrame übernehmen.

Wenn die Werte für diese neuen Indizes im ursprünglichen DataFrame nicht vorhanden waren, füllt die Funktion diese Positionen mit den Standard-Nullen auf. Wir können jedoch den Standardwert NaN in einen beliebigen Wert ändern, mit dem wir sie füllen wollen.

Hier ist der Beispielcode:

Erstelle einen DataFrame df mit Indizes:

import pandas as pd

data = [['John', 50, 'Austin', 70],
        ['Cataline', 45 , 'San Francisco', 80],
        ['Matt', 30, 'Boston' , 95]]

columns = ['Name', 'Age', 'City', 'Marks']

#row indexes
idx = ['x', 'y', 'z']

df = pd.DataFrame(data, columns=columns, index=idx)

print(df)

Reindizieren mit einem neuen Satz von Indizes:

new_idx = ['a', 'y', 'z']

new_df = df.reindex(new_idx)

print(new_df)

Die new_df hat Werte aus der df für gemeinsame Indizes ('y' und 'z'), und der neue Index 'a' wird mit dem Standardwert NaN gefüllt.

8. Was ist der Unterschied zwischen loc und iloc?

Sowohl loc als auch die iloc-Methoden in Pandas werden verwendet, um Teilmengen eines DataFrame auszuwählen. In der Praxis werden sie häufig zum Filtern von DataFrame auf der Grundlage von Bedingungen verwendet.

Wir sollten die loc-Methode verwenden, um Daten anhand der tatsächlichen Beschriftungen von Zeilen und Spalten auszuwählen, während die iloc-Methode verwendet wird, um Daten anhand von ganzzahligen Indizes von Zeilen und Spalten zu extrahieren.

9. Zeige zwei verschiedene Möglichkeiten, einen Pandas DataFrame zu erstellen

Python Dictionary verwenden:

import pandas as pd

data = {'Name': ['John', 'Cataline', 'Matt'],
        'Age': [50, 45, 30],
        'City': ['Austin', 'San Francisco', 'Boston'],
        'Marks' : [70, 80, 95]}

df = pd.DataFrame(data)

Python-Listen verwenden:

import pandas as pd

data = [['John', 25, 'Austin',70],
        ['Cataline', 30, 'San Francisco',80],
        ['Matt', 35, 'Boston',90]]

columns = ['Name', 'Age', 'City', 'Marks']

df = pd.DataFrame(data, columns=columns)

10. Wie erhältst du die Anzahl aller eindeutigen Werte einer kategorialen Spalte in einem DataFrame?

Die Funktion Series.value_counts() gibt die Anzahl aller eindeutigen Werte einer Reihe oder Spalte zurück.

Beispiel:

Wir haben einen DataFrame df erstellt, der eine kategoriale Spalte namens "Geschlecht" enthält, und die Funktion value_counts() ausgeführt, um die Anzahl der eindeutigen Werte in dieser Spalte zu ermitteln.

import pandas as pd

data = [['John', 50, 'Male', 'Austin', 70],
        ['Cataline', 45 ,'Female', 'San Francisco', 80],
        ['Matt', 30 ,'Male','Boston', 95]]

# Column labels of the DataFrame
columns = ['Name','Age','Sex', 'City', 'Marks']

# Create a DataFrame df
df = pd.DataFrame(data, columns=columns)

df['Sex'].value_counts()

pandas Interviewfragen für erfahrene Praktiker

Diejenigen, die sich bereits gut mit Pandas auskennen und sich für höhere Positionen bewerben, werden vielleicht auf einige dieser Fragen stoßen:

11. Wie optimierst du die Leistung bei der Arbeit mit großen Datenmengen in Pandas?

Lade weniger Daten: Wenn du Daten mit pd.read_csv() liest, wähle mit dem Parameter "usecols" nur die Spalten aus, die du brauchst, um das Laden unnötiger Daten zu vermeiden. Außerdem werden durch die Angabe des Parameters "chunksize" die Daten in verschiedene Chunks aufgeteilt und nacheinander verarbeitet.

Vermeide Schleifen: Schleifen und Iterationen sind teuer, besonders wenn du mit großen Datensätzen arbeitest. Entscheide dich stattdessen für vektorisierte Operationen, da sie auf eine ganze Spalte auf einmal angewendet werden und damit schneller sind als zeilenweise Iterationen.

Nutze die Datenaggregation: Versuche, Daten zu aggregieren und statistische Operationen durchzuführen, denn Operationen auf aggregierten Daten sind effizienter als auf dem gesamten Datensatz.

Verwende die richtigen Datentypen: Die Standard-Datentypen in Pandas sind nicht speichereffizient. Ganzzahlige Werte haben zum Beispiel den Standarddatentyp int64, aber wenn deine Werte in int32 passen, kann die Anpassung des Datentyps auf int32 die Speichernutzung optimieren.

Parallelverarbeitung: Dask ist eine Pandas-ähnliche API für die Arbeit mit großen Datensätzen. Sie nutzt mehrere Prozesse deines Systems, um verschiedene Datenaufgaben parallel auszuführen.

12. Was ist der Unterschied zwischen den Methoden Join und Merge in Pandas?

Mach mit: Verbindet zwei DataFrames basierend auf ihrem Index. Es gibt jedoch ein optionales Argument "on", mit dem du explizit angeben kannst, ob du auf Basis von Spalten verknüpfen willst. Standardmäßig führt diese Funktion eine linke Verknüpfung durch.

Syntax: df1.join(df2)

Zusammenführen: Die Zusammenführungsfunktion ist vielseitiger und ermöglicht es dir, die Spalten anzugeben, über die du die DataFrames verbinden willst. Sie wendet standardmäßig den inneren Join an, kann aber so angepasst werden, dass verschiedene Join-Typen wie linker, rechter, äußerer, innerer und gekreuzter Join verwendet werden.

Syntax: pd.merge(df1, df2, on=”column_names”)

13. Was ist Timedelta?

Timedelta steht für die Dauer, d.h. die Differenz zwischen zwei Daten oder Zeiten, gemessen in Einheiten wie Tagen, Stunden, Minuten und Sekunden.

14. Was ist der Unterschied zwischen den Methoden "append" und "concat"?

Wir können die Methode concat verwenden, um DataFrames entweder entlang von Zeilen oder Spalten zu kombinieren. Ähnlich wird auch append verwendet, um DataFrames zu kombinieren, allerdings nur entlang der Zeilen.

Mit der Funktion concat kannst du den ursprünglichen DataFrame mit dem Parameter "inplace" verändern, während die Funktion append den eigentlichen DataFrame nicht verändern kann, sondern einen neuen mit den kombinierten Daten erstellt.

pandas Coding Interview Fragen

Praktische Fähigkeiten sind genauso wichtig wie theoretisches Wissen, wenn es darum geht, ein technisches Vorstellungsgespräch zu bestehen. Hier sind einige der Pandas, die du kennen solltest, bevor du dich deinem Gesprächspartner stellst.

15. Wie liest du Excel-Dateien mit Pandas in CSV-Dateien um?

Zuerst sollten wir die Funktion read_excel() verwenden, um die Excel-Daten in eine Variable zu übertragen. Dann wendest du einfach die Funktion to_csv() an, um eine nahtlose Umwandlung zu erreichen.

Hier ist der Beispielcode:

import pandas as pd

#input your excel file path into the read_excel() function.
excel_data = pd.read_excel("/content/sample_data/california_housing_test.xlsx")

excel_data.to_csv("CSV_data.csv", index = None, header=True) 

16. Wie sortiert man einen DataFrame anhand von Spalten?

Mit der Methode sort_values() kannst du den DataFrame nach einer einzelnen oder mehreren Spalten sortieren.

Syntax: df.sort_values(by=[“column_names”])

Beispielcode:

import pandas as pd

data = [['John', 50, 'Male', 'Austin', 70],
['Cataline', 45 ,'Female', 'San Francisco', 80],
['Matt', 30 ,'Male', 'Boston', 95],
['Oliver',35,'Male', 'New york', 65]]

# Column labels of the DataFrame
columns = ['Name','Age','Sex', 'City', 'Marks']

# Create a DataFrame df
df = pd.DataFrame(data, columns=columns)

# Sort values based on ‘Age’ column
df.sort_values(by=['Age'])

df.head()`

17. Zeige zwei verschiedene Möglichkeiten, Daten zu filtern

Um einen DataFrame zu erstellen:

import pandas as pd

data = {'Name': ['John', 'Cataline', 'Matt'],
        'Age': [50, 45, 30],
        'City': ['Austin', 'San Francisco', 'Boston'],
        'Marks' : [70, 80, 95]}

# Create a DataFrame df
df = pd.DataFrame(data)

Methode 1: Basierend auf den Bedingungen

new_df = df[(df.Name == "John") | (df.Marks > 90)]
print (new_df)

Methode 2: Abfragefunktion verwenden

df.query('Name == "John" or Marks > 90')
print (new_df)

18. Wie fasst du Daten zusammen und wendest eine Aggregationsfunktion wie Mittelwert oder Summe darauf an?

Mit der Funktion groupby kannst du Daten nach bestimmten Spalten aggregieren und Operationen mit den gruppierten Daten durchführen. Im folgenden Code werden die Daten nach der Spalte "Name" gruppiert und der Mittelwert der "Noten" jeder Gruppe berechnet.

import pandas as pd

# Create a DataFrame
data = {
    'Name': ['John', 'Matt', 'John', 'Matt', 'Matt', 'Matt'],
    'Marks': [10, 20, 30, 15, 25, 18]
}

# Create a DataFrame df
df = pd.DataFrame(data)

# mean marks of John and Matt
print(df.groupby('Name').mean())

19. Wie kannst du eine neue Spalte erstellen, die von bestehenden Spalten abgeleitet ist?

Wir können die Methode apply() verwenden, um eine neue Spalte zu erstellen, indem wir einige Operationen an bestehenden Spalten durchführen.

Der folgende Code fügt dem DataFrame eine neue Spalte namens "total" hinzu. Diese neue Spalte enthält die Summe der Werte aus den anderen beiden Spalten.

Beispielcode:

import pandas as pd

# Create a DataFrame
data = {
    'Name': ['John', 'Matt', 'John', 'Cateline'],
    'math_Marks': [18, 20, 19, 15],
    'science_Marks': [10, 20, 15, 12]
}

# Create a DataFrame df
df = pd.DataFrame(data)

df['total'] = df.apply(lambda row : row["math_Marks"] + row["science_Marks"], axis=1)


print(df)

pandas Interviewfragen für Datenwissenschaftler

Nachdem wir nun alle allgemeinen und programmiertechnischen Interviewfragen für Pandas behandelt haben, wollen wir uns nun die Data Science Interviewfragen für Pandas ansehen.

20. Wie geht man in Pandas mit ungültigen oder fehlenden Werten um?

Du kannst eine der folgenden drei Methoden verwenden, um fehlende Werte in Pandas zu behandeln:

dropna() - entfernt die Funktion die fehlenden Zeilen oder Spalten aus dem DataFrame.

fillna() - mit dieser Funktion Nullen mit einem bestimmten Wert füllen.

interpolate() - diese Methode füllt die fehlenden Werte mit berechneten Interpolationswerten auf. Die Interpolationstechnik kann linear, polynomial, spline, zeitlich, etc. sein,

21. Unterschied zwischen den Methoden fillna() und interpolate()

fillna() –

fillna() füllt die fehlenden Werte mit der angegebenen Konstante auf. Außerdem kannst du dem Parameter "Methode" vorwärts oder rückwärts füllende Eingaben machen.

interpolate() –

In der Standardeinstellung füllt diese Funktion die fehlenden oder NaN-Werte mit den linear interpolierten Werten auf. Du kannst die Interpolationstechnik jedoch mit dem Parameter "Methode" auf Polynom, Zeit, Index, Spline usw. einstellen.

Die Interpolationsmethode eignet sich besonders für Zeitreihendaten, während Fillna ein allgemeinerer Ansatz ist.

22. Was ist Resampling?

Resampling wird verwendet, um die Frequenz zu ändern, mit der Zeitreihendaten gemeldet werden. Stell dir vor, du hast monatliche Zeitreihendaten und möchtest sie in wöchentliche oder jährliche Daten umwandeln - hier kommt das Resampling zum Einsatz.

Die Umwandlung von monatlichen in wöchentliche oder tägliche Daten ist nichts anderes als Upsampling. Hier werden Interpolationstechniken eingesetzt, um die Frequenzen zu erhöhen.

Im Gegensatz dazu wird die Umwandlung von monatlichen in jährliche Daten als Downsampling bezeichnet, bei dem Techniken zur Datenaggregation angewendet werden.

23. Wie führst du eine One-Hot-Kodierung mit Pandas durch?

Wir führen eine heiße Kodierung durch, um kategorische Werte in numerische Werte umzuwandeln, die dann in den Algorithmus für maschinelles Lernen eingespeist werden können.

import pandas as pd

data = {'Name': ['John', 'Cateline', 'Matt', 'Oliver'],
        'ID': [1, 22, 23, 36]}

df = pd.DataFrame(data)

#one hot encoding 
new_df = pd.get_dummies(df.Name)
new_df.head()

24. Wie erstellt man einen Liniendiagramm in Pandas?

Um ein Liniendiagramm zu zeichnen, gibt es in Pandas eine Plot-Funktion.

import pandas as pd


data = {'units': [1, 2, 3, 4, 5],
        'price': [7, 12, 8, 13, 16]}
# Create a DataFrame df
df = pd.DataFrame(data)

df.plot(x='units', y='price')

25. Wie lautet die Pandas-Methode, um die statistische Zusammenfassung aller Spalten in einem DataFrame zu erhalten?

df.describe()

Diese Methode liefert Statistiken wie Mittelwert, Perzentilwerte, Minimum, Maximum usw. für jede Spalte im DataFrame.

26. Was bedeutet "rollen"?

Der gleitende Mittelwert wird auch als gleitender Durchschnitt bezeichnet, weil es darum geht, den Mittelwert der Datenpunkte für ein bestimmtes Fenster zu berechnen und das Fenster über die Daten zu verschieben. Dadurch werden die Schwankungen verringert und die langfristigen Trends in den Zeitreihendaten hervorgehoben.

Syntax: df['column_name'].rolling(window=n).mean()

Vorbereitung auf das Vorstellungsgespräch

Neben den Pandas sind in einem datenorientierten Beruf noch viele andere Fähigkeiten gefragt. Hier ist die Checkliste für ein erfolgreiches Vorstellungsgespräch:

Verstehe die Jobanforderungen

Überprüfe die Stellenbeschreibung und die Aufgaben und stelle sicher, dass deine Fähigkeiten und dein Lebenslauf darauf abgestimmt sind. Außerdem ist es von Vorteil, wenn du das Unternehmen kennst und weißt, wie sich deine Rolle auf das Unternehmen auswirkt.

Code in Python

Der Interviewer prüft zunächst deine Python-Kenntnisse, bevor er dich nach der Bibliothek (Pandas) fragt. Rüste dich also mit starken Python-Kenntnissen aus.

Für die Rolle des Analysten reicht die Sprache Python aus. Aber wenn du dich als Datenwissenschaftler/in oder ML-Ingenieur/in bewirbst, ist es wichtig, dass du die Herausforderungen der Python-Programmierung lösen kannst.

Daten Projekte

Achte darauf, dass du in deinem Lebenslauf einige Datenprobleme aus der Praxis gelöst hast. Wenn du schon Erfahrung hast, kannst du über deine vergangenen Projekte sprechen. Wenn du neu auf dem Gebiet bist, versuche, einige Projekte von Kaggle zu beenden.

Allgemeine Konzepte

Für Analysten können Fragen aus Excel, Datenvisualisierungs-Dashboards, Statistik und Wahrscheinlichkeitsrechnung gestellt werden. Außerdem kann der Interviewer tief in die Themen maschinelles Lernen und Deep Learning einsteigen, wenn du dich für eine Stelle als Data Scientist oder ML Engineer bewirbst.

Bereite dich mit häufig gestellten Interviewfragen vor

Die Chancen stehen gut, dass du zumindest ein paar Fragen aus den am häufigsten gestellten Interviewfragen gestellt bekommst. Bereite dich also mit Hilfe von Spickzetteln und Übungsfragen auf das Vorstellungsgespräch vor.

ML System Design

Rechne mit Fragen zum Systemdesign, wenn du dich für sehr technische oder erfahrene Stellen bewirbst. Überarbeite gängige Designfragen und übe Probleme beim Design von ML-Systemen.

Fazit

Um einen Job in der Datenindustrie zu bekommen, brauchst du gute Python-Pandas-Kenntnisse. Die obige Liste mit theoretischen und praktischen Fragen sollte dir helfen, den Pandas-Teil deines Vorstellungsgesprächs zu meistern. Außerdem sorgen die Tipps am Ende dafür, dass dein gesamtes Vorstellungsgespräch reibungslos verläuft.

Du kannst die folgenden Ressourcen nutzen, um dich auf dein Pandas-Interview vorzubereiten:

  • Datenmanipulation mit Pandas: Ein Einsteigerkurs, der die Grundlagen von Pandas, Datenmanipulation und Visualisierungstechniken anhand realer Datensätze behandelt.
  • Datenaufbereitung mit Pandas: Dieses Tutorial vermittelt praktische Fähigkeiten im Umgang mit fehlenden Daten mit Pandas, indem Funktionen wie isnull(), dropna() und fillna() vermittelt werden.
  • Coding Interviewfragen in Python üben: Dieser Kurs ist ideal für die Vorbereitung auf Vorstellungsgespräche und behandelt Python-Datenstrukturen, String-Manipulation und andere wichtige Bereiche für Data Science-Vorstellungsgespräche.
  • Vorbereitung auf das Data Science Interview: Bietet umfassende Vorbereitungstipps für verschiedene Interviewformate und behandelt technische Fähigkeiten in Python, R, SQL und mehr.
Themen

Beginne deine Panda-Reise noch heute!

Course

Data Manipulation with pandas

4 hr
400.6K
Learn how to import and clean data, calculate statistics, and create visualizations with pandas.
See DetailsRight Arrow
Start Course
Mehr anzeigenRight Arrow
Verwandt

Der Blog

Die 32 besten AWS-Interview-Fragen und Antworten für 2024

Ein kompletter Leitfaden zur Erkundung der grundlegenden, mittleren und fortgeschrittenen AWS-Interview-Fragen, zusammen mit Fragen, die auf realen Situationen basieren. Es deckt alle Bereiche ab und sorgt so für eine abgerundete Vorbereitungsstrategie.
Zoumana Keita 's photo

Zoumana Keita

15 Min.

See MoreSee More