У меня есть два кадра данных ddf_1 и ddf_2, которые имеют общий столбец строковых идентификаторов. Моя цель - создать новый логический столбец is_fine в ddf_1, содержащий True, если идентификатор содержался в ddf_1 и ddf_2, или False, если идентификатор не содержался в ddf_1 и ddf_2.
Рассмотрим данные этого примера:
#### test
#example data
data_1 = {
'fruits': ["apples", "banana", "cherry"],
'myid': ['1-12', '2-12', '3-13'],
'meat': ["pig", "cow", "chicken"]}
data_2 = {
'furniture': ["table", "chair", "lamp"],
'myid': ['1-12', '0-11', '2-12'],
'clothing': ["pants", "shoes", "socks"]}
df_1 = pd.DataFrame(data_1)
ddf_1 = spark.createDataFrame(df_1)
df_2 = pd.DataFrame(data_2)
ddf_2 = spark.createDataFrame(df_2)
Я представляю себе функцию примерно так:
def func(df_1, df_2, column_1, column_2):
if df_1.column_1 != df_2.column_2:
return df_1.withColumn('is_fact', False)
else:
return df_1.withColumn('is_fact', True)
return df_1
Требуемый вывод должен выглядеть следующим образом: