отобразить индекс DataFrame и значения для прямого заполнения - PullRequest
0 голосов
/ 14 января 2019

У меня есть 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

Ответы [ 3 ]

0 голосов
/ 14 января 2019

Использование reindex с method='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
0 голосов
/ 14 января 2019

Вы можете сделать это:

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
0 голосов
/ 14 января 2019

Использование reindex и ffill:

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...