8

我正在尝试使用 Google Datalab 读取 ipython 笔记本中的文件,基本的 pd.read_csv() 因为我找不到文件的路径。我在本地拥有它,并将其上传到存储桶中的谷歌云存储。

我运行了以下命令来了解我在哪里

os.getcwd()

给出'/content/myemail@gmail.com'

os.listdir('/content/myemail@gmail.com')

给出 ['.git', '.gitignore', 'datalab', 'Hello World.ipynb', '.ipynb_checkpoints']

4

3 回答 3

10

下面将对象的内容读入一个名为的字符串变量中text

%%storage read --object "gs://path/to/data.csv" --variable text

然后

from cStringIO import StringIO
mydata = pd.read_csv(StringIO(text)) 
mydata.head()

希望 Pandas 将支持"gs://"URL(因为它s3://目前允许直接从 Google Cloud 存储读取。

我发现以下文档非常有用:

https://github.com/GoogleCloudPlatform/datalab/tree/master/content/datalab/tutorials

希望有帮助(刚开始使用Datalab,所以也许有人很快就会有更清洁的方法)。

于 2016-01-11T12:27:44.340 回答
1

您还可以通过创建 FederatedTable 包装器对象直接针对 Cloud Storage 中的 CSV 文件运行 BigQuery 查询。这是描述here:

https://github.com/GoogleCloudPlatform/datalab/blob/master/content/datalab/tutorials/BigQuery/Using%20External%20Tables%20from%20BigQuery.ipynb

于 2016-01-12T01:41:38.627 回答
0

我将Iris.csv上传到我的数据实验室根目录。

然后就像您在问题中提到的那样运行以下代码单元。

os.getcwd()

我得到了'/content/datalab/docs'

然后我运行了以下代码单元。

iris = pd.read_csv('/content/datalab/Iris.csv')
print(iris)

它对我有用。

于 2020-04-24T10:48:45.790 回答