如何在GCP上运行基础Python脚本并实现数据处理与输出存储
快速验证代码可在GCP运行的最简步骤
第一步:准备所需文件
你需要提前准备好2个文件:
requirements.txt:声明依赖包,内容如下:
pandas>=1.3.0 numpy>=1.21.0
test.py:你的业务代码,补充输出逻辑后的内容如下:
import pandas as pd import numpy as np df = pd.read_csv("JJO_Xsens_210513.csv", skiprows=1) df["Keep"] = np.where(df.Acc_X <= -50,1,0) df_to_write = df[df.Keep ==1] # 新增输出逻辑,方便验证结果 df_to_write.to_csv("filtered_result.csv", index=False)
第二步:用Cloud Shell快速跑通(无需配置本地环境)
- 打开GCP控制台,点击顶部导航栏右侧的Cloud Shell终端图标,等待环境初始化完成
- 点击Cloud Shell顶部的三个点更多按钮,选择「上传文件」,将你的
JJO_Xsens_210513.csv、requirements.txt、test.py三个文件上传到Cloud Shell - 在Cloud Shell终端执行依赖安装命令:
pip install -r requirements.txt -t . - 执行脚本运行命令:
python3 test.py - 运行完成后执行
ls命令,即可看到生成的filtered_result.csv文件,下载到本地即可验证结果是否符合预期
第三步:对接持久化存储(可选,为后续扩展做准备)
如果需要将输入输出文件存到云存储方便后续调用,可按以下操作:
- 在GCP控制台创建Cloud Storage存储桶,选择就近区域,权限设为私有
- 在Cloud Shell中执行命令将结果上传到存储桶:
gsutil cp filtered_result.csv gs://<你的存储桶名称>/ - 后续可以直接从存储桶读取文件,无需重复上传本地文件,只需将读csv的代码修改为:
df = pd.read_csv("gs://<你的存储桶名称>/JJO_Xsens_210513.csv", skiprows=1)
后续迭代方向(匹配你的长期需求)
- 要实现自动触发预处理:将代码改造成Cloud Functions,设置为存储桶上传触发,每次你上传新的CSV文件到存储桶就会自动运行预处理逻辑
- 要实现文件上传+可视化界面:用Cloud Run或者App Engine部署轻量Python Web应用,前端做文件上传入口,后端跑预处理逻辑,用可视化库生成图表返回给前端
- 要实现多维度数据汇总:将预处理后的结果导入BigQuery,直接用SQL做维度聚合查询,效率远高于本地CSV处理
内容的提问来源于stack exchange,提问作者James Oliver
相关产品推荐
相关产品推荐

