首页 > 后端开发 > Python教程 > Pandas 的'melt”函数如何将日期列数据重塑为行?

Pandas 的'melt”函数如何将日期列数据重塑为行?

Mary-Kate Olsen
发布: 2024-12-30 11:02:14
原创
489 人浏览过

How Can Pandas' `melt` Function Reshape Data with Date Columns into Rows?

使用 Pandas 将列转换为行

当表格数据包含日期作为列标题时,将这些列转换为具有相应值的行可能是一项有价值的任务。为了实现这种转换,Python 的 Pandas 库提供了一个方便的解决方案。

问题

提供的数据集展示了一种结构,其中信息按不同日期的位置进行分组,每个日期都由不同的列标题表示。目标是将这些数据重塑为一种格式,其中每行代表一个位置、日期和关联值。

解决方案

为了将列转换为行,Pandas 提供了熔化函数。此函数允许我们指定哪些列应作为列标题,哪些列应作为行标题。在这种情况下,名称和位置被设置为行标题,日期标题被融合到单个日期列中,而它们的值成为值列。

df.melt(id_vars=["location", "name"],
        var_name="Date",
        value_name="Value")
登录后复制

生成的 DataFrame 将类似于预期输出:

  location  name        Date  Value
0        A  "test"    Jan-2010     12
1        B   "foo"    Jan-2010     18
2        A  "test"    Feb-2010     20
3        B   "foo"    Feb-2010     20
4        A  "test"  March-2010     30
5        B   "foo"  March-2010     25
登录后复制

对于旧版本的 Pandas(

df2 = pd.melt(df,
                  id_vars=["location", "name"], 
                  var_name="Date",
                  value_name="Value")
df2 = df2.sort(["location", "name"])
登录后复制

以上是Pandas 的'melt”函数如何将日期列数据重塑为行?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板