使用 Pandas 轻松实现 Excel 列数据到 JSON 的转换

使用 Python 的 pandas 库可以轻松读取 Excel 文件,并选择特定列转换为 JSON 格式。以下是完整的实现步骤:

图片[1]_使用 Pandas 轻松实现 Excel 列数据到 JSON 的转换_知途无界

1. 安装依赖库

首先,确保安装了 pandasopenpyxl(用于读取 Excel 文件):

pip install pandas openpyxl

2. 读取 Excel 文件并选择列

使用 pandas 读取 Excel 文件,并选择需要的列。

import pandas as pd

# 读取 Excel 文件
file_path = 'data.xlsx'  # Excel 文件路径
df = pd.read_excel(file_path, engine='openpyxl')

# 查看所有列名
print(df.columns)

# 选择需要的列
selected_columns = ['Column1', 'Column2', 'Column3']  # 替换为实际的列名
df_selected = df[selected_columns]

# 查看选择的数据
print(df_selected.head())

3. 将选择的列转换为 JSON

将选择的列转换为 JSON 格式。pandas 提供了 to_json 方法,可以将 DataFrame 转换为 JSON 字符串。

# 将 DataFrame 转换为 JSON 字符串
json_str = df_selected.to_json(orient='records', indent=4)  # orient='records' 表示按行转换为 JSON 数组

# 打印 JSON 字符串
print(json_str)

参数说明:

  • orient='records':将每一行转换为一个 JSON 对象,并组合成一个 JSON 数组。
  • indent=4:格式化 JSON 字符串,使其更易读(可选)。

4. 保存 JSON 到文件(可选)

如果需要将 JSON 数据保存到文件,可以使用以下代码:

# 保存 JSON 到文件
output_file = 'output.json'  # 输出文件路径
with open(output_file, 'w', encoding='utf-8') as f:
    f.write(json_str)

print(f"JSON 数据已保存到 {output_file}")

5. 完整代码示例

以下是完整的代码示例:

import pandas as pd

# 读取 Excel 文件
file_path = 'data.xlsx'  # Excel 文件路径
df = pd.read_excel(file_path, engine='openpyxl')

# 选择需要的列
selected_columns = ['Column1', 'Column2', 'Column3']  # 替换为实际的列名
df_selected = df[selected_columns]

# 将 DataFrame 转换为 JSON 字符串
json_str = df_selected.to_json(orient='records', indent=4)

# 打印 JSON 字符串
print(json_str)

# 保存 JSON 到文件
output_file = 'output.json'  # 输出文件路径
with open(output_file, 'w', encoding='utf-8') as f:
    f.write(json_str)

print(f"JSON 数据已保存到 {output_file}")

6. 示例 Excel 文件和输出

假设 data.xlsx 文件内容如下:

Column1Column2Column3
A1X
B2Y
C3Z

运行代码后,生成的 JSON 文件 output.json 内容如下:

[
    {
        "Column1": "A",
        "Column2": 1,
        "Column3": "X"
    },
    {
        "Column1": "B",
        "Column2": 2,
        "Column3": "Y"
    },
    {
        "Column1": "C",
        "Column2": 3,
        "Column3": "Z"
    }
]

7. 注意事项

  1. 列名匹配:确保选择的列名与 Excel 文件中的列名完全一致。
  2. 空值处理:如果 Excel 文件中有空值,pandas 会将其转换为 null
  3. 文件路径:确保 Excel 文件路径正确,且文件可读。
  4. JSON 格式:根据需求调整 orient 参数,支持多种 JSON 格式(如 splitindextable 等)。

通过以上步骤,你可以轻松使用 pandas 读取 Excel 文件并选择列转换为 JSON 格式!

© 版权声明
THE END
喜欢就点个赞,支持一下吧!
点赞80 分享
评论 抢沙发
头像
欢迎您留下评论!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容