python-是否有可能在数据框中提取和调整数据大小?

时间:2018-10-17 16:23:24

标签: python pandas

我想从数据帧中提取数据,例如,我有两列All_id和Patnum

                                           All_id      PatNum
    429/326 | 429/218.1 | 429/219 | 429/220 | 429/221   US4057679
                      429/185 | 429/215 | 429/231.95    US4071662
                                  429/623.5 | 429/221   US4021911
                                             429/136    US4041218
                         429/171 | 429/174 | 429/180    US4048401

我想成为的预期结果是

All_id     PatNum
429/326    US4057679
429/218.1  US4057679
429/219    US4057679
429/220    US4057679
429/221    US4057679
429/185    US4071662
429/215    US4071662
429/231.95 US4071662
429/623.5  US4021911
429/221    US4021911
429/136    US4041218
429/171    US4048401
429/174    US4048401
429/180    US4048401

先谢谢您

1 个答案:

答案 0 :(得分:1)

将您的字符串放到列表中,然后将splitrepeat一起使用,以重新创建数据框

s=df.All_id.str.split('|')
pd.DataFrame({'All_id':sum(s,[]),'PatNum':df.PatNum.repeat(s.str.len())})
Out[484]: 
      All_id     PatNum
0    429/326  US4057679
0  429/218.1  US4057679
0    429/219  US4057679
0    429/220  US4057679
0    429/221  US4057679