【问题标题】:How to create a column that has the same value per group in Python Pandas? [duplicate]如何在 Python Pandas 中创建每组具有相同值的列? [复制]
【发布时间】:2020-08-20 11:10:23
【问题描述】:

我目前有一个 Pandas 数据框,在我的第一列中有很多股票代码。它们是时间序列,因此每个代码出现不止一次。在我的第二列中,我有一个 CUSIP 代码,但此代码仅出现在代码首先出现的行中,所有下一行都不包含此 CUSIP 代码。我想在匹配相同代码的所有列中都有相同的 CUSIP 代码。这就是我的数据框的样子,我希望所有的 NaN 都填充正确的 CUSIP,以便您获得下面的数据框

MSFT.OQ     594918104   FY2019  55252000000 United States   USA 1
MSFT.OQ     NaN         FY2018  44501000000 United States   USA 1
MSFT.OQ     NaN         FY2017  42730000000 United States   USA 1
MSFT.OQ     NaN         FY2016  25145000000 United States   USA 1
EFT_pa^E08  449515402   FY2001  6642000     United States   USA 1
EFT_pa^E08  NaN         FY2000  12161000    United States   USA 1
EFT_pa^E08  NaN         FY1999


MSFT.OQ     594918104   FY2019  55252000000 United States   USA 1
MSFT.OQ     594918104   FY2018  44501000000 United States   USA 1
MSFT.OQ     594918104   FY2017  42730000000 United States   USA 1
MSFT.OQ     594918104   FY2016  25145000000 United States   USA 1
EFT_pa^E08  449515402   FY2001  6642000     United States   USA 1
EFT_pa^E08  449515402   FY2000  12161000    United States   USA 1
EFT_pa^E08  449515402   FY1999      

【问题讨论】:

    标签: python pandas pandas-groupby


    【解决方案1】:

    使用ffill - 使用指定的转发方法填充 NA/NaN 值。

    >>> df.ffill()
                0            1       2             3       4       5    6    7
    0     MSFT.OQ  594918104.0  FY2019  5.525200e+10  United  States  USA  1.0
    1     MSFT.OQ  594918104.0  FY2018  4.450100e+10  United  States  USA  1.0
    2     MSFT.OQ  594918104.0  FY2017  4.273000e+10  United  States  USA  1.0
    3     MSFT.OQ  594918104.0  FY2016  2.514500e+10  United  States  USA  1.0
    4  EFT_pa^E08  449515402.0  FY2001  6.642000e+06  United  States  USA  1.0
    5  EFT_pa^E08  449515402.0  FY2000  1.216100e+07  United  States  USA  1.0
    6  EFT_pa^E08  449515402.0  FY1999  1.216100e+07  United  States  USA  1.0
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-11
      • 1970-01-01
      • 1970-01-01
      • 2021-09-08
      • 2019-03-12
      • 2019-04-04
      • 2021-11-25
      相关资源
      最近更新 更多