1
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

Seabornのpairplot関数の結果グラフをGoogle ColaboratoryからGoogle driveにアップロードする方法

この記事でできること

表題の通りです。sklearnの関数で取得できるUCI Machine Learning Repositoryのwineデータセットを利用します

手順

  1. ColaboratoryにGoogle Driveのアクセス権限を与える
  2. Google Driveにファイルの出力をする
    手順2までにはpairplot用のDataFrameを定義しておきましょう

詳しく

1. wineデータセットの読み込み

学習に使用することになりそうですし、DataFrameを学習データ(X_train)で作成するのでデータ分割もしています


from sklearn.datasets import load_wine
wine_dataset = load_wine()

from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(
        wine_dataset['data'], wine_dataset['target'],
        test_size=0.3, random_state=0)

2. DataFrameの作成


wine_df = pd.DataFrame(X_train, columns=wine_dataset.feature_names)
wine_df['species'] = y_train
wine_df.head()

出力結果はこうなります
image.png

3. ColaboratoryにGoogle Driveのアクセス権限を与える


from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials

auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)

リンクと入力欄が出力されます。そのリンクを踏んでGoogleアカウントでログインして出てきた文字列をコピーして、Google Colaboratoryに戻ってきて入力欄にペーストしてエンター

4. seabornでpairplotを作成し、pngとして保存しておく


import seaborn as sns
sns.pairplot(wine_df, hue='species').savefig('wine_pairplot_hue.png')

このままだとColaboratoryのローカル(Google DriveのColab Notebooksからも見れない)にあるので、Google Driveへのアップロードが必要になります。

5. Google Driveに出力


upload_file_2 = drive.CreateFile()
upload_file_2.SetContentFile("wine_pairplot_hue.png")
upload_file_2.Upload()

6. 結果

image.png

ちゃんと登録できてます。ちなみにワインデータセットくらい特徴量があると画質の影響で文字が見えなくなるので他の対処が必要そうです。(Colaboratory上でもプロットされます。こちらはズーム可能)

image.png

以上です

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
1
Help us understand the problem. What are the problem?