from pandas import DataFrame
from numpy.random import randn
df = DataFrame(randn(5, 3), index=['a', 'c', 'e', 'f', 'h'], columns=['one', 'two', 'three'])
df2 = df.reindex(['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'])
df2['one']['i'] = 5
Questa è la mia uscita
one two three
a -1.132283 -1.204504 -0.763302
b NaN NaN NaN
c 1.778895 -1.931615 -0.040319
d NaN NaN NaN
e 0.612546 -0.846982 0.524779
f -0.527883 0.342746 -0.010093
g NaN NaN NaN
h -0.636055 -0.909910 0.642658
i 5.000000 NaN NaN
Quello che sto cercando di capire è per le colonne che hanno un NaN nell'ultima fila (essendo questa riga i, desidero spostare le colonne di 1.)
In questo momento, sto facendo df2['two'].shift(1)
e df2['three'].shift(1)
, ma c'è un modo consigliato di codifica questo che mi manca?
Così ho df2[-1:]
come l'ultimo indice ... ma sto un po 'bloccato qui.