Załóżmy, że mamy takie dataframe:

Order Value
1     10
2     3
3     5
5     34
7     23

Czy istnieje sposób na testowanie, jeśli kolumna (w tym przypadku "Zamówienie") zawiera ciągłe liczby całkowite. A jeśli nie, czy istnieje sposób, aby wypełnić brakujący wiersz z odpowiednim całkowitym i ustawić inną kolumnę (w tym przypadku "Wartość") z 0 lub inną określoną wartością?

Podobnie jak w powyższym przypadku, należy dodać dwa wiersze (4,0) i (6,0)

Dziękuję Ci!

0
Arthur Wang 4 październik 2020, 01:57

1 odpowiedź

Najlepsza odpowiedź

Możesz użyć {X0}} Po ustawieniu Order jako indeks. Z argumentem fill_value można wybrać, która wartość zostanie użyta do napełniania nowych wierszy.

df.set_index('Order').reindex(pd.RangeIndex(df.Order.min(), df.Order.max()+1), fill_value=0).reset_index()

Na zewnątrz:

   Order  Value
0      1     10
1      2      3
2      3      5
3      4      0
4      5     34
5      6      0
6      7     23
3
Michael Szczesny 3 październik 2020, 23:22