Python 复制数据帧中的行

Python 复制数据帧中的行,python,pandas,Python,Pandas,我试图找到一种简单的方法来分解以下数据帧: COL_A COL_B COL_C COL_D VAL1 VAL2 VAL3 OFFER1|OFFER2|OFFER3 到 让我们使用pd.concat,str.split和fillna: pd.concat([df,df.COL_D.str.split('|',expand=True).T],axis=1).rename(columns={0:'COL_Y'}).fillna(method='ffill') 输出: COL_A COL_

我试图找到一种简单的方法来分解以下数据帧:

COL_A COL_B COL_C COL_D
VAL1  VAL2  VAL3  OFFER1|OFFER2|OFFER3


让我们使用
pd.concat
str.split
fillna

pd.concat([df,df.COL_D.str.split('|',expand=True).T],axis=1).rename(columns={0:'COL_Y'}).fillna(method='ffill')
输出:

  COL_A COL_B COL_C                 COL_D   COL_Y
0  VAL1  VAL2  VAL3  OFFER1|OFFER2|OFFER3  OFFER1
1  VAL1  VAL2  VAL3  OFFER1|OFFER2|OFFER3  OFFER2
2  VAL1  VAL2  VAL3  OFFER1|OFFER2|OFFER3  OFFER3

希望链接有助于这看起来很有希望,但我得到了520000行左右的MemoryError。内存密集吗?不是非常密集,您的行可能会因为数据而爆炸。我甚至将其缩减为:索引80 RO_编号4104184 VIN 4104184提供4104184数据类型:int64,并且我仍然获得内存丰富的memoryError
  COL_A COL_B COL_C                 COL_D   COL_Y
0  VAL1  VAL2  VAL3  OFFER1|OFFER2|OFFER3  OFFER1
1  VAL1  VAL2  VAL3  OFFER1|OFFER2|OFFER3  OFFER2
2  VAL1  VAL2  VAL3  OFFER1|OFFER2|OFFER3  OFFER3