python一维表转二维表

在这里插入图片描述
一维表转二维表

import pandas as pd 
# 读取数据
product_df = pd.read_csv(r'D:\excelFile\practice\物品属性值一维表.csv',encoding='utf-8')
# print(product_df)

# 将一维表转变二维
s = pd.Series(list(product_df['属性值']),index=[product_df['物品编号'],product_df['属性名']])  # 利用一维数据表 构造一个二级索引Series对象
new_df = s.unstack() # 对s执行stack的逆操作unstack

new_df结果:
在这里插入图片描述
写入表后:
在这里插入图片描述

二维表转一维表
将上述二维数据结果放入一个xlsx文档,读取然后将其转为一维

product_df2 = pd.read_excel('D:\\excelFile\practice\物品属性值一维表.xlsx','Sheet2')

# 将二维数据表转化为一维数据表:
new_data = product_df2.set_index('物品编号') # 将product_df2中的物品编号一列设置为索引列
print('new_data: ------ \n {}'.format(new_data))

df1 = new_data.stack()  # stack的返回对象df1是一个二级索引Series对象
print('df1: ------ \n {}'.format(df1))

df2 = df1.reset_index() # 通过reset_index函数将Series对象的二级索引均转化为DataFrame对象的列值
print('df2: ------\n {}'.format(df2))

df2.columns = ['物品变编号','属性名','属性值']
print('df2 修改列名:----- \n {}'.format(df2))

在这里插入图片描述

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-21 19:58:03       101 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-21 19:58:03       109 阅读
  3. 在Django里面运行非项目文件

    2024-07-21 19:58:03       87 阅读
  4. Python语言-面向对象

    2024-07-21 19:58:03       96 阅读

热门阅读

  1. 信息增益与基尼指数:决策树分裂准则的比较

    2024-07-21 19:58:03       26 阅读
  2. WebGIS主流的客户端框架比较|OpenLayers|Leaflet|Cesium

    2024-07-21 19:58:03       26 阅读
  3. [强化学习马里奥 MarioRL]-- 环境ENV 3

    2024-07-21 19:58:03       23 阅读
  4. ubuntu 上安装中文输入法

    2024-07-21 19:58:03       22 阅读
  5. 记一次通过udev自动加在i2c接口触摸驱动过程

    2024-07-21 19:58:03       20 阅读