首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >熊猫用数据制作成对的数据

熊猫用数据制作成对的数据
EN

Stack Overflow用户
提问于 2020-11-05 20:18:51
回答 2查看 46关注 0票数 0

我有一个像这样的pd.DataFrame

代码语言:javascript
复制
    User  M&Ms  Skittles  Snickers  Laffy Taffy  Caramel Chew
0   Lara     3         0         0            0             0
1  Daisy     4         0         1            1             0
2   Alyx     0         0         0            0             5
3  Sarah     0         3         0            0             0

我想创建一个如下所示的数据格式

代码语言:javascript
复制
    user          item  rating
0   Lara          m_ms       3
1   Lara      snickers       5
2  Daisy          m_ms       4
3  Daisy   laffy_taffy       1
4   Alyx  caramel_chew       5
5  Sarah      skittles       3
6  Sarah      snickers       2

有这样的事吗?谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-11-05 20:28:28

使用melt + query

代码语言:javascript
复制
df.melt('User').query('value > 0')

代码语言:javascript
复制
     User      variable  value
0    Lara          M&Ms      3
1   Daisy          M&Ms      4
7   Sarah      Skittles      3
9   Daisy      Snickers      1
13  Daisy   Laffy Taffy      1
18   Alyx  Caramel Chew      5
票数 2
EN

Stack Overflow用户

发布于 2020-11-05 20:25:54

您可以使用df.stack()

代码语言:javascript
复制
# First set the index to user
df.set_index(‘user’, inplace =True)
# then stack
df_new = df.stack()
# reset index
df_new.reset_index(inplace=True)

使用pd.melt()是另一种选择。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64704702

复制
相关文章

相似问题

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