繁体   English   中英

将 python pandas 中的列拆分为两列

[英]Split column in python pandas into two columns

我想将 pandas 数据帧的“比较图像类型”列的条目(始终包含 6 个字母的字符串)拆分为两个新列,其中一个包含前三个字母,另一个包含原始列的最后三个字母.

Name    BaseImage Type  Compared Image Type
 2       oldNeg             semNeg
 2       oldNeu             perNeu
 2       oldNeu             semNeu
 2       oldNeu             newNeu
 2       oldNeg             perNeg

到目前为止,我只发现了如何在某个字符之后(例如在“,”之后)拆分列,并感谢您的帮助。

您有str访问权限:

df['col1'] = df['Compared Image Type'].str[:3]
df['col2'] = df['Compared Image Type'].str[3:]

输出:

   Name BaseImage Type Compared Image Type col1 col2
0     2         oldNeg              semNeg  sem  Neg
1     2         oldNeu              perNeu  per  Neu
2     2         oldNeu              semNeu  sem  Neu
3     2         oldNeu              newNeu  new  Neu
4     2         oldNeg              perNeg  per  Neg

根据您的数据,您还可以使用类似的方法使用特定字符拆分列,这里是大写字母[AZ]

df['Compared Image Type'].str.extract('^(\w*)([A-Z]\w*)')

输出:

     0    1
0  sem  Neg
1  per  Neu
2  sem  Neu
3  new  Neu
4  per  Neg

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM