首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将一个dataframe列拆分为多个列

如何将一个dataframe列拆分为多个列
EN

Stack Overflow用户
提问于 2020-12-17 08:57:09
回答 1查看 51关注 0票数 4
  • 我在学习熊猫

  • I有一个dataframe列,它在一个由空格

分隔的字符串中具有多个值。

  • I必须将该列拆分为多个列

  • 问题是-拆分可能会给出变量数的值

  • 我的代码如下所示:

导入熊猫为pd df = pd.DataFrame({'institute':‘学免费学院’,‘免费代码学院’,'Avon IT学校‘,’语言‘:'Java,JavaScript:Python’;HTML\CSS','HTML/CSS\JavaScript',‘C:C#’}#打印(Df)#研究所语言#0学习免费学院Java,JavaScript:Python;HTML\CSS #1免费代码学院HTML/CSS\JavaScript #2雅芳IT学校C:C#

当我拆分“语言”列时,我得到以下结果:

代码语言:javascript
复制
  print( df['languages'].str.get_dummies(r';|:|\\|\/|,') )

  #    C  C#  CSS  HTML  Java  JavaScript  Python  |
  # 0  0   0    0     0     0           0       0  0
  # 1  0   0    0     0     0           0       0  0
  # 2  0   0    0     0     0           0       0  0

我如何得到跟踪结果?

代码语言:javascript
复制
  #    Java  Javascript      Python  HTML   CSS  C  C#
  # 0     1           1           1     1     1  0   0
  # 1     0           1           0     1     1  0   0 
  # 2     0           0           0     0     0  1   1 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-18 07:44:36

使用Series.str.replace表示|,因为默认分隔符在Series.str.get_dummies

代码语言:javascript
复制
print (df['languages'].str.replace(r';|:|\\|\/|,','|'))
0    Java|JavaScript|Python|HTML|CSS
1                HTML|CSS|JavaScript
2                               C|C#
Name: languages, dtype: object

df1 = df['languages'].str.replace(r';|:|\\|\/|,','|').str.get_dummies()
print(df1)
   C  C#  CSS  HTML  Java  JavaScript  Python
0  0   0    1     1     1           1       1
1  0   0    1     1     0           1       0
2  1   1    0     0     0           0       0
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65337444

复制
相关文章

相似问题

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