#python #dataframe #pyspark #jupyter-notebook
#python #фрейм данных #pyspark #jupyter-ноутбук
Вопрос:
Вот мой код :
for s, sub_direct in enumerate(os.listdir(path_csv1)):
for i, file in enumerate (glob.glob(path_csv1 "/" sub_direct "/*.csv")):
df_spa = spark.read.csv(file,header=True,sep=",")
df_spa = df_spa.withColumn("Batt_id", sub_direct)
#df=df.append(df_spa)
df = df.union(df_spa)
На основе значения sub_direct
я обновлю свой столбец df_spa ['Batt_id']
Я получил следующую ошибку, и я не мог понять, как ее решить
Я знаю, что это ожидает столбец, но здесь мне нужно присвоить одну и ту же строку всем значениям столбца с папкой
Возможно ли это? lit не работает для меня
Ответ №1:
использовать lit()
при передаче переменной
from pyspark.sql import functions as F
df_spa = df_spa.withColumn("Batt_id", F.lit(sub_direct))