Чтобы преобразовать категориальные значения в числовые значения в pandas с помощью функции replace, вы можете использовать несколько методов. Вот несколько примеров:
Метод 1: замена значений вручную с помощью словаря
import pandas as pd
# Create a DataFrame with categorical values
data = {'Category': ['A', 'B', 'A', 'C', 'B']}
df = pd.DataFrame(data)
# Define a dictionary to map categorical values to numerical values
mapping = {'A': 1, 'B': 2, 'C': 3}
# Replace values using the dictionary
df['Category'] = df['Category'].replace(mapping)
print(df)
Выход:
Category
0 1
1 2
2 1
3 3
4 2
Метод 2. Используйте функцию replaceсо словарем сопоставления
import pandas as pd
# Create a DataFrame with categorical values
data = {'Category': ['A', 'B', 'A', 'C', 'B']}
df = pd.DataFrame(data)
# Define a dictionary to map categorical values to numerical values
mapping = {'A': 1, 'B': 2, 'C': 3}
# Replace values using the replace function with the mapping dictionary
df['Category'] = df['Category'].replace(mapping)
print(df)
Выход:
Category
0 1
1 2
2 1
3 3
4 2
Метод 3. Используйте атрибут cat.codes
import pandas as pd
# Create a DataFrame with categorical values
data = {'Category': ['A', 'B', 'A', 'C', 'B']}
df = pd.DataFrame(data)
# Use the cat.codes attribute to convert categorical values to numerical values
df['Category'] = df['Category'].astype('category').cat.codes
print(df)
Выход:
Category
0 0
1 1
2 0
3 2
4 1
Это всего лишь несколько методов преобразования категориальных значений в числовые значения с помощью функции replaceв pandas. Другие методы включают использование функции mapили класса LabelEncoderиз библиотеки scikit-learn.