Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 仅从pyspark目录下的文件中选择第一行_Apache Spark_Pyspark - Fatal编程技术网

Apache spark 仅从pyspark目录下的文件中选择第一行

Apache spark 仅从pyspark目录下的文件中选择第一行,apache-spark,pyspark,Apache Spark,Pyspark,我想使用我尝试使用的Pyspark从目录下的文件中收集所有第一行 file=sc.wholeTextFiles("Location").map(lambda x: x[0]).collect() 但这是给我目录下的文件列表。我想要下面这样的东西,假设我有两个文件 file1.csv file2.csv x,y,z q,r,s 1,2,3 4,5,6 a,b,c d,e,f 我想收集文件{x,y,z}和{q,r,s}的第一行。请

我想使用我尝试使用的Pyspark从目录下的文件中收集所有第一行

file=sc.wholeTextFiles("Location").map(lambda x: x[0]).collect() 
但这是给我目录下的文件列表。我想要下面这样的东西,假设我有两个文件

file1.csv     file2.csv
x,y,z          q,r,s
1,2,3          4,5,6
a,b,c          d,e,f 

我想收集文件{x,y,z}和{q,r,s}的第一行。请帮助我,如何仅从目录下的多个文件中获取第一行

您可以执行以下操作:

def read_firstline(filename):
    with open(filename, 'rb') as f:
        return f.readline()

# files is a list of filenames
rdd_of_firstlines = sc.parallelize(files).flatMap(read_firstline)

您可以执行以下操作:

def read_firstline(filename):
    with open(filename, 'rb') as f:
        return f.readline()

# files is a list of filenames
rdd_of_firstlines = sc.parallelize(files).flatMap(read_firstline)

我怀疑您可能想要分组-但您可能首先希望通过添加可复制的示例,特别是输入和预期输出数据的样本来细化此问题。我怀疑您可能希望分组-但您可能首先希望通过添加可复制的示例,特别是输入和预期输出数据的样本来细化此问题输出数据。