У меня есть датафрейм, созданный из файла .CSV.Каждый столбец должен состоять только из числовых значений, однако иногда он может быть строкой ('> 18', '<5', 'CANCELED' и т. Д.) </p>
Перед использованием pd.to_numeric для преобразования столбцов вчисловые и приведение нечисловых значений, я хотел бы создать новый фрейм данных или словарь, который содержит уникальные нечисловые значения, найденные в каждом столбце.Это поможет понять, какие нечисловые входные данные мы получаем для использования наших функций в одной или нескольких прогнозирующих моделях.
Это кажется довольно простой задачей, но я довольно плохо знаком с Python и имеютрудно разобраться.
Пока что я сократил кадр данных только до столбцов объекта dtype, что кажется хорошим первым шагом, и удалил большинство столбцов, которые имеют все числовые значения:
df = df.select_dtypes(include='object')
Я думаю, что мне нужно перебрать каждый элемент и применить некоторую функцию, используя isnumeric (), чтобы создать новый фрейм данных?Или словарь, в котором каждое имя столбца содержит строковые значения в качестве имени ключа, а словарное значение представляет собой список уникальных строковых значений, найденных в этом столбце?
Любая помощь по наиболее эффективному способу решения этой проблемы очень ценится.
Пример кадра данных:
FEATURE_1 FEATURE_2 FEATURE_3 FEATURE_4
1 1 <1.5 >3.4
Nan 2 2 4
4 CANCELED 3 4.5
1.34 2 <1.5 <2
Желаемый вывод:
{'FEATURE_2':['CANCELED'],'FEATURE_3':['<1.5'],'FEATURE_4':['>3.5','<2']}
Спасибо!