pandas合并与拆分单元格

作者:半吊子全栈工匠2024.01.17 21:08浏览量:26

简介:本文将介绍如何使用pandas库在数据框中合并和拆分单元格。

在pandas中,可以使用mergeconcat函数来合并数据框,使用melt函数来拆分数据框。
合并单元格
要合并单元格,可以使用merge函数。merge函数用于根据指定的列将两个数据框进行连接。

  1. import pandas as pd
  2. # 创建两个数据框
  3. df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
  4. 'B': ['B0', 'B1', 'B2', 'B3'],
  5. 'C': ['C0', 'C1', 'C2', 'C3'],
  6. 'D': ['D0', 'D1', 'D2', 'D3']},
  7. index=[0, 1, 2, 3])
  8. df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
  9. 'B': ['B4', 'B5', 'B6', 'B7'],
  10. 'C': ['C4', 'C5', 'C6', 'C7'],
  11. 'D': ['D4', 'D5', 'D6', 'D7']},
  12. index=[4, 5, 6, 7])
  13. # 使用merge函数合并数据框
  14. merged_df = pd.merge(df1, df2, on='A')
  15. print(merged_df)

这将输出一个新数据框,其中包含A列的值作为连接键,并将df1df2中的相关行合并在一起。
拆分单元格
要拆分单元格,可以使用melt函数。melt函数将数据框从宽格式转换为长格式,将分类变量转换为因子变量。

  1. import pandas as pd
  2. # 创建一个宽格式数据框
  3. df = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
  4. 'B': ['B0', 'B1', 'B2', 'B3'],
  5. 'C': ['C0', 'C1', 'C2', 'C3'],
  6. 'D': ['D0', 'D1', 'D2', 'D3']},
  7. index=[0, 1, 2, 3])
  8. # 使用melt函数将数据框从宽格式转换为长格式
  9. melted_df = pd.melt(df)
  10. print(melted_df)

这将输出一个新数据框,其中包含原始数据框中的列名作为因子变量,并将每个行值作为值变量。melt函数还可以通过指定var_namevalue_name参数来自定义输出列的名称。