我想知道是否有一种方法可以自动化。。。我想做一个函数,在其中我会告诉,我想加入多少列。如果我有一个有3列的dataframe,并给出一个参数“numberofcolumns=3”,那么它将连接列:0、1、2。但是如果我有一个包含7列的dataframe,并给出一个参数“numberofcolumns=7”,那么它将连接列:0、1、2、3、4、5、6。列的名称总是相同的:从“0”到“number\ of\ columns-1”。
有什么办法吗?或者我必须有另一个函数,如果我有其他数量的列合并?
def my_function(spark_column, name_of_column):
new_spark_column = spark_column.withColumn(name_of_column, concat_ws("",
col("0").cast("Integer"),
col("1").cast("Integer"),
col("2").cast("Integer"),
col("3").cast("Integer"),
col("4").cast("Integer"),
col("5").cast("Integer"),
col("6").cast("Integer") ))
1条答案
按热度按时间mfuanj7w1#
您可以使用列表理解来执行此操作: