我目前遇到两个问题:
我的数据框架如下所示:
,male_female,no_of_students 0,24 : 76,"81,120" 1,33 : 67,"12,270" 2,50 : 50,"10,120" 3,42 : 58,"5,120" 4,12 : 88,"2,200"
我想要实现的是:
,male,female,24,76,81120 1,33,67,12270 2,50,10120 3,42,58,5120 4,12,88,2200
基本上我想将male_female转换为两列,将no_of_students转换为整数列.我尝试了很多东西,将no_of_students列转换为另一种带有.astype的类型.但似乎没有什么工作正常,我也无法找到一个聪明的方法来正确分割male_female列.
希望有人可以帮助我!
解决方法
对于按列分隔的新列,使用
str.split
和
pop
,然后使用
strip
尾随值,replace
并在必要时转换为整数:
df[['male','female']] = df.pop('male_female').str.split(' : ',expand=True) df['no_of_students'] = df['no_of_students'].str.strip('" ').str.replace(',','').astype(int) df = df[['male','female','no_of_students']] print (df) male female no_of_students 0 24 76 81120 1 33 67 12270 2 50 50 10120 3 42 58 5120 4 12 88 2200
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。