🐼 В технической секции собесеования на аналитика данных, помимо
SQL и Python, бывает еще отдельный блок вопросов про Pandas! Собрал некоторые из самых популярных вопросов о Pandas со StackOverflow, чтобы не только подготовиться к собеседованию, но и решать реальные рабочие задачи. 📚 Некоторые темы мы уже разбирали в группе, к ним будет приложена ссылка с соответствующим постом.
1️⃣ "Как выбрать определенные строки из фрейма данных в
Pandas?" 🤔📚 Разбор
🕵️♂️ Ответ: Использовать методы
.loc или .iloc для выбора строк на основе условий или индекса.import pandas as pd
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Gender': ['F', 'M', 'M', 'M']})
male_rows = df.loc[df['Gender'] == 'M']
print(male_rows)2️⃣ "Как сгруппировать данные по столбцам в Pandas и использовать агрегатные функции?" 🤔
🕵️♂️ Ответ: Использовать метод
.groupby для группировки данных по столбцу, а затем применить к группам агрегатные функции: mean, sum и count.import pandas as pd
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Gender': ['F', 'M', 'M', 'M'],
'Salary': [50000, 60000, 70000, 80000]})
grouped = df.groupby('Gender')
print(grouped['Salary'].mean())
print(grouped['Salary'].sum())3️⃣ "Как обработать пропущенные значения во фрейме данных в
Pandas?" 🤔🕵️♂️ Ответ: Использовать метод
.fillna для заполнения пропущенных значений или используйте метод .dropna для удаления строк или столбцов с пропущенными значениями.import pandas as pd
import numpy as np
df = pd.DataFrame({'Name': [np.nan, 'Bob', 'Charlie', 'David'],
'Age': [25, 30, np.nan, 40],
'Gender': ['F', 'M', 'M', 'M']})
filled = df.fillna(value={'Age': df['Age'].mean()})
print(filled)df.dropna()4️⃣ "Как мне объединить два
DataFrames в Pandas?" 🤔📚 Разбор
🕵️♂️ Ответ: Использовать метод
.merge для объединения двух DataFrames на основе общего столбца или использовать метод .concat для объединения двух фреймов данных вдоль указанной оси.import pandas as pd
df1 = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40]})
df2 = pd.DataFrame({'Name': ['Bob', 'Charlie', 'David', 'Eve'],
'Salary': [60000, 70000, 80000, 90000]})
merged = pd.merge(df1, df2, on='Name')
print(merged)5️⃣ "Как применить функцию к каждому элементу в
DataFrame Pandas?" 🤔📚 Разбор
🕵️♂️ Ответ: Использовать метод
.apply, чтобы применить функцию к каждому элементу во фрейме данных, как по строкам, так и по столбцам.import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
def add_one(x):
return x + 1
result = df.apply(add_one)
print(result)6️⃣ "Как отсортировать
DataFrame Pandas по столбцу?" 🤔🕵️♂️ Ответ: Использовать метод
.sort_values для сортировки фрейма данных по одному или нескольким столбцам.import pandas as pd
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40]})
sorted_df = df.sort_values(by='Age')
print(sorted_df)7️⃣ "Как создать новый столбец в
DataFrame Pandas на основе существующих столбцов?" 🤔🕵️♂️ Ответ: Использовать оператор присваивания для создания нового столбца на основе существующих столбцов в
DataFrame.import pandas as pd
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Gender': ['F', 'M', 'M', 'M']})
df['IsFemale'] = df['Gender'].apply(lambda x: x == 'F')
print(df)8️⃣ "Как читать и записывать CSV-файлы с помощью Pandas?" 🤔
🕵️♂️ Ответ: Использовать метод
.read_csv для чтения данных из CSV-файла в DataFrame Pandas и использовать метод .to_csv для записи DataFrame в CSV-файл.import pandas as pd
# Reading data from a CSV file
df = pd.read_csv('data.csv')
# Writing data to a CSV file
df.to_csv('output.csv', index=False)✒️ Какую из тем хотелось бы подробней обсудить?
#pandas