Làm sạch dữ liệu với PySpark
Mike Metzger
Data Engineering Consultant
DataFrame:
# Trả về các hàng có name bắt đầu bằng "M" voter_df.filter(voter_df.name.like('M%'))# Chỉ trả về name và position voters = voter_df.select('name', 'position')
voter_df.filter(voter_df.date > '1/1/2019') # hoặc voter_df.where(...)
voter_df.select(voter_df.name)
voter_df.withColumn('year', voter_df.date.year)
voter_df.drop('unused_column')
~voter_df.filter(voter_df['name'].isNotNull())
voter_df.filter(voter_df.date.year > 1800)
voter_df.where(voter_df['_c0'].contains('VOTE'))
voter_df.where(~ voter_df._c1.isNull())
import pyspark.sql.functions as F
voter_df.withColumn('upper', F.upper('name'))
voter_df.withColumn('splits', F.split('name', ' '))
voter_df.withColumn('year', voter_df['_c4'].cast(IntegerType()))
Các hàm/biến đổi tiện ích để làm việc với ArrayType()
.size(<column>) - trả về độ dài cột ArrayType()
.getItem(<index>) - lấy phần tử tại chỉ số của cột danh sách.
Làm sạch dữ liệu với PySpark