sne*_*ngh 1 python amazon-s3 pandas boto3
大家好,我知道很多类似的问题,我会在这里找到,但我有一个正确执行的代码,它返回五个记录,我的查询是我应该如何只读取整个文件并最后返回所需的行,假设我有 csv文件的大小为 GB,所以我不想返回整个 GB 文件数据,只获取 5 条记录,所以请告诉我应该如何获取它......如果可能,请解释我的代码,如果它不好,为什么它不好.. 代码:
import boto3
from botocore.client import Config
import pandas as pd
ACCESS_KEY_ID = 'something'
ACCESS_SECRET_KEY = 'something'
BUCKET_NAME = 'something'
Filename='dataRepository/source/MergedSeedData(Parts_skills_Durations).csv'
client = boto3.client("s3",
aws_access_key_id=ACCESS_KEY_ID,
aws_secret_access_key=ACCESS_SECRET_KEY)
obj = client.get_object(Bucket=BUCKET_NAME, Key=Filename)
Data = pd.read_csv(obj['Body'])
# data1 = Data.columns
# return data1
Data=Data.head(5)
print(Data)
Run Code Online (Sandbox Code Playgroud)
这是我的代码,运行良好,也从 s3 存储桶获取 5 条记录,但我已经解释了我正在寻找的任何其他查询,请随时给我发短信...thnxx 提前
您可以使用 pandas分块读取文件的功能,只需加载所需的数据即可。
data_iter = pd.read_csv(obj['Body'], chunksize = 5)
data = data_iter.get_chunk()
print(data)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3601 次 |
| 最近记录: |