Я выполняю внутреннее объединение 2-х фреймов данных pyspark.Первый содержит мой набор данных, который имеет столбец кодов.Я хочу выбрать строки, которые содержат определенные коды, используя внутреннее соединение.т. е.
DATAFRAME: df_diags
Диагностика пациента
1 O244.12
2 244.12
3 250.01
4 E11.1
другой содержит серию регулярных выражений, которые я хочу использовать в качестве своего ключа.т. е.
ДАННЫЕ КАДРА: коды df_ 1017 *
код
\ b (\ 250 [0-9] 0. *)
\ b (\ O244 [0-9]. *)
\ b (\ E11. *)
Используемый код выглядит следующим образом:
df = df_diags.join(df_codes, F.expr("code rlike DIAG"), "inner")
Код представляется предпочтительнымвыбрав 244.12 вместо O244.12, как и следовало ожидать.Он работает для всех других кодов.
т.е.
Код ДИАГНОСТИКИ ПАЦИЕНТА
2 244.12 \ b (\ O244 [0-9]. *)
3 250.01 \ b (\ 250 [0-9] 0. *)
4 E11.1 \ b (\ E11. *)
Может кто-нибудь помочь объяснить, почему это может происходить?Что-то странное в «О»?
Заранее спасибо!