Tablib 数据处理库快速入门教程

Tablib 数据处理库快速入门教程

tablib Python Module for Tabular Datasets in XLS, CSV, JSON, YAML, &c. tablib 项目地址: https://gitcode.com/gh_mirrors/ta/tablib

前言

Tablib 是一个强大的 Python 数据处理库,它提供了简单直观的接口来处理表格数据。无论是数据分析师、开发者还是数据科学家,Tablib 都能帮助你高效地处理各种格式的数据。本文将带你快速了解 Tablib 的核心功能和使用方法。

准备工作

在开始之前,请确保:

  1. 已安装 Tablib 库
  2. 使用的是最新版本的 Tablib

创建数据集

数据集(Dataset)是 Tablib 的核心概念,它代表了一组表格数据。

import tablib

# 创建空数据集
data = tablib.Dataset()

添加数据行

让我们从一个简单的名字列表开始:

names = ['Kenneth Reitz', 'Bessie Monke']

for name in names:
    fname, lname = name.split()
    data.append([fname, lname])

查看数据内容:

print(data.dict)
# 输出: [('Kenneth', 'Reitz'), ('Bessie', 'Monke')]

添加表头

为数据列添加标题:

data.headers = ['First Name', 'Last Name']

现在数据将以字典形式展示:

print(data.dict)
# 输出: 
# [{'Last Name': 'Reitz', 'First Name': 'Kenneth'},
#  {'Last Name': 'Monke', 'First Name': 'Bessie'}]

添加数据列

添加年龄列:

data.append_col([22, 20], header='Age')

查看完整数据:

print(data.dict)
# 输出:
# [{'Last Name': 'Reitz', 'First Name': 'Kenneth', 'Age': 22},
#  {'Last Name': 'Monke', 'First Name': 'Bessie', 'Age': 20}]

数据导入导出

导入数据

从CSV文件导入数据:

with open('data.csv', 'r') as f:
    imported_data = tablib.Dataset().load(f)

Tablib 支持多种格式的自动检测和导入。

导出数据

Tablib 支持多种格式的数据导出:

# CSV格式
print(data.export('csv'))

# JSON格式
print(data.export('json'))

# Excel格式
with open('output.xls', 'wb') as f:
    f.write(data.export('xls'))

数据操作

选择行和列

# 选择第一行
print(data[0])

# 选择前两行
print(data[0:2])

# 选择特定列
print(data['First Name'])

删除行和列

# 删除列
del data['Age']

# 删除行范围
del data[0:1]

高级功能

动态列

动态列允许你通过函数动态计算列值:

import random

def random_grade(row):
    return random.randint(60,100)/100.0

data.append_col(random_grade, header='Grade')

数据标签

为数据行添加标签进行分组:

students = tablib.Dataset()
students.headers = ['first', 'last']

students.append(['Kenneth', 'Reitz'], tags=['male', 'technical'])
students.append(['Bessie', 'Monke'], tags=['female', 'creative'])

# 按标签过滤
print(students.filter(['female']).dict)

处理Excel工作簿

# 读取Excel文件
with open('data.xlsx', 'rb') as f:
    data.load(f, 'xlsx')

# 创建多工作表Excel文件
book = tablib.Databook((data1, data2, data3))
with open('output.xls', 'wb') as f:
    f.write(book.export('xls'))

分隔符

在Excel中添加分隔行:

tests.append_separator('Daniel\'s Scores')

结语

Tablib 提供了强大而灵活的数据处理能力,无论是简单的数据操作还是复杂的数据转换,都能轻松应对。通过本教程,你已经掌握了 Tablib 的核心功能,可以开始在实际项目中应用这些知识了。

对于更高级的用法和完整API参考,建议查阅官方文档。Tablib 的简洁API设计使得学习和使用都非常直观,是Python数据处理的有力工具。

tablib Python Module for Tabular Datasets in XLS, CSV, JSON, YAML, &c. tablib 项目地址: https://gitcode.com/gh_mirrors/ta/tablib

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

农爱宜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值