可以使用select和selectExpr来操作DataFrame中的列
例如查询:DEST_COUNTRY,ORIGIN_COUNTRY
val path="/Volumes/Data/BigData_code/data/flight-data/json/2015-summary.json"
val dataDF = spark.read.format("json").load(path)
val dataSelect = dataDF.select("DEST_COUNTRY_NAME", "ORIGIN_COUNTRY_NAME")
dataSelect.show(2)
新增一列
判断目的国家和起飞国家是否是同一个。
//创建一个新的列,用来表示目的国家和源国家是否是同一国家
dataDF.selectExpr(
"*", "(DEST_COUNTRY_NAME = ORIGIN_COUNTRY_NAME) as inCountry"
).show(30)
使用withColumn添加列
//添加1列
dataDF.withColumn("numberOne", lit(1)).show(10)
删除一列
//删除列
//方法1:
dataDF.selectExpr("DEST_COUNTRY_NAME", "count").show(2)
//方法2:
dataDF.drop("ORIGIN_COUNTRY_NAME").show(2)
连接和追加行(联合操作)