[Python] Csv data importeren en plotten

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Mr_gadget
  • Registratie: Juni 2004
  • Laatst online: 16:11

Mr_gadget

C8H10N4O2 powered

Topicstarter
Ik een serie temperatuursmetingen uitlezen uit een csv file en de data plotten met matplotlib.

De data ziet er zo uit:
code:
1
2
3
4
5
201707161507;23.437
201707161507;23.437
201707192019;24.937
201707192019;28.125
201707291331;23.375

En de code:
code:
1
2
3
4
5
6
7
8
9
from datetime import datetime
import numpy as np
datefunc = lambda x: datetime.strptime(x.decode("utf-8"), '%Y%m%d%h%m')
a = np.genfromtxt('/home/pi/DS_DATA_2017_07.csv', delimiter=';',   converters={0: datefunc}, dtype='object, float',           
              names=["date", "temp"])

print(a["date"])
print(a["temp"])
print(a[1])

Dit geeft voor de data 'none' helaas. Wat doe ik hier fout (beginner in python ;) )

Wat is eigenlijk een slimmere manier voor de timestamps? Unix timestamps?
(ik probeer voor Python te leren, dus geen behoefte aan een database ;) )

Acties:
  • +1 Henk 'm!

  • thechib12
  • Registratie: Februari 2010
  • Laatst online: 14:36
Ik ga de code niet voor je voordoen, maar kijk eens naar je converter.
Als we de strftime documentatie er bij pakken, vind je ergens een lijst met format codes. Hou jouw format er eens naast en probeer in je hoofd een string naar een datetime object te parsen met de huidige format.

Acties:
  • 0 Henk 'm!

  • KraveN
  • Registratie: November 2001
  • Laatst online: 08-10 23:43
Wellicht kun je eens kijken naar pandas voor het importeren van je csv naar een dataframe en dat werkt volgens mij ook samen met matplotlib. Je zou ook bokeh voor interactieve visuals kunnen overwegen en anders seaborn voor plots met eigenlijk maar 1 regel code.