我对Pyspark非常陌生。我试图将我使用“www.example.com(WORK_FOLDER)”命令收集的数组列表(文件列表)添加mssparkutils.fs.ls到DataFrame。但我得到“TypeError:StructType无法接受类型〈class 'str'〉中的对象'20230205'”错误。
代码如下:
# Validation Id Checking
columns = StructType([StructField('Name',StringType())])
FileList = []
files = mssparkutils.fs.ls(WORK_FOLDER)
for file in files:
if file.name.endswith('csv'):
fileName = file.name
array = fileName.split("_")
for word in array:
index = word.find('Exchange')
if index != 0:
FileList.append(str(word))
print(FileList)
df = spark.createDataFrame(data=FileList,schema=columns) `
========================================================================================
print(FileList)命令给出以下输出:['20230205',' 001040.csv','20230205',' 200005.csv','20230206',' 200006.csv','20230207',' 200021.csv','20230208',' 200007.csv','20230209',' 200010.csv','20230210','200009.csv']
我正在尝试将“FileList”值添加到Dataframe df。使用列名'Name'的StringType。
1条答案
按热度按时间9wbgstp71#
在创建数据框之前,请确保输入文件列表具有2D结构
结果