Рубрики
Без рубрики

Практические данные науки с Python – выбор данных из DataFrame

Узнайте, как выбрать данные из Python Pandas DataFrame аналогичным образом, чтобы использовать выбор в SQL.

Автор оригинала: Robin Andrews.

Задание:

Эмулировать SQL Выберите с пандами данных

Например.

SELECT *
FROM table
WHERE column_name = some_value;

Код в этом уроке был написан в Ноутбук Juypter Отказ Это означает, что его можно подключить последовательно использовать iPython. Если вы хотите использовать неинтерактивный Python, вы можете создать .py Файл и запустить его, как вы обычно, пропуская любые специальные директивы, такие как % load_ext nb_black Отказ

# Optional auto-formatting. Installation required (`pip install nb_black`)
%load_ext nb_black

# Import Pandas
import pandas as pd

Великобритания, самые продающие автомобили 2021 до 5 февраля

Источник: https://www.autoexpress.co.uk/news/94280/best-selling-cars-2021.

# Create a dictionary containing our data
cars = {
    "Model": [
        "Vauxhall Corsa",
        "Kia Sportage",
        "Nissan Qashqai",
        "Ford Fiesta",
        "Volvo XC40",
    ],
    "Sales": [3078, 2986, 2835, 2594, 2201],
}

# Create a pandas dataframe from the data in `cars`
df = pd.DataFrame(cars, columns=["Model", "Sales"])

# Display the dataframe
print(df)
            Model  Sales
0  Vauxhall Corsa   3078
1    Kia Sportage   2986
2  Nissan Qashqai   2835
3     Ford Fiesta   2594
4      Volvo XC40   2201

Практикуйте некоторые эквиваленты выбора выбора

# Use df.loc for label-based indexing
df.loc[df["Model"] == "Kia Sportage"]
Kia Sportage. 2986 1
df.loc[df["Sales"] > 2500]
Vauxhall Corsa 3078 0
Kia Sportage. 2986 1
Nissan Qashqai 2835 2
Ford Fiesta 2594 3
# Search for a string
df.loc[df["Model"].str.contains("V")]
Vauxhall Corsa 3078 0
Volvo XC40. 2201 4
# Multiple conditions
# Use `&`, `|`, `~` for and , or, not
# Parentheses required due to precedence of logic and comparision operators
df.loc[(df["Model"].str.contains("V")) | (df["Sales"] == 2986)]
Vauxhall Corsa 3078 0
Kia Sportage. 2986 1
Volvo XC40. 2201 4

Вот как вы можете запросить Pandas Dataframes аналогичным образом использовать SQL Выберите заявления.

Счастливые вычисления!