【问题标题】:map DataFrame index and forward fill nan values映射 DataFrame 索引并前向填充 nan 值
【发布时间】:2019-01-14 15:26:07
【问题描述】:

我有一个带有整数索引的 DataFrame,其中缺少一些值(即不等间距),我想创建一个具有等间距索引值和前向填充列值的新 DataFrame。下面是一个简单的例子:

import pandas as pd
df = pd.DataFrame(['A', 'B', 'C'], index=[0, 2, 4])
    0
0   A
2   B
4   C

想在上面使用并创建:

    0
0   A
1   A
2   B
3   B
4   C

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    reindexmethod='ffill' 一起使用:

    df = df.reindex(np.arange(0, df.index.max()+1), method='ffill')
    

    或者:

    df = df.reindex(np.arange(df.index.min(), df.index.max() + 1), method='ffill')
    
    print (df)
       0
    0  A
    1  A
    2  B
    3  B
    4  C
    

    【讨论】:

      【解决方案2】:

      使用reindexffill

      df = df.reindex(range(df.index[0],df.index[-1]+1)).ffill()
      
      print(df)
         0
      0  A
      1  A
      2  B
      3  B
      4  C
      

      【讨论】:

        【解决方案3】:

        你可以这样做:

        In [319]: df.reindex(list(range(df.index.min(),df.index.max()+1))).ffill()
        Out[319]: 
           0
        0  A
        1  A
        2  B
        3  B
        4  C
        

        【讨论】:

          猜你喜欢
          • 2015-02-14
          • 1970-01-01
          • 1970-01-01
          • 2022-01-07
          • 2022-10-13
          • 2020-11-21
          • 2017-09-09
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多