1
我們假設我有一個CSV文件中的兩列A和B的表。我從列A中選擇最大值[最大值= 100],並且我需要使用JavaRDD操作返回B列[返回值= AliExpress]的相應值而不使用數據框。SparkRDD操作
輸入表:
COLUMN A Column B
56 Walmart
72 Flipkart
96 Amazon
100 AliExpress
輸出表:
COLUMN A Column B
100 AliExpress
這是我試過至今
源碼:
SparkConf conf = new SparkConf().setAppName("SparkCSVReader").setMaster("local");
JavaSparkContext sc = new JavaSparkContext(conf);
JavaRDD<String> diskfile = sc.textFile("/Users/apple/Downloads/Crash_Data_1.csv");
JavaRDD<String> date = diskfile.flatMap(f -> Arrays.asList(f.split(",")[1]));
從上面的代碼我可以只取一家公司lumn數據。反正有兩列。有什麼建議麼。提前致謝。
你可以轉換此代碼段轉換成Java請... df.rdd 。 map(row =>(row(0).toString.toInt,row(1))) .sortByKey(false) .take(1).foreach(println) –