кодесурса
«Python

База данных персонала Pandas: отображаемое имя, зарплата и номер отдела для тех сотрудников, чье имя заканчивается указанной буквой

script1adsense2code
script1adsense3code

Запросы к базе данных Pandas HR: Упражнение 16 с решением

Напишите программу Pandas для отображения имени, фамилии, оклада и номера отдела для тех сотрудников, чье имя заканчивается буквой «d» или «n» или «s», а также упорядочите результат в порядке убывания по идентификатору отдела.

Пример решения :

Код Python:

import pandas as pd
employees = pd.read_csv(r"EMPLOYEES.csv")
departments = pd.read_csv(r"DEPARTMENTS.csv")
job_history = pd.read_csv(r"JOB_HISTORY.csv")
jobs = pd.read_csv(r"JOBS.csv")
countries = pd.read_csv(r"COUNTRIES.csv")
regions = pd.read_csv(r"REGIONS.csv")
locations = pd.read_csv(r"LOCATIONS.csv")
print("First name       Last name      Salary    Department ID")
result = employees[employees['first_name'].str[-1].isin(['s','d','n'])]
result = result.sort_values('department_id', ascending=True)
for index, row in result.iterrows():
    print(row['first_name'].ljust(15),row['last_name'].ljust(15),str(row['salary']).ljust(9),row['department_id'])

Пример вывода:

 Имя Фамилия Зарплата ID отдела
Ден Рафаэли 11000 30,0
Карен Кольменарес 2500 30,0
Сьюзен Маврис 6500 40,0
Джейсон Маллин 3300 50,0
Алексис Булл 4100 50,0
Кевин Фини 3000 50,0
Кертис Дэвис 3100 50,0
Джон Сео 2700 50,0
Стивен Стайлз 3200 50,0
Уинстон Тейлор 3200 50,0
Джеймс Марлоу 2500 50,0
Стивен Маркл 2200 50,0
Джеймс Лэндри 2400 50,0
Кевин Моргос 5800 50,0
Дональд Оконнелл 2600 50,0
Дуглас Грант 2600 50,0
Жирар Джони 2800 50,0
Жан Флёр 3100 50,0
Дэвид Остин 4800 60,0
Герман Баер 10000 70,0
Чарльз Джонсон 6200 80,0
Джонатон Тейлор 8600 80,0
Джеральд Кэмбро 11000 80,0
Харрисон Блум 10000 80.0
Дэвид Ли 6800 80,0
Аллан Макьюэн 9000 80,0
Дэвид Бернштейн 9500 80,0
Карен Партнерс 13500 80,0
Джон Рассел 14000 80,0
Эллен Абель 11000 80,0
Стивен Кинг 24000 90,0
Луис Попп 6900 100.0
Джон Чен 8200 100,0

Эквивалентный синтаксис SQL:

 ВЫБЕРИТЕ имя, фамилию, зарплату, идентификатор отдела
 ОТ сотрудников
  ГДЕ first_name НРАВИТСЯ '% D%'
   ИЛИ first_name LIKE "% S%"
   ИЛИ first_name LIKE "% N%"
    ЗАКАЗАТЬ по зарплате DESC;

Нажмите, чтобы просмотреть таблицу, содержащую:

Стол сотрудников

Таблица отделов

Таблица стран

Job_History Table

Таблица рабочих мест

Таблица местоположений

Таблица регионов

Редактор кода Python:


Структура базы данных персонала :

«HR

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу Pandas для отображения имени, фамилии, оклада и номера отдела для тех сотрудников, чье имя заканчивается буквой «м».
Далее: Напишите программу Pandas для отображения имени, фамилии, оклада и номера отдела для сотрудников, которые работают в отделе 70 или 90.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code