Значения в столбце датафрейма могут быть изменены на основе условного выражения. В этой статье мы рассмотрим несколько способов создания столбцов по условию в Pandas.
import pandas as pd
data = {'Stock': ['AAPL', 'IBM', 'MSFT', 'WMT'],
'Price': [144.8, 141.61, 304.21, 139.5],
'PE': [25, 21, 39, 16],
'TradingExchange': ['NASDAQ', 'NYSE', 'NASDAQ', 'NYSE']}
df = pd.DataFrame(data)
print(df)
example_df.loc[example_df['column_1'] condition, 'column_2'] = value
df['Price_Category'] = 'Over 150'
df.loc[df['Price'] < 150, 'Price_Category'] = 'Under 150'
import numpy as np
example_df['column_1'] = np.where(condition, new_value, 'column_2')
df['Price_Category'] = 'Over 150'
df['Price_Category'] = np.where(df['Price'] < 150, 'Under 150', df['Price_Category'])
PE_Conditions = [
(df['PE'] < 20),
(df['PE'] >= 20) & (df['PE'] < 30),
(df['PE'] >= 30)]
PE_Categories = ['Less than 20', '20-30', '30+']
df['PE_Category'] = np.select(PE_Conditions, PE_Categories)
print(df)
Источник: Medium