目录
1. CSV 文件
1.1 介绍
1.2 操作方法
1.3 转换
2. Excel 文件
2.1 介绍
2.2 操作方法
2.3 转换
3. SQL 数据库
3.1 介绍
3.2 操作方法
3.3 转换
4. JSON 文件
4.1 介绍
4.2 操作方法
4.3 转换
5. HTML 文件
5.1 介绍
5.2 操作方法
5.3 转换
6. HDF5 文件
6.1 介绍
6.2 操作方法
6.3 转换
7. Parquet 文件
7.1 介绍
7.2 操作方法
7.3 转换
8. Feather 文件
8.1 介绍
8.2 操作方法
8.3 转换
9. Stata 文件
9.1 介绍
9.2 操作方法
9.3 转换
10. SAS 文件
10.1 介绍
10.2 操作方法
10.3 转换
11. SPSS 文件
11.1 介绍
11.2 操作方法
11.3 转换
12. Clipboard
12.1 介绍
12.2 操作方法
12.3 转换
13. Pickle 文件
13.1 介绍
13.2 操作方法
13.3 转换
14. ORC 文件
14.1 介绍
14.2 操作方法
14.3 转换
Pandas 是一个高效的数据分析库,支持多种数据源的读取和写入。每种数据源都有其独特的特点和使用场景。以下是 Pandas 支持的主要数据源及其操作方法,包括如何在
Series
和DataFrame
之间进行转换。
1. CSV 文件
1.1 介绍
CSV(Comma-Separated Values)是一种广泛使用的文本格式,便于存储表格数据。每行表示一条记录,字段之间用逗号分隔。
1.2 操作方法
- 读取:
pd.read_csv()
- 写入:
DataFrame.to_csv()
import pandas as pd# 读取 CSV 文件
df_csv = pd.read_csv('data.csv')# 写入 CSV 文件
df_csv.to_csv('output.csv', index=False)
1.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_csv['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
2. Excel 文件
2.1 介绍
Excel 是一种流行的电子表格应用,通常使用 .xls
和 .xlsx
格式。常用于复杂的表格数据和多工作表的存储。
2.2 操作方法
- 读取:
pd.read_excel()
- 写入:
DataFrame.to_excel()
# 读取 Excel 文件
df_excel = pd.read_excel('data.xlsx', sheet_name='Sheet1')# 写入 Excel 文件
df_excel.to_excel('output.xlsx', index=False)
2.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_excel['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
3. SQL 数据库
3.1 介绍
SQL(Structured Query Language)数据库用于存储结构化数据,可以通过 SQL 查询进行数据操作,适用于大规模数据管理。
3.2 操作方法
- 读取:
pd.read_sql()
- 写入:
DataFrame.to_sql()
from sqlalchemy import create_engine# 创建数据库连接
engine = create_engine('sqlite:///example.db') # 示例为 SQLite# 读取数据
df_sql = pd.read_sql('SELECT * FROM table_name', engine)# 写入数据
df_sql.to_sql('new_table', engine, if_exists='replace', index=False)
3.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_sql['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
4. JSON 文件
4.1 介绍
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,广泛用于存储结构化和半结构化数据。
4.2 操作方法
- 读取:
pd.read_json()
- 写入:
DataFrame.to_json()
# 读取 JSON 文件
df_json = pd.read_json('data.json')# 写入 JSON 文件
df_json.to_json('output.json', orient='records')
4.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_json['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
5. HTML 文件
5.1 介绍
HTML 文件用于网页展示,可以包含表格数据。Pandas 支持从网页中提取表格数据。
5.2 操作方法
- 读取:
pd.read_html()
- 写入:
DataFrame.to_html()
# 从网页读取数据
dfs = pd.read_html('https://example.com/data.html')# 写入为 HTML 文件
dfs[0].to_html('output.html')
5.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = dfs[0]['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
6. HDF5 文件
6.1 介绍
HDF5(Hierarchical Data Format version 5)是一种用于存储和管理大规模数据的文件格式,支持高效的读写操作。
6.2 操作方法
- 读取:
pd.read_hdf()
- 写入:
DataFrame.to_hdf()
# 读取 HDF5 文件
df_hdf = pd.read_hdf('data.h5', key='dataset_name')# 写入 HDF5 文件
df_hdf.to_hdf('output.h5', key='new_dataset', mode='w')
6.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_hdf['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
7. Parquet 文件
7.1 介绍
Parquet 是一种列式存储文件格式,适合大数据处理,提供高效的压缩和编码,常用于大数据分析工具(如 Apache Spark)。
7.2 操作方法
- 读取:
pd.read_parquet()
- 写入:
DataFrame.to_parquet()
# 读取 Parquet 文件
df_parquet = pd.read_parquet('data.parquet')# 写入 Parquet 文件
df_parquet.to_parquet('output.parquet')
7.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_parquet['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
8. Feather 文件
8.1 介绍
Feather 是一种高效的二进制文件格式,旨在快速读写 DataFrame,适合数据科学的工作流。
8.2 操作方法
- 读取:
pd.read_feather()
- 写入:
DataFrame.to_feather()
# 读取 Feather 文件
df_feather = pd.read_feather('data.feather')# 写入 Feather 文件
df_feather.to_feather('output.feather')
8.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_feather['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
9. Stata 文件
9.1 介绍
Stata 是一种用于数据分析和统计的专用软件,其文件格式广泛被社会科学领域使用。
9.2 操作方法
- 读取:
pd.read_stata()
- 写入:
DataFrame.to_stata()
# 读取 Stata 文件
df_stata = pd.read_stata('data.dta')# 写入 Stata 文件
df_stata.to_stata('output.dta')
9.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_stata['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
10. SAS 文件
10.1 介绍
SAS 是一种统计分析软件,常用于商业和学术研究,其数据集文件通常以 .sas7bdat
格式存储。
10.2 操作方法
- 读取:
pd.read_sas()
- 写入: (不支持)
# 读取 SAS 文件
df_sas = pd.read_sas('data.sas7bdat')
10.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_sas['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
11. SPSS 文件
11.1 介绍
SPSS 是一种用于社会科学研究的统计软件,其数据通常以 .sav
格式存储。
11.2 操作方法
- 读取:
pd.read_spss()
- 写入: (不支持)
# 读取 SPSS 文件
df_spss = pd.read_spss('data.sav')
11.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_spss['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
12. Clipboard
12.1 介绍
剪贴板是一种临时存储区域,可以快速从其他地方复制数据并粘贴到 Pandas 中。
12.2 操作方法
- 读取:
pd.read_clipboard()
- 写入: (不支持)
# 从剪贴板读取数据
df_clipboard = pd.read_clipboard()
12.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_clipboard['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
13. Pickle 文件
13.1 介绍
Pickle 是 Python 的一种对象序列化格式,可以将 Python 对象存储到文件中,以便后续读取。
13.2 操作方法
- 读取:
pd.read_pickle()
- 写入:
DataFrame.to_pickle()
# 读取 Pickle 文件
df_pickle = pd.read_pickle('data.pkl')# 写入 Pickle 文件
df_pickle.to_pickle('output.pkl')
13.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_pickle['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()
14. ORC 文件
14.1 介绍
ORC(Optimized Row Columnar)是一种列式存储格式,主要用于 Hadoop 生态系统,支持高效的数据压缩和读取。
14.2 操作方法
- 读取:
pd.read_orc()
- 写入: (不支持)
# 读取 ORC 文件
df_orc = pd.read_orc('data.orc')
14.3 转换
- DataFrame 转 Series: 选择一列
series_from_df = df_orc['column_name']
- Series 转 DataFrame: 使用
to_frame()
df_from_series = series_from_df.to_frame()