Обрабатывать нечисловые данные в Python. Начинающий питон - PullRequest
0 голосов
/ 01 ноября 2019

Я пытаюсь заменить все нечисловые данные в кадре данных в блокноте Jupyter.

def handle_non_numeric_data (df): cols = df.columns.values ​​

for col in cols:
    text_digit_vals = {}
    def covnert_to_int(val):
        return text_digit_vals[val]

    if df[col].dtype != np.int64 and df[col].dtype != np.float64:
        col_contents = df[col].values.tolist()
        unique_elements = set(col_contents)
        x = 0
        for unique in unique_elements:
            if unique not in text_digit_vals:
                text_digit_vals[unique] = x
                x += 1

        df[col] = list(map(convert_to_int, df[col]))

return df

И затем:

data_dropped_filled_numeric = handle_non_numeric_data (data_dropped_filled)

Ошибка:

Отслеживание обратного вызова NameError (последний вызов был последним) в ----> 1 data_dropped_filled_filled_nilled_nulated_d_d_d_d_d_d________*

в handle_non_numeric_data (df) 19 x + = 1 20 ---> 21 df [col] = список (map (convert_to_int, df [col])) 22 23 return df

NameError: name'convert_to_int' не определено

Новое в python. Пожалуйста, порекомендуйте. Благодаря.

1 Ответ

1 голос
/ 01 ноября 2019

У вас есть опечатка в определении функции:

 def covnert_to_int(val):

Измените "covnert" на "convert"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...