4

Google Cloud Datalab ノートブックから、できれば使い捨ての CSV ファイルとして、出力データをすばやく取得したいだけです。

私はこれをやった:

writer = csv.writer(open('output.csv', 'wb'))
for row in rows:
    writer.writerow(row)

これによりローカル ファイルが書き込まれますが、ブラウザで開くことも、(方法を参照して) Cloud Datalab からダウンロードすることもできません。

データを CSV ファイルとしてすばやく取得するにはどうすればよいですか? おそらく、ストレージ API を使用してそれを作成する必要があると思いますか? ドキュメントに従うのが少し難しいと感じています。次のようなものがあります。

import gcp
import gcp.storage as storage

// create CSV file? construct filepath? how?

mybucket = storage.Bucket(myfile)
mybucket.create()
4

5 に答える 5

10

少なくとも 2 つのオプションがあります。

Datalab からファイルをローカルにダウンロードする

このオプションは、現在の Datalab コードでは使用できないようです。問題を解決できる Datalabのプル リクエストを送信しました。この修正により、ユーザーは Datalab インターフェイスを使用して、ノートブック (*.ipynb) ではないファイルを編集/ダウンロードできるようになります。プル リクエストの変更を使用して、Datalab からテキスト ファイルをダウンロード/編集できました。

Google Cloud のストレージ バケットにファイルを送信する

次のリンクは、Storage API を使用して Google Cloud のストレージ バケットにファイルを転送するコードを記述するのに役立つ場合があります。

これが実際の例です:

from datalab.context import Context
import datalab.storage as storage

sample_bucket_name = Context.default().project_id + '-datalab-example'
sample_bucket_path = 'gs://' + sample_bucket_name

sample_bucket = storage.Bucket(sample_bucket_name)

# Create storage bucket if it does not exist
if not sample_bucket.exists():
    sample_bucket.create()

# Write an item to the storage bucket
sample_item = sample_bucket.item('stringtofile.txt')
sample_item.write_to('This is a string', 'text/plain')

# Another way to copy an item from Datalab to Storage Bucket
!gsutil cp 'someotherfile.txt' sample_bucket_path

アイテムをコピーしたら、ここをクリックて Google Cloud のストレージ バケットでアイテムを表示します

于 2016-03-05T19:20:59.893 に答える
0

datalab で利用可能な ungit ツールを使用してファイルを Google ソース レポジトリに commit し、gcloud コマンドを使用してそのレポジトリをローカル マシンにクローンします。

C:\\gcloud source repos clone datalab-notebooks --project=your-vm-instance-name
于 2018-05-29T18:56:04.350 に答える