You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jupyter Notebook中读取谷歌共享云端多CSV文件并做统计分析

Google共享云端批量文件处理方案(Pandas + Jupyter Notebook)

为什么你的代码会报404错误?

你用的https://drive.google.com/uc?id=是Google Drive单个文件的直接下载链接,无法访问共享文件夹。你把文件夹ID当成单个文件ID传入,自然会返回404。

正确的处理步骤

1. 准备工作:安装依赖并配置授权

首先安装用于访问Google Drive的pydrive库:

pip install pydrive

然后去Google Cloud Console完成以下操作:

  • 创建新项目,启用「Google Drive API」
  • 创建OAuth客户端ID(应用类型选「桌面应用」)
  • 下载生成的credentials.json文件,放到Jupyter Notebook的工作目录下

2. 批量读取共享云端的45个文件

以下代码会自动授权并读取共享文件夹内的所有CSV文件(如果你的文件是其他格式,替换pd.read_csv为对应方法即可):

import pandas as pd
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive

# 授权登录
gauth = GoogleAuth()
gauth.LocalWebserverAuth()  # 弹出浏览器完成登录授权
drive = GoogleDrive(gauth)

# 共享文件夹ID(从你的URL https://drive.google.com/drive/folders/ABC 中提取ABC部分)
folder_id = "ABC"

# 获取文件夹下所有未删除的文件
file_list = drive.ListFile({'q': f"'{folder_id}' in parents and trashed=false"}).GetList()

# 批量读取文件并存储数据
all_dfs = []
file_sums = []

for file in file_list:
    # 仅处理CSV文件(根据实际格式调整)
    if file['title'].endswith('.csv'):
        # 下载文件到本地临时路径
        temp_file = drive.CreateFile({'id': file['id']})
        temp_file.GetContentFile(file['title'])
        
        # 读取文件并统一列名大小写(避免col1/Col1的差异)
        df = pd.read_csv(file['title'])
        df.columns = df.columns.str.lower()
        
        # 需求2:计算当前文件col1、col2、col3的总和
        col_sums = df[['col1', 'col2', 'col3']].sum()
        file_sums.append({
            '文件名': file['title'],
            'col1总和': col_sums['col1'],
            'col2总和': col_sums['col2'],
            'col3总和': col_sums['col3']
        })
        
        # 将当前文件数据加入总列表
        all_dfs.append(df)

# 合并所有文件为一个大DataFrame
combined_df = pd.concat(all_dfs, ignore_index=True)

3. 完成剩余需求

需求2结果查看

把每个文件的总和转换成DataFrame展示:

file_sums_df = pd.DataFrame(file_sums)
print(file_sums_df)

需求3:按colx分组计算总和

# 按colx分组,计算col1、col2、col3的分组总和
grouped_sums = combined_df.groupby('colx')[['col1', 'col2', 'col3']].sum()
print(grouped_sums)

注意事项

  • 如果文件是Excel格式,替换pd.read_csv为pd.read_excel(需提前安装openpyxl库)
  • 确保共享文件夹对你的Google账号有「查看」权限
  • 若授权失败,检查credentials.json是否正确放置,或重新生成授权文件

内容的提问来源于stack exchange,提问作者anagha s

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 12:35:31