7 数据导入与导出

在上一篇的常用数据结构对比中,我们了解了 Pandas 中的几种基本数据结构,如 SeriesDataFrame。在本篇中,我们将重点关注数据的导入与导出,这是数据分析流程中至关重要的一步。良好的数据导入与导出方式可以帮助我们高效地处理和分享数据。

数据导入

Pandas 提供了多种方式来导入数据。我们最常用的几种格式包括 CSV、Excel、JSON、SQL 等。下面我们将逐一介绍。

1. 从 CSV 文件导入数据

CSV(逗号分隔值)是数据文件中最常见的格式之一。使用 pandas.read_csv() 函数可以轻松导入 CSV 文件。

1
2
3
4
5
6
7
import pandas as pd

# 导入 CSV 文件
df = pd.read_csv('data.csv')

# 显示导入的数据
print(df.head())

这里,data.csv 是要导入的文件名,df.head() 函数显示数据的前五行。

处理 CSV 文件的常见参数

  • sep: 指定字段分隔符,默认为,
  • header: 指定行号用作列名,默认为0。
  • index_col: 用作行索引的列号或列名。

例如:

1
df = pd.read_csv('data.csv', sep=';', header=0, index_col=0)

2. 从 Excel 文件导入数据

对于 Excel 文件,Pandas 提供了 pandas.read_excel() 函数。

1
2
3
4
5
# 导入 Excel 文件
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')

# 显示导入的数据
print(df.head())

同样,您可以指定其他参数,如 usecols 来选择列,仅导入感兴趣的数据。

3. 从 JSON 文件导入数据

JSON(JavaScript对象表示法)是一种轻量级的数据交换格式。使用 pandas.read_json() 可以导入 JSON 格式的数据。

1
2
3
4
5
# 导入 JSON 文件
df = pd.read_json('data.json')

# 显示导入的数据
print(df.head())

4. 从数据库导入数据

Pandas 还支持直接从 SQL 数据库导入数据,使用 pandas.read_sql() 方法。

1
2
3
4
5
6
7
8
9
10
from sqlalchemy import create_engine

# 创建数据库连接
engine = create_engine('sqlite:///data.db')

# 导入数据
df = pd.read_sql('SELECT * FROM my_table', engine)

# 显示导入的数据
print(df.head())

数据导出

数据处理完成后,您可能需要将结果保存到本地文件系统或数据库中。Pandas 提供了多种数据导出选项。

1. 导出到 CSV 文件

使用 DataFrame.to_csv() 方法可以将数据框保存为 CSV 文件。

1
2
# 将数据框导出到 CSV 文件
df.to_csv('output.csv', index=False)

这里 index=False 是为了不将行索引写入文件。

2. 导出到 Excel 文件

对于 Excel 文件,使用 DataFrame.to_excel() 方法。

1
2
# 将数据框导出到 Excel 文件
df.to_excel('output.xlsx', sheet_name='Sheet1', index=False)

3. 导出到 JSON 文件

您也可以将数据导出为 JSON 文件,使用 DataFrame.to_json() 方法。

1
2
# 将数据框导出到 JSON 文件
df.to_json('output.json')

4. 导出到数据库

同样,您可以将数据框保存到 SQL 数据库中,使用 DataFrame.to_sql() 方法。

1
2
# 将数据框导出到数据库
df.to_sql('my_table', con=engine, if_exists='replace', index=False)

小结

在本篇中,我们学习了如何使用 Pandas 导入和导出常见格式的数据。这些基本操作为后续的数据选择与过滤奠定了基础。在数据分析中,数据的正确导入和导出可以帮助我们高效地进行数据处理和结果分享。在接下来的章节中,我们将深入探讨数据选择与过滤的方法,以便我们能够从庞大的数据集中提取有用的信息。

7 数据导入与导出

https://zglg.work/pandas-zero/7/

作者

AI免费学习网(郭震)

发布于

2024-08-10

更新于

2024-08-10

许可协议

分享转发

交流

更多教程加公众号

更多教程加公众号

加入星球获取PDF

加入星球获取PDF

打卡评论