DatabricksのPythonにてDBFS上に変数の値をファイルとして保存する方法


概要

DatabricksのPythonにてDBFS上に変数の値をファイルとして保存する方法を2つ紹介します。

  1. dbutilsを利用する方法
  2. PythonのOpenを利用する方法

詳細は下記のGithub pagesのページをご確認ください。

コードを実行したい方は、下記のdbcファイルを取り込んでください。

https://github.com/manabian-/databricks_tecks_for_qiita/blob/main/tecks/put_file_to_dbfs/dbc/put_file_to_dbfs.dbc

実施手順

1. dbutilsを利用する方法

file_path = f'{file_dir}/dbutils/test.csv'

# データを定義
csv_data = """
string,value,date
"A","100","2021-02-01"
"B","2"00","2021-02-01"
"C","3,00","2021-02-01"
"D","400","2021-02-01"
""".strip() # strip関数により最初と最後の改行を削除

# dbfs上にファイルを保存
dbutils.fs.put(file_path, csv_data, overwrite=True)

2. PythonのOpenを利用する方法

# pythonでdbfsに書き込む場合には`/dbfs`直下に配置
file_path = f'/dbfs/{file_dir}/test.csv'

# データを定義
csv_data = """
string,value,date
"A","100","2021-02-01"
"B","2"00","2021-02-01"
"C","3,00","2021-02-01"
"D","400","2021-02-01"
""".strip() # strip関数により最初と最後の改行を削除

with open(file_path, 'w') as f:
    print("---書き込み開始---") 
    f.writelines(csv_data)
    print("---書き込み完了---")