pandas:填充数据框列中的缺失数据

问题描述 投票:0回答:1

我有以下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个回答
3
投票

我想你正在寻找reindex

df=df.reindex(index)
© www.soinside.com 2019 - 2024. All rights reserved.