列出到数据框,列中列表中的每个元素

时间:2019-02-26 14:24:06

标签: python pandas dataframe

大家好

我想从列表创建一个数据框,其中列表中的每个元素都是一列。 示例:

    Col
0   A_1
1   A_2
2   A_1
3   B_3
4   B_2

我想要一个这样的数据框

Col1 . col2 
0   A .  1  
1   A .  2
2   B .  3
3   B .  2

....

由'_'分隔并分成两列,然后删除重复的

预先感谢

2 个答案:

答案 0 :(得分:3)

使用:

df[['Col1','Col2']]=df.pop('Col').str.split("_",expand=True)
df = df.drop_duplicates()
print(df)

  Col1 Col2
0    A    1
1    A    2
3    B    3
4    B    2

答案 1 :(得分:1)

使用extract

yourdf=df.drop_duplicates().Col.str.extract(r'(?P<col1>[AB])_(?P<col2>\d)')
yourdf
Out[16]: 
  col1 col2
0    A    1
1    A    2
3    B    3
4    B    2