首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python: Transform或Melt和Groupby a Dataframe

Python: Transform或Melt和Groupby a Dataframe
EN

Stack Overflow用户
提问于 2021-09-21 12:23:41
回答 4查看 85关注 0票数 2

我有这样的事情:

代码语言:javascript
复制
df =
       col1  col2  col3
    0     B     C     A
    1     E     D     G
    2   NaN     F     B

编辑:我需要将它转换为:

代码语言:javascript
复制
result =
           Name    location  
        0     B   col1,col2
        1     C        col1     
        2     A        col1
        3     E        col2     
        4     D        col2        
        5     G        col2     
        6     F        col3

本质上是得到一个“位置”,告诉我“名称”在哪个列中。提前谢谢你。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2021-09-21 12:33:17

或者使用stack()的替代方案

代码语言:javascript
复制
new = df.stack().reset_index().drop('level_0',axis=1).dropna()
new.columns = ['name','location']

指纹:

代码语言:javascript
复制
   name location
0  col1        B
1  col2        C
2  col3        A
3  col1        E
4  col2        D
5  col3        G
6  col2        F

编辑:

要获得更新的输出,可以使用groupbyjoin()

代码语言:javascript
复制
new.groupby('location').agg({'name':lambda x: ', '.join(list(x))}).reset_index()

这给了你:

代码语言:javascript
复制
 location        name
0        A        col3
1        B  col1, col3
2        C        col2
3        D        col2
4        E        col1
5        F        col2
6        G        col3
票数 1
EN

Stack Overflow用户

发布于 2021-09-21 12:27:11

试试meltdropna

代码语言:javascript
复制
>>> df.melt(var_name='location').dropna().groupby('value', sort=False, as_index=False).agg(', '.join)
  value    location
0     B  col1, col3
1     E        col1
2     C        col2
3     D        col2
4     F        col2
5     A        col3
6     G        col3
>>> 

还有groupbyagg

票数 2
EN

Stack Overflow用户

发布于 2021-09-21 12:41:16

尝试使用meltcolumns转换为rows。并给rows一个column名称。

然后dropna删除rows中的NaN值。

代码语言:javascript
复制
df = df.melt(var_name="location", value_name="Name").dropna()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69268828

复制
相关文章

相似问题

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