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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.