Chcę zbudować funkcję dla następującego kodu:

PlayDirection_encoder = LabelEncoder()
train["PlayDirection"] = direction_encoder.fit_transform(train["PlayDirection"])
train.PlayDirection.unique()

To moja obecna funkcja:

def object(category):
    %s = Label_Encoder() % (category + "_encoder")
    train[category] = %s.fit_transform(train[category]) %(category + "_encoder")
    len(train.category.unique())

object("PlayDirection")

UsageError: Line magic function `%s` not found.

Uruchamiam kod na serwerze Kaggle. Czy wiesz, jak rozwiązać ten problem?

0
Marco Furrer 20 listopad 2019, 23:17
%s nie jest prawidłową nazwą zmiennej.....
 – 
Error - Syntactical Remorse
20 listopad 2019, 23:19

1 odpowiedź

  1. wywołanie funkcji object to naprawdę zły pomysł. To zarezerwowane słowo w Pythonie, więc może zepsuć wszystko w kodzie.
  2. co chcesz osiągnąć twój problem nie jest jasny
0
py_dude 20 listopad 2019, 23:22
Chcę zakodować kolumnę w ramce danych pandy. To są obiekty( ->string) i muszę z nich zrobić liczby.
 – 
Marco Furrer
21 listopad 2019, 13:17
Możesz użyć instrukcji if, aby przełączać się między przypadkami, których potrzebujesz tego i tamtego kodera
 – 
py_dude
21 listopad 2019, 15:49