在 Kaggle 中读取数据集的方法主要分为 平台内 Notebook 读取本地环境读取 两种场景,以下是具体步骤和注意事项:


一、Kaggle Notebook 内读取数据集

1. 添加数据集到 Notebook

  • 在 Notebook 页面左侧边栏点击 + Add Data
  • 搜索并选择目标数据集(如公开数据集或自己上传的私有数据集),点击 Add
  • 数据集会挂载到路径 /kaggle/input/数据集名称/

2. 读取常见格式文件

  • CSV/Excel 文件:使用 pandas 直接读取:
import pandas as pd 
df = pd.read_csv('/kaggle/input/dataset-name/file.csv')
  • 图像文件:遍历目录或使用 os 模块获取路径:
import os 
image_paths = [os.path.join(root, file) for root, _, files in os.walk('/kaggle/input')  for file in files]

3. 多文件处理

  • 若数据集包含多个子文件夹(如图像分类数据集),可使用 glob pathlib 批量读取:
from pathlib import Path 
image_dir = Path('/kaggle/input/dataset-name/train')
image_files = list(image_dir.glob('*.jpg'))

二、本地环境读取数据集(需提前下载)

1. 通过 Kaggle API 下载数据集

  • 安装 Kaggle 库:pip install kaggle
  • 配置 API 密钥:将 kaggle.json 文件放入 ~/.kaggle/ 目录
  • 使用命令行下载(示例):
kaggle datasets download -d username/dataset-name

2. 读取本地文件

  • 解压后通过相对或绝对路径读取:
df = pd.read_csv('./dataset-name/file.csv')

三、注意事项

  1. 路径问题
    • Kaggle Notebook 中数据集固定存储在 /kaggle/input/ 路径下,需根据实际文件名调整路径
    • 若路径含中文或特殊字符,可能需使用 os.path 处理路径兼容性
  1. 权限问题
    • 私有数据集需在添加时验证权限,公开数据集可直接挂载
  1. 大数据集处理
    • 使用分块读取(chunksize 参数)或 dask 库优化内存

四、示例代码(Kaggle Notebook)

# 读取 CSV 文件 
import pandas as pd 
train_df = pd.read_csv('/kaggle/input/titanic/train.csv') 
test_df = pd.read_csv('/kaggle/input/titanic/test.csv') 
 
# 读取图像文件 
from tensorflow.keras.preprocessing.image  import load_img 
image = load_img('/kaggle/input/cats-and-dogs/train/cat.1.jpg')

通过以上方法,可灵活应对不同格式和场景的数据集读取需求。如需更详细的操作(如处理压缩包),可参考 中的分步指南。