Angenommen, ich habe einen DataFrame mit einigen NaN
s:
>>> import pandas as pd
>>> df = pd.DataFrame([[1, 2, 3], [4, None, None], [None, None, 9]])
>>> df
0 1 2
0 1 2 3
1 4 NaN NaN
2 NaN NaN 9
Was ich tun muss, ist, jeden NaN
durch den ersten Nichtwert NaN
in derselben Spalte darüber zu ersetzen . Es wird angenommen, dass die erste Zeile niemals ein enthält NaN
. Für das vorherige Beispiel wäre das Ergebnis also
0 1 2
0 1 2 3
1 4 2 3
2 4 2 9
Ich kann einfach den gesamten DataFrame Spalte für Spalte, Element für Element durchlaufen und die Werte direkt festlegen. Gibt es jedoch eine einfache (optimalerweise schleifenfreie) Möglichkeit, dies zu erreichen?