2017-07-10 5 views
1

Ich bin neu in der Programmierung im Allgemeinen und habe eine Raspberry Pi zusammen mit meinem MacBook Pro als Testbank für meine Python-Kreationen verwendet.AttributeError: 'Modul' Objekt hat kein Attribut 'Timedelta'

Mein neuestes Projekt bestand darin, alle 5 Minuten ein Python-Programm auszuführen, das einen DH11-Sensor verwendet, um Temperatur und Feuchtigkeit in einer CSV-Datei zu messen.

Ich versuchte dann, Bokeh mit Pandas zu verwenden, um die Daten alle 10 Minuten abzurufen und zu plotten und eine HTML-Datei zu generieren, die dann in einer Webdatei gehostet werden konnte.

Diese in der Praxis funktionierte perfekt auf meinem Laptop aber, wenn das Python-Programm zu meinem Raspberry Pi die Daten dieser Fehler zurückgegeben Plotten bewegt über:

Traceback (most recent call last): 
    File "DataAnalysis.py", line 2, in <module> 
    from bokeh.plotting import figure, output_file, show 
    File "/usr/local/lib/python2.7/dist-packages/bokeh/plotting/__init__.py", 
line 2, in <module> 
    from ..document import Document; Document 
    File "/usr/local/lib/python2.7/dist-packages/bokeh/document.py", line 28, 
in <module> 
    from .core.json_encoder import serialize_json 
    File "/usr/local/lib/python2.7/dist-packages/bokeh/core/json_encoder.py", 
line 49, in <module> 
    from ..util.serialization import convert_datetime_type, 
is_datetime_type, transform_series, transform_array 
    File "/usr/local/lib/python2.7/dist-packages/bokeh/util/serialization.py", 
line 55, in <module> 
    DATETIME_TYPES.add(pd.Timedelta) 
AttributeError: 'module' object has no attribute 'Timedelta' 

Lauf Python 2.7, Bokeh 0.12.6

Datei DataAnlysis.py:

import pandas 
from bokeh.plotting import figure, output_file 
import time 
import datetime 

data = pandas.read_csv("http://antondubek.hopto.org/dataFile.csv", 
parse_dates = ["Time"]) 

p = figure(plot_width = 500, plot_height = 250, x_axis_type = 'datetime', 
responsive = True) 

p.line(data["Time"], data["Humidity"], color = "Blue", alpha = 0.5) 
p.circle(data["Time"], data["Humidity"], size = 5, color = "Blue") 

p.line(data["Time"], data["Temperature"], color = "Red", alpha = 0.5) 
p.circle(data["Time"], data["Temperature"], size = 5, color = "Red") 

output_file("/var/www/html/TempReadings.html") 

ich das Web durchsucht haben, so gut ich kann, deinstalliert und neu installiert bokeh es sowohl mit pip noch ohne Glück.

Jede Hilfe wäre willkommen.

Edit: Für alle, die derzeit etwas Ähnliches versuchen, unterstützt Raspian Jessie Armhf (Raspberry Pi 2) derzeit nur bis zu Pandas 0.14 und hat daher kein Datetime-Objekt. Habe momentan keine Umgehung für dieses Projekt gefunden.

+0

Welche Version von Pandas verwenden Sie? nach https://pandas.pydata.org/pandas-docs/stable/timedeltas.html 'pd.Timedelta' wurde hinzugefügt in 0.15 – DeepSpace

+0

Entfernte' Bokeh'-Tag, das ist eine Frage über Pandas. (Sie müssen wahrscheinlich aktualisieren) – bigreddot

+0

Vielen Dank beide, Pandas ist ein Fehler beim update begegnet, aber jetzt, denke, Sie sind richtig darin ein Update nach 0,15 (Currently 0.14) –

Antwort

0

Das ist für mich gearbeitet:

sudo apt-get update 
sudo pip install pandas --upgrade 
Verwandte Themen