2015-07-18 14 views
24

Mam małą ramkę DataFrame, którą chcę wydrukować za pomocą pand.pandas DataFrame Błąd "brak danych liczbowych do wydruku"

2 3 
0 1300 1000 
1 242751149 199446827 
2 237712649 194704827 
3 16.2 23.0 

Nadal staram się nauczyć spisków od wewnątrz pandy. Chcę fabułę W powyższym przykładzie, kiedy mówię.

df.plot() 

Dostaję najdziwniejszy błąd.

Library/Python/2.7/site-packages/pandas-0.16.2-py2.7-macosx-10.10-intel.egg/pandas/tools/plotting.pyc in _compute_plot_data(self) 
    1015   if is_empty: 
    1016    raise TypeError('Empty {0!r}: no numeric data to ' 
-> 1017        'plot'.format(numeric_data.__class__.__name__)) 
    1018 
    1019   self.data = numeric_data 

TypeError: Empty 'DataFrame': no numeric data to plot 

Chociaż rozumiem, że DataFrame ze swoimi bardzo nieregularnymi wartościami tworzy bardzo mało interesującą fabułę. Zastanawiam się, dlaczego komunikat o błędzie nie zawiera żadnych danych liczbowych do wykreślenia.

+1

Jakie dane można zobaczyć po uruchomieniu 'df.dtypes'? – chrisb

+1

Twoja DataFrame prawdopodobnie zawiera ciągi liczbowe. Wygląda na to, że kolumny zostały poprawnie przeanalizowane - możesz mieć tylko jedną kolumnę o nazwie "2 3". Aby pomóc Ci to naprawić, prawdopodobnie zobaczymy, jak zdefiniowano 'df'. – unutbu

+0

Wygląda na to, że możesz mieć dane zorientowane na wiersze, a pandy będą oczekiwały na kolumny, możesz je przetransponować. – JohnE

Odpowiedz

47

Spróbuj wykonać następujące czynności przed wydrukiem:

rodzaje
df=df.astype(float) 
+0

Chciałbym wyjaśnić takie rozwiązania. Jeśli ktoś przyjmie mój komentarz i całkowicie zrozumie tę odpowiedź, proszę podać wyjaśnienie. –

+3

@GregHilston jest dużo magii za pandami, na przykład kiedy używasz pandas.read_csv do czytania pliku. W szczególności musi wywnioskować typ danych. Czasami robi się nie tak. Moja odpowiedź powyżej wymusza na pandach próbę przekonwertowania danych na liczby zmiennoprzecinkowe. – alex314159

+0

Ma to dla mnie sens, dzięki za kontynuację> 2 lata później! –

Powiązane problemy