首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在python中,如何重新构造dataframe,使某些datetime列成为行。

在python中,如何重新构造dataframe,使某些datetime列成为行。
EN

Stack Overflow用户
提问于 2022-04-25 18:07:15
回答 2查看 115关注 0票数 0

在熊猫的dataframe中,我想将日期时间列转换成行。

像这样(大约有12列日期):

代码语言:javascript
复制
 Category   Type    11/2021 12/2021
0   A        1       0.0     20
1   A        2       NaN     13
2   B        1       5.0      7
3   B        2       20.0     4

像这样的人:

代码语言:javascript
复制
    Date    Category    Type1   Type2
0   2021-11    A         0       NaN
1   2021-11    B         5       20.0
2   2021-12    A         20      13.0
3   2021-12    B         7       4.0

我想要使用枢轴表,但我做不到。

EN

回答 2

Stack Overflow用户

发布于 2022-04-25 18:26:32

你可以这样做:

代码语言:javascript
复制
(df.melt(['Category', 'Type'], var_name = 'Date').
   pivot(['Date', 'Category'],'Type').reset_index())

         Date Category value      
Type                       1     2
0     11/2021        A   0.0   NaN
1     11/2021        B   5.0  20.0
2     12/2021        A  20.0  13.0
3     12/2021        B   7.0   4.0

要想变得更干净,你可以使用janitor

代码语言:javascript
复制
import janitor

(df.pivot_longer(['Category', 'Type'], names_to = 'Date', values_to = 'type').
  pivot_wider(['Date', 'Category'], names_from = 'Type', names_sep = ''))

      Date Category   type1   type2
0  11/2021        A     0.0     NaN
1  11/2021        B     5.0    20.0
2  12/2021        A    20.0    13.0
3  12/2021        B     7.0     4.0
票数 0
EN

Stack Overflow用户

发布于 2022-04-25 20:10:15

另一种解决办法是:

代码语言:javascript
复制
x = (
    df.set_index(["Category", "Type"])
    .stack()
    .unstack("Type")
    .add_prefix("Type")
    .reset_index()
)
x = x.rename(columns={"level_1": "Date"})
x.columns.name = None

print(x)

指纹:

代码语言:javascript
复制
  Category     Date  Type1  Type2
0        A  11/2021    0.0    NaN
1        A  12/2021   20.0   13.0
2        B  11/2021    5.0   20.0
3        B  12/2021    7.0    4.0
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72003898

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档