<tfoot id='zaenv'></tfoot>

        <small id='zaenv'></small><noframes id='zaenv'>

        <legend id='zaenv'><style id='zaenv'><dir id='zaenv'><q id='zaenv'></q></dir></style></legend>
        • <bdo id='zaenv'></bdo><ul id='zaenv'></ul>

      1. <i id='zaenv'><tr id='zaenv'><dt id='zaenv'><q id='zaenv'><span id='zaenv'><b id='zaenv'><form id='zaenv'><ins id='zaenv'></ins><ul id='zaenv'></ul><sub id='zaenv'></sub></form><legend id='zaenv'></legend><bdo id='zaenv'><pre id='zaenv'><center id='zaenv'></center></pre></bdo></b><th id='zaenv'></th></span></q></dt></tr></i><div id='zaenv'><tfoot id='zaenv'></tfoot><dl id='zaenv'><fieldset id='zaenv'></fieldset></dl></div>

        使用PANAS从命令行打开存储在GCS中的Excel文件

        Using pandas to open Excel files stored in GCS from command line(使用PANAS从命令行打开存储在GCS中的Excel文件)
          <i id='c32yi'><tr id='c32yi'><dt id='c32yi'><q id='c32yi'><span id='c32yi'><b id='c32yi'><form id='c32yi'><ins id='c32yi'></ins><ul id='c32yi'></ul><sub id='c32yi'></sub></form><legend id='c32yi'></legend><bdo id='c32yi'><pre id='c32yi'><center id='c32yi'></center></pre></bdo></b><th id='c32yi'></th></span></q></dt></tr></i><div id='c32yi'><tfoot id='c32yi'></tfoot><dl id='c32yi'><fieldset id='c32yi'></fieldset></dl></div>

              • <bdo id='c32yi'></bdo><ul id='c32yi'></ul>
                • <legend id='c32yi'><style id='c32yi'><dir id='c32yi'><q id='c32yi'></q></dir></style></legend>

                  <small id='c32yi'></small><noframes id='c32yi'>

                  <tfoot id='c32yi'></tfoot>
                    <tbody id='c32yi'></tbody>
                  本文介绍了使用PANAS从命令行打开存储在GCS中的Excel文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  以下代码片段摘自Google教程,它只是打印给定存储桶中GCP上的文件名:

                  from google.cloud import storage
                  
                  
                  def list_blobs(bucket_name):
                      """Lists all the blobs in the bucket."""
                      # bucket_name = "your-bucket-name"
                  
                      storage_client = storage.Client()
                  
                      # Note: Client.list_blobs requires at least package version 1.17.0.
                      blobs = storage_client.list_blobs(bucket_name)
                  
                      for blob in blobs:
                          print(blob.name)
                  
                  list_blobs('sn_project_data')
                  

                  否,我可以从命令行运行:

                  $ python path/file.py
                  

                  在我的终端中,所述存储桶中的文件被打印出来。太好了,它起作用了! 然而,这并不是我的目标。我想要打开一个文件并采取行动。例如:

                  df = pd.read_excel(filename)
                  print(df.iloc[0])
                  

                  但是,当我将路径传递给上面的文件路径时,返回的错误为无效的文件路径。因此,我确信存在某种特定于GCP的函数调用来实际访问这些文件.

                  我应该运行哪些命令?

                  编辑:此视频https://www.youtube.com/watch?v=ED5vHa3fE1Q展示了打开文件的技巧,在此过程中需要使用StringIO。但它不支持EXCEL文件,因此不是有效的解决方案。

                  推荐答案

                  read_excel()目前不支持谷歌云存储文件路径,但可以读取字节数据。

                  pandas.read_excel(io,Sheet_Name=0,Header=0,Names=None, INDEX_COOL=NONE,USECOLS=NONE,EXCEZE=FALSE,DTYPE=NONE,ENGINE=NONE, Converters=NONE、TRUE_VALUES=NONE、FALSE_VALUES=NONE、SKIPROWS=NONE、 NROWS=NONE,NA_VALUES=NONE,KEEP_DEFAULT_NA=TRUE,NA_过滤=TRUE, VERBOSE=FALSE,PARSE_DATES=FALSE,DATE_PARSER=NONE,千位=NONE, Comment=None,Skipfooter=0,Convert_Float=True,MANGLE_DUPE_COLS=True, STORAGE_OPTIONS=无)

                  参数:io:字符串、字节、ExcelFile、xlrd.Book、Path Object、或 类文件对象

                  您可以做的是使用blob对象,然后使用download_as_bytes()将该对象转换为字节。

                  将此Blob的内容作为字节对象下载。

                  对于此示例,我只使用了random sample xlsx文件并读取了第一页:

                  from google.cloud import storage
                  import pandas as pd
                  
                  bucket_name = "your-bucket-name"
                  blob_name = "SampleData.xlsx"
                  
                  storage_client = storage.Client()
                  bucket = storage_client.bucket(bucket_name)
                  blob = bucket.blob(blob_name)
                  
                  data_bytes = blob.download_as_bytes()
                  
                  df = pd.read_excel(data_bytes)
                  print(df)
                  

                  测试已完成:

                  这篇关于使用PANAS从命令行打开存储在GCS中的Excel文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  How to solve memory issues while multiprocessing using Pool.map()?(如何解决使用Pool.map()进行多处理时的内存问题?)
                  Python - How to use FastAPI and uvicorn.run without blocking the thread?(Python-如何使用FastAPI和uvicorn.run而不阻塞线程?)
                  How to increment a shared counter from multiple processes?(如何从多个进程递增共享计数器?)
                  Computing Rolling autocorrelation using Pandas.rolling(用Pandas.Rolling计算滚动自相关)
                  How to use .rolling() on each row of a Pandas dataframe?(如何对 pandas 数据帧的每一行使用.roll()?)
                  pandas- changing the start and end date of resampled timeseries( pandas -更改重新采样的时间序列的开始和结束日期)
                    <tbody id='EqtF5'></tbody>
                      <i id='EqtF5'><tr id='EqtF5'><dt id='EqtF5'><q id='EqtF5'><span id='EqtF5'><b id='EqtF5'><form id='EqtF5'><ins id='EqtF5'></ins><ul id='EqtF5'></ul><sub id='EqtF5'></sub></form><legend id='EqtF5'></legend><bdo id='EqtF5'><pre id='EqtF5'><center id='EqtF5'></center></pre></bdo></b><th id='EqtF5'></th></span></q></dt></tr></i><div id='EqtF5'><tfoot id='EqtF5'></tfoot><dl id='EqtF5'><fieldset id='EqtF5'></fieldset></dl></div>
                    1. <small id='EqtF5'></small><noframes id='EqtF5'>

                      <legend id='EqtF5'><style id='EqtF5'><dir id='EqtF5'><q id='EqtF5'></q></dir></style></legend>
                      • <bdo id='EqtF5'></bdo><ul id='EqtF5'></ul>

                          <tfoot id='EqtF5'></tfoot>