拆分为多列
通过从 DataFrame 中移除无效行,您已经大幅清理了数据。现在,您希望基于 DataFrame 的内容生成具有实际含义的特定列,进一步完成一些转换。
当前已提供 spark 上下文和最新版本的 annotations_df DataFrame。pyspark.sql.functions 以别名 F 可用。
本练习是课程的一部分
使用 PySpark 进行数据清洗
练习说明
- 按制表符分割
"_c0"列的内容,并将结果存入名为split_cols的变量。 - 基于上述变量的前 4 个元素,在名为
split_df的 DataFrame 上添加以下列:folder、filename、width、height。 - 将变量
split_cols作为一列添加。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Split the content of _c0 on the tab character (aka, '\t')
split_cols = ____(annotations_df['____'], '\t')
# Add the columns folder, filename, width, and height
split_df = annotations_df.withColumn('folder', split_cols.getItem(____))
split_df = split_df.withColumn('filename', ____
split_df = split_df.____
____
# Add split_cols as a column
split_df = split_df.____