0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

WatsonStudioのNotebookでプロジェクトのデータ資産としてアップロード済みのExcelファイルまたはCSVファイルを pandasのDataFrameに読み込む

Last updated at Posted at 2022-05-09

WatsonStudioのNotebookでプロジェクトのデータ資産としてアップロード済みのExcelファイルまたはCSVファイルを pandasのDataFrameに読み込むのは、WatsonStudioのNotebookがコードを生成してくれるので非常に簡単にできます。

参考(製品ドキュメント):
https://dataplatform.cloud.ibm.com/docs/content/wsj/analyze-data/data-load-support.html?context=cpdaas&audience=wdp&locale=en

0. (前準備)Notebookを開いた状態ででプロジェクトのデータ資産としてファイルをアップロード

既にアップロード済みの場合はここは飛ばしてください。
まだファイルをプロジェクトのデータ資産としてアップロードしていない場合は、以下の方法でアップロードできます。

0-1. notebookを編集状態で開き、右上の01/00のアイコン「データの検索と追加」をクリックします。

image.png

データの画面が右側に開きます。

0-2. 「ここにファイルをドラッグ・アンド・ドロップするか、アップロードしてください。」と書かれた四角のエリアにアップロードしたいファイルをドラッグ・アンド・ドロップするか、そのエリアをクリックしてファイルダイアログからファイルを選択してアップロードを実行します。

アップロードが完了すると 「ここにファイルをドラッグ・アンド・ドロップするか、アップロードしてください。」の四角の下に、ファイル名と「コードに挿入」のメニューが表示されます。

1. NotebookにpandasのDataFrameに読み込むためのセルを準備

ここでは新たにセルを追加してそこにカーソルを置いて、コードを入れるようにします。
既存のセルでも問題ありませんが、その場合カーソルのある部分からpandasのDataFrameに読み込むコードが生成されます。

上のメニューアイコンからプラスのアイコンをクリックしてセルを追加します。
image.png

2. 追加したセルをクリック

 
追加したセルをクリックしてカーソルをセルにおきます。

image.png

3. 右側のデータのエリアからpandasのDataFrameに読み込みたいファイルの下にある、「コードに挿入」のメニューをクリック。表示されたドロップダウンメニューから「pandas DataFrame」をクリック。

image.png

セルにpandasのDataFrameであるdf_data_X (Xは数字)に指定したファイルを読み込むコードが挿入されます。df_data_の後のXの数字は1だったり、0だったりします。

どこにも書いてはないですが、CSVは1でExcelは0のような気がしています(あくまでも個人の考えです)。

下のイメージでは、df_data_Xdf_data_1となっています。
image.png

4. セルの実行

セルを実行してdf_data_X (Xは数字)にデータを読み込ませます。
最後にdf_data_X.head()のコードが入っているので、読み込んだ最初の5行が表示されます。
image.png

最初の1行目はデフォルトでヘッダー項目行とみなされます。

もし最初の1行目はヘッダー項目行ではなくデータ行の場合は、
df_data_1 = pd.read_csv(body)
の行をpandas.read_csvのオプションを付けて変更します。header=Noneを引数に付けます。
デフォルトで数字の列名がつきます。

df_data_1 = pd.read_csv(body, header=None)

image.png

数字の列名ではなく、列名を指定したい場合は
names=['<列名1>', '<列名2>']
のようにnamesを引数に加えます。

df_data_1 = pd.read_csv(body, header=None, names=['item', 'number'])

image.png

Excel(read_excel)の場合も同様のオプションです。

これでpandasのDataFrameにデータが入りました!

次に別のファイルを読み込む場合、同じ種類のファイルの場合は同じdf_data_X (Xは数字)という変数名が使用され、上書きされてしまうので、データを取っておきたい場合はコピーしておきます。

df_my_data1 = df_data_1.copy()

ちなみにCSV, ExcelファイルだけでなくJSONなど他のファイルタイプも同じ感じで読み込めますので、他のファイルタイプも読み込みたい場合はドキュメントを参考にしてみてください。

以上です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?