2016-04-04 10 views
0

Ich benutze die Isdigit-Funktion in Pandas-Serie. Es gibt mir NaN-Werte, auch wenn die Serie Integer enthält. Was könnte hier möglicherweise falsch sein.Pandas Serie Isdigit() Funktion gibt NaN

+0

Bitte geben Sie den Code, so dass andere überprüfen können und erklären warum –

+0

isdigit ist für eine Zeichenfolge. Was ist dein Datentyp? – Alexander

+0

df = employee.areacode.str.isdigit() – DataEnthu

Antwort

0

Ich glaube, Sie erste Spalte areacode-string von astype umwandeln kann und dann isdigit verwenden:

employee = pd.DataFrame({'areacode':pd.Series([204,200,'AAA','BBB'])}) 
print employee 
    areacode 
0  204 
1  200 
2  AAA 
3  BBB 

employee['areacode'] = employee['areacode'].astype(str) 
print employee.areacode.str.isdigit() 
0  True 
1  True 
2 False 
3 False 
Name: areacode, dtype: bool 

Ohne NaN Werte erhalten Umwandlung:

employee = pd.DataFrame({'areacode':pd.Series([204,200,'AAA','BBB'])}) 

print employee.areacode.str.isdigit() 
0  NaN 
1  NaN 
2 False 
3 False 
Name: areacode, dtype: object 
+0

okay. Danke .. es hat funktioniert. – DataEnthu

+0

Froh kann dir helfen! Viel Glück! – jezrael