Вот моя проблема (я работаю над Python):
У меня есть датафрейм со столбцами: Index(['job_title', 'company', 'job_label', 'description'], dtype='object')
И у меня есть список слов, который содержит 300 навыков:
keywords = ["C++","Data Analytics","python","R", ............ "Django"]
Мне нужно сопоставить эти ключевые слова с каждым из описаний заданий и получить новый фрейм данных, в котором указано, является ли истина или ложь тем, что C ++ находится в описании задания [0] ... описание задания [1], описание задания [2] и скоро.
Мой новый фрейм данных будет:
столбцы: ['job_title', 'company', 'description', "C ++", "Data Analytics",
....... "Джанго"]
Где каждый столбец ключевых слов сказал true или false, если он соответствует (найден) или не указан в описании вакансии.
Могут быть и другие способы структурирования кадра данных (я слушаю предложения).
Надеюсь, у меня все в порядке с вопросом. Я пробую регулярное выражение, но я не могу заставить его повторяться по каждой строке, я пробую цикл с использованием библиотеки "fnmatch", и я не могу заставить его работать. На сегодняшний день лучшим подходом было:
df["microservice"]= df.description.str.contains("microservice")
df["cloud-based architecture"] = df.description.str.contains("cloud-based architecture")
df["service oriented architecture"] = df.description.str.contains("service oriented architecture")
Однако, во-первых, мне не удалось сделать так, чтобы это повторялось по каждой строке столбца описания, поэтому мне пришлось вводить 300-кратный код для каждого слова (это не имеет смысла). Во-вторых, при этом у меня возникают проблемы с несколькими словами, такими как «R», потому что в каждом описании он находит букву R, поэтому в каждом из них он будет иметь значение true.