通过读取parquet文件创建了一个DataFrame。我想转换那个DataFrame并创建一个新的DataFrame。
我的输入文件:
Name PhoneNumber
Shankar 2323232232
Ramesh 232j23j232
期望输出文件:
SHANKAR 2323232232
RAMESH 23223232
读取输入文件示例代码:
JavaSparkContext sc // An existing SparkContext.
SQLContext sqlContext = new org.apache.spark.sql.SQLContext(sc)
// Create the DataFrame
DataFrame df = sqlContext.read().parquet("parquet file");
我想在Name列上应用upperCase
,在PhoneNumber列上应用filter any String or special characters
(应该只接受数字)。
应该可以:
import static org.apache.spark.sql.functions.*;
df.select(
upper(col("Name")).alias("Name"),
regexp_replace(col("PhoneNumber"), "[^0-9]", "").alias("PhoneNumber"));