添加 10+ headers 到 Pyspark 数据框

Adding 10+ headers to a Pyspark Dataframe

我有一个没有 headers 的 csv 文件,它由 49 列组成。我得到了一个单独的 csv 文件,其中包含列的描述和列名。除了添加 StructField 49 次(如 StructField("srcip",StringType(),True)),还有另一种方法吗?喜欢函数?

谢谢。

假设您有一个列名列表(通过读取 csv 等),您可以遍历它并创建一个合适的模式

cols = ['a', 'b', 'c']

schema = T.StructType([T.StructField(c, T.StringType()) for c in cols])
# StructType(List(StructField(a,StringType,true),StructField(b,StringType,true),StructField(c,StringType,true)))