python二维表转一维表

您所在的位置:网站首页 excel怎么二维转一维 python二维表转一维表

python二维表转一维表

2024-03-23 08:42| 来源: 网络整理| 查看: 265

# 加载数据

import pandas as pd

df_old1 = pd.read_excel(r"D:\Jupyter\data\Python.xlsx",sheet_name = "变一维")

df_old1

7f8bb56b7e974cbe949f3ecc0a01ba6c.png

# 数据清洗,把第一列设为索引列

df_old2 = pd.read_excel(r"D:\Jupyter\data\Python.xlsx",sheet_name = "变一维",index_col = 0)

df_old2

b9601f1ca8589c5fb639612fe178db35.png

# 重置索引

df_old3 = df_old2.reset_index()

df_old3

5141250df6e8c95930ba75be88d18aa8.png

将列名转换为列数据

这里我们需要用到pandas的.melt()函数,melt()是逆转操作函数,可以将列名转换为列数据(columns_name → column_values),重构DataFrame,用法如下:

data3=data2.melt(id_vars='index', var_name='year',value_name='stu_num')

data3

参数解释:

DataFrame:要处理的数据集;

id_vars:不需要被转换的列名;

value_vars:需要转换的列名,如果剩下的列全部都要转换,就不用写了;

var_name和value_name是自定义设置对应的列名;

col_level :如果列是MultiIndex,则使用此级别。

结果如下:

# 将二维转一维

df_new = df_old3.melt(id_vars = "index",var_name = "年份", value_name = "销售额")

df_new

719f0f3c147bd6291ced79ffb1f3d1c1.png

最后一步到位:

# 一步到位

import pandas as pd

df_melt = pd.read_excel(r"D:\Jupyter\data\Python.xlsx",sheet_name = "变一维",index_col = 0).reset_index().melt(id_vars = "index",var_name = "年份",value_name = "销售额").rename(columns = {"index" : "省份"})

df_melt

bbbbd697c3e584ed8006ab6d6ce91927.png

文末小结:小明大佬说:噢,那你们好好补补基础。我觉得很有道理!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3