首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python或Pandas中是否有一个函数允许您使用通配符将多个不同的行值合并为一个?

Python或Pandas中是否有一个函数允许您使用通配符将多个不同的行值合并为一个?
EN

Stack Overflow用户
提问于 2020-11-13 02:25:18
回答 1查看 21关注 0票数 1

我试图使用新值将多选调查响应重新分类为二进制列,但导致该问题的原因是唯一其他列的数量。

我在试着改变

代码语言:javascript
运行
复制
Row #   Column #     
0       Fun      
1       Fun, Easy      
2       Easy, Other [confusing]
3       Fun, Other [difficult to use]
4       Fun, Easy, Other [annoying]

转到

代码语言:javascript
运行
复制
      Fun       Easy      Other
0      1          0         0
1      1          1         0
2      0          1         1
3      1          0         1
4      1          1         1

我一直在使用下面的代码来分离成多个虚拟对象,但我正在寻找一种解决方案,将所有的“其他值”合并为一个“其他值”。

代码语言:javascript
运行
复制
df.iloc[:, 0].str.get_dummies(',')

但这就产生了

代码语言:javascript
运行
复制
      Fun       Easy      Other [confusing]  Other [difficult to use] ....
0      1          0         0                 0
1      1          1         0                 0
2      0          1         1                 0
3      1          0         0                 1
4      1          1         0                 1

对于多个稀疏的其他响应,它很快就变得笨拙起来。

EN

回答 1

Stack Overflow用户

发布于 2020-11-13 02:28:59

您可以将所有Other [...]替换为Other,然后再替换str.get_dummies

代码语言:javascript
运行
复制
(df['Column #'].str.replace('Other \[.*\]', 'Other')
    .str.get_dummies(', ')
)

输出:

代码语言:javascript
运行
复制
   Easy  Fun  Other
0     0    1      0
1     1    1      0
2     1    0      1
3     0    1      1
4     1    1      1
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64809646

复制
相关文章

相似问题

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