python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > pandas行列互转

详解如何利用pandas进行数据行转列和列转行

作者:悬崖上的金鱼

这篇文章主要为大家详细介绍了如何利用pandas进行数据行转列和列转行,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下

一、数据列转行

import pandas as pd  # 导入 pandas 库

def pivot_excel_data(input_file, output_file):
    """
    将 Excel 文件中的数据行转换为列,并保存为新的 Excel 文件
    
    Parameters:
        input_file (str): 输入的 Excel 文件路径
        output_file (str): 输出的 Excel 文件路径
        
    Returns:
        None
    """
    # 读取 Excel 数据
    df = pd.read_excel(input_file, sheet_name='Sheet1')
    
    # 使用 pivot_table() 函数将数据行转换为列
    df_pivot = df.pivot_table(index='店铺', columns='新费用类型', values='金额').reset_index()
    
    # 将处理后的数据保存到新的 Excel 文件
    df_pivot.to_excel(output_file, index=False)

# 调用函数进行数据处理
input_file = 'C:\\Users\\Administrator\\Desktop\\新数据_处理后.xlsx'
output_file = 'converted_data.xlsx'
pivot_excel_data(input_file, output_file)

二、数据行转列

import pandas as pd  # 导入 pandas 库

def melt_excel_data(input_file, output_file):
    """
    将 Excel 文件中的数据列转换为行,并保存为新的 Excel 文件
    
    Parameters:
        input_file (str): 输入的 Excel 文件路径
        output_file (str): 输出的 Excel 文件路径
        
    Returns:
        None
    """
    # 读取 Excel 数据
    df = pd.read_excel(input_file, sheet_name='Sheet1')
    
    # 使用 melt() 函数将数据列转换为行
    df_melted = df.melt(id_vars=['店铺'], var_name='费用类型', value_name='金额')
    
    # 将处理后的数据保存到新的 Excel 文件
    df_melted.to_excel(output_file, index=False)

# 调用函数进行数据处理
input_file = 'C:\\Users\\Administrator\\Desktop\\converted_data.xlsx'
output_file = 'converted_data2.xlsx'
melt_excel_data(input_file, output_file)

到此这篇关于详解如何利用pandas进行数据行转列和列转行的文章就介绍到这了,更多相关pandas行列互转内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文