Re: Verstaendnisproblem
eilfh <[email protected]>
| Newsgroups | gmane.comp.python.general.german |
|---|---|
| Message-ID | <[email protected]> |
Am Donnerstag, 11. Februar 2021, 13:19:56 CET schrieb Stefan Schwarzer:
Hallo, Stefan
vielen Dank für Deine schnelle Antwort
Vorhanden sind (neben Anfängerwissen über python, pandas & co.)
eine (Excel-)Tabelle mit Zählerständen zu konkreten Terminen,
die ich in ein pandas-Dataframe eingelesen habe.
Mit df...shift(1) kann ich die Differenzen zwischen Zählerablesungen bestimmen.
Gelegentlich wird auch ein Zähler ausgetauscht.
x1 sei die letzte Ablesung vor dem Tausch
x2, x3 seien Ausbau- bzw. Einbauzählerstand
x4 erste Ablesung nach dem Tausch
(x5 sei die (Zeit-)Differenz zischen den beiden routinemäßigen Ablesungen.)
Der neu zu berechnende Verbrauch wäre dann
v = (x2 - x1 + x4 - x3) / x5
> bekomme ich keinen Skalar, sondern ein `pandas.Series`- Objekt.
Du hast recht, das war ein entscheidender Hinweis!
statt:
x1 = df.loc[df.Datum == '1993-09-09', 'Spalte_7']
---> 55 490
besser:
x1 = df.at[55, 'Spalte_7']
---> 490 (der gesuchte Skalar)
aber woher/womit erfahre ich die "rowid" 55 ?
(... .ix is deprecated. ....)
D.h. die "Zeile" mit dem Datum == '1993-09-09'
aa = df.iloc["1993-09-09"]
TypeError: cannot do positional indexing on <class
'pandas.core.indexes.range.RangeIndex'> with these indexers
[1993-09-09] of <class 'str'>
Datum datetime64[ns], aber nicht als Index
df.set_index('Datum')
# nach dem Einlesen, bringt nicht den erwarteten/erhofften Effekt
Vielen Dank
Frank
_______________________________________________
python-de maillist - [email protected]
https://mail.python.org/mailman/listinfo/python-de