首页 > 解决方案 > 在索引 i 处将一行插入数据框中

问题描述

在熊猫问题上我需要你的帮助:

我目前正在通过包含其等级差距的 API 提取数据。

但是,我需要通过用平均值替换它们来考虑数据集上的这些。

然后我需要在我的数据框中插入一行来填充数据框。

插图 :

这是我的问题的样子:

   rank timestamp value
0    1     21:50  3450
1    4     21:40  3442
2    5     21:41  5964
3    6     14:27  5258
4    7     13:10  3001
5    8     14:02  2782

缺少第 2 和第 3 级

所以,这就是我想要得到的:

   rank timestamp value
0    1     21:50  3450
1    2      NaN   avg
2    3      NaN   avg
3    4     21:40  3442
4    5     21:41  5964
5    6     14:27  5258
6    7     13:10  3001
7    8     14:02  2782

我大致知道如何处理列,但我不知道如何处理行。

你有想法吗 ?

我已经尝试使用“附加”,但我很难重新索引我的数据框:/

标签: pythonpandasdataframeindexinginsert

解决方案


您可以使用 reindex 来添加缺失的排名,使用 fillna 来填充缺失的值。

df = df.set_index('rank').reindex(np.arange(df['rank'].min(), df['rank'].max()+1)).reset_index()
df['value'] = df['value'].fillna(df['value'].mean()).round()


    rank    timestamp   value
0   1       21:50       3450
1   2       NaN         3982
2   3       NaN         3982
3   4       21:40       3442
4   5       21:41       5964
5   6       14:27       5258
6   7       13:10       3001
7   8       14:02       2782

推荐阅读