【问题标题】:pandas: fill missing data in data frame columns熊猫:填充数据框列中的缺失数据
【发布时间】:2019-04-05 13:40:46
【问题描述】:

我有以下pandas 数据框:

import numpy as np
import pandas as pd
timestamps = [1, 14, 30]
data = dict(quantities=[1, 4, 9], e_quantities=[1, 2, 3])
df = pd.DataFrame(data=data, columns=data.keys(), index=timestamps)

看起来像这样:

    quantities  e_quantities
1            1             1
14           4             2
30           9             3

但是,timestamps 应该从 1 运行到 52:

index = pd.RangeIndex(1, 53)

以下行提供了缺少的timestamps

series_fill = pd.Series(np.nan, index=index.difference(df.index)).sort_index()

如何让 quantitiese_quantities 列在这些缺失的时间戳处具有 NaN 值?

我试过了:

df = pd.concat([df, series_fill]).sort_index()

但它添加了另一列 (0) 并交换了原始数据框的顺序:

     0  e_quantities  quantities
1  NaN           1.0         1.0
2  NaN           NaN         NaN
3  NaN           NaN         NaN

感谢您的帮助。

【问题讨论】:

    标签: python pandas dataframe missing-data


    【解决方案1】:

    我想你在找reindex

    df=df.reindex(index)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-06
      • 1970-01-01
      • 2017-08-21
      • 2021-12-10
      • 1970-01-01
      • 2016-10-31
      相关资源
      最近更新 更多