如何在python中将向量分解为两个

时间:2015-11-05 12:41:39

标签: python arrays string numpy pandas

我想将A中的列code分为B中的两列namenumber。任何帮助都将不胜感激。

A:

index  code    value
0      wrt_10  10
1      wrt_11  13
2      wrc_16  3
4      wrc_14  5

B:

index  code    value  name   number
0      wrt_10  10     wrt    10
1      wrt_11  13     wrt    11
2      wrc_16  3      wrc    16     
4      wrc_14  5      wrc    14

1 个答案:

答案 0 :(得分:1)

您可以使用Pandas str方法拆分字符串,并将拆分扩展为列:

df['code'].str.split('_', expand=True)

完整示例:

df = pd.DataFrame({'index': range(4),
                   'code': ['wrt_10', 'wrt_11', 'wrt_16', 'wrt_14'],
                   'value': [10, 13, 3, 5]})
split = df['code'].str.split('_', expand=True)
split.columns = ['name', 'number']
print(df.join(split))
#      code  index  value name number
# 0  wrt_10      0     10  wrt     10
# 1  wrt_11      1     13  wrt     11
# 2  wrt_16      2      3  wrt     16
# 3  wrt_14      3      5  wrt     14
相关问题