列への分割
無効な行を DataFrame から取り除いたことで、データは大幅にクリーンになりました。次は、DataFrame の内容に基づいて意味のある特定の列を生成し、さらに変換を進めます。
spark コンテキストと、最新の annotations_df DataFrame が用意されています。pyspark.sql.functions はエイリアス F で利用できます。
この演習はコースの一部です
PySpark でデータをクレンジングする
演習の手順
'_c0'列の内容をタブ文字で分割し、split_colsという変数に保存します。- 上の変数の先頭4要素に基づいて、folder、filename、width、height の列を DataFrame
split_dfに追加します。 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.____