Вот упрощенная версия кода:
Код: Выделить всё
import pyspark.sql.functions as F
spark = ... # initialization
df = spark.table("a").where(F.col("country") == "abc")
df_unique = df.distinct()
users_without_kids = df_unique.where(F.col("kid_count") == 0)
observation = Observation()
observed_df = users_without_kids.observe(observation, F.count(F.lit(1)).alias("row_count"))
observed_df.writeTo("b")
print(observation.get["row_count"])
Однако мне также хотелось бы знать:
- Сколько записей осталось сразу после первого фильтра ()
Код: Выделить всё
df - Сколько записей осталось после Different() ()
Код: Выделить всё
df_unique
Я пробовал добавлять несколько вызовов наблюдения или добавлять несколько метрик к одному наблюдению, но, похоже, это не работает когда в конце есть только одно действие.
Вопрос:
Есть ли в PySpark способ наблюдать за несколькими кадрами данных (или несколькими метриками) в одном действии, чтобы я мог фиксировать эти счетчики (
Код: Выделить всё
dfПодробнее здесь: https://stackoverflow.com/questions/797 ... ring-multi