AWS SageMaker数据准备的一种解决方法是使用Python SDK(boto3)与AWS S3进行交互来准备数据。以下是一个包含代码示例的解决方法:
pip install boto3
import boto3
import os
from sklearn.model_selection import train_test_split
AWS_ACCESS_KEY_ID = 'your_access_key'
AWS_SECRET_ACCESS_KEY = 'your_secret_access_key'
s3 = boto3.client('s3',
aws_access_key_id=AWS_ACCESS_KEY_ID,
aws_secret_access_key=AWS_SECRET_ACCESS_KEY)
# 下载数据集
!wget https://example.com/dataset.csv
# 上传数据集至S3
bucket_name = 'your_bucket_name'
s3.upload_file('dataset.csv', bucket_name, 'dataset.csv')
# 从S3下载数据集
s3.download_file(bucket_name, 'dataset.csv', 'dataset.csv')
# 读取数据集
import pandas as pd
data = pd.read_csv('dataset.csv')
# 将数据集分割为训练集和测试集
train_data, test_data = train_test_split(data, test_size=0.2, random_state=42)
# 保存训练集和测试集为CSV文件
train_data.to_csv('train_data.csv', index=False)
test_data.to_csv('test_data.csv', index=False)
# 上传训练集和测试集至S3
s3.upload_file('train_data.csv', bucket_name, 'train/train_data.csv')
s3.upload_file('test_data.csv', bucket_name, 'test/test_data.csv')
这就是一个使用Python SDK(boto3)与AWS S3进行数据准备的解决方法。你可以根据你的具体需求和数据集进行适当的修改和调整。