2016-03-19 5 views
0

sagen, dass ich eine Reihe hatte wie:Pandas gelten für alle Werte mit Ausnahme von fehlenden

[1,2, NAN, 4]

Wenn ich das täte:

series.apply(lambda a: a+2) 

Ich würde einen Fehler wegen der NAN bekommen. Gibt es eine elegante Möglichkeit, die NANs zu erhalten, während ich meine Änderung anwende?

+0

http://stackoverflow.com/questions/26614465/python-pandas-apply-function-if-a-column-value-is-not-null – ayhan

Antwort

1

versuchen Sie dies:

In [32]: s 
Out[32]: 
0 1.0 
1 2.0 
2 NaN 
3 4.0 
dtype: float64 

In [33]: s.apply(lambda a: a+2 if pd.notnull(a) else a) 
Out[33]: 
0 3.0 
1 4.0 
2 NaN 
3 6.0 
dtype: float64 
+1

Vielen Dank , aber was ist, wenn sie Saiten sind? np.isnan ("a") gibt einen Fehler aus –

+0

Ich habe meine Antwort aktualisiert - bitte überprüfen Sie sie – MaxU

Verwandte Themen