python教程—Python熊猫在dataframe中复制行-Python实用宝典

python教程—Python熊猫在dataframe中复制行

如果数据是这样的:我想用IsHoliday = TRUE来复制行,我可以这样做:但有没有更好的方法来做到这一点,因为我需要将假日行复制5次,如果使用上面的方法,我必须追加5次。

如果数据如下:

    Store,Dept,Date,Weekly_Sales,IsHoliday 1,1,2010-02-05,24924.5,FALSE 1,1,2010-02-12,46039.49,TRUE 1,1,2010-02-19,41595.55,FALSE 1,1,2010-02-26,19403.54,FALSE 1,1,2010-03-05,21827.9,FALSE 1,1,2010-03-12,21043.39,FALSE 1,1,2010-03-19,22136.64,FALSE 1,1,2010-03-26,26229.21,FALSE 1,1,2010-04-02,57258.43,FALSE

我想用IsHoliday = TRUE复制行,我可以这样做:

    is_hol = df['IsHoliday'] == True df_try = df[is_hol] df=df.append(df_try*10)

但是有没有更好的方法来实现这一点,因为我需要将假日行复制5次,如果使用上面的方法,我必须追加5次。

回答

你可以把df_try放在一个列表中,然后做你想做的:

    >>> df.append([df_try]*5,ignore_index=True) Store Dept Date Weekly_Sales IsHoliday 0 1 1 2010-02-05 24924.50 False 1 1 1 2010-02-12 46039.49 True 2 1 1 2010-02-19 41595.55 False 3 1 1 2010-02-26 19403.54 False 4 1 1 2010-03-05 21827.90 False 5 1 1 2010-03-12 21043.39 False 6 1 1 2010-03-19 22136.64 False 7 1 1 2010-03-26 26229.21 False 8 1 1 2010-04-02 57258.43 False 9 1 1 2010-02-12 46039.49 True 10 1 1 2010-02-12 46039.49 True 11 1 1 2010-02-12 46039.49 True 12 1 1 2010-02-12 46039.49 True 13 1 1 2010-02-12 46039.49 True

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
0

发表评论