使用 PySpark 进行特征工程
John Hogue
Lead Data Scientist, General Mills
优点

缺点

明确数据方向

DataFrame.join(other, # 要合并的另一个 DataFrameon=None, # 连接键how=None) # 连接类型(默认 'inner')
# 查看数据框前几行
hdf.show(2)
+----------+--------------------+
| dt| nm|
+----------+--------------------+
|2012-01-02| New Year Day|
|2012-01-16|Martin Luther Kin...|
+----------+--------------------+
only showing top 2 rows
# 指定连接条件 cond = [df['OFFMARKETDATE'] == hdf['dt']]# 将 hdf 左连接到 df df = df.join(hdf, on=cond, 'left')# 银行假日发生了多少笔销售? df.where(~df['nm'].isNull()).count()
0
# 将数据框注册为临时表
df.createOrReplaceTempView("df")
hdf.createOrReplaceTempView("hdf")
# 编写 SQL 语句
sql_df = spark.sql("""
SELECT
*
FROM df
LEFT JOIN hdf
ON df.OFFMARKETDATE = hdf.dt
""")
使用 PySpark 进行特征工程