Reportez-vous au cahier
officiel fourni par nilmtk combiné au manuel de l'API pour une compréhension approfondie.
point d'arrêt
import sys
sys.path.append('G:/Code/')
from nilmtk import DataSet
iawe = DataSet(r'G:\Code\DataSet\IAWE\iawe.h5')
elec = iawe.buildings[1].elec
fridge = elec['fridge']
df = next(fridge.load())
Afficher les types de variables actuels
À ce moment, le réfrigérateur est de type ElecMeter, puis appelez la méthode load ()
pour afficher le manuel de l'API
correspondant frige.load () renvoie un générateur de DataFrames
, vous pouvez voir que df est un DataFrames à ce temps, jetez un oeil au contenu:
Comment retourner une série de puissance?
Pour vérifier le nombre de colonnes du réfrigérateur de l'appareil, comment recherchez-vous dans le manuel de l'API ? Tout d'abord, le frigo à ce moment est de type ElecMeter, alors trouvez le manuel
dans la méthode définie par ElecMeter , appelez available_columns(), et renvoyez une liste, les éléments de la liste sont des tuples et les tuples sont sous la forme de ( , ).
print(fridge.available_columns())
Le retour à ce moment est,
par exemple, il faut maintenant retourner une série de puissance apparente, consulter le manuel
Dans le paramètre entrant ac_type="apparent"
qui est
series = next(fridge.power_series(ac_type='apparent'))
Comment spécifier une grandeur physique et retourner la colonne correspondante ?
Grâce à available_columns(), vous pouvez savoir que les grandeurs physiques incluent la puissance, la tension, le courant, la fréquence et le facteur de puissance.
Si vous souhaitez restituer la puissance maintenant et inclure les valeurs active, réactive et apparente, comment l'appelez-vous ? Selon la méthode de chargement d'ElecMeter, les paramètres physical_quantity et ac_type doivent être passés dans
.
df = next(fridge.load(physical_quantity = 'power',ac_type = None))
Comment puis-je renvoyer les données rééchantillonnées si nécessaire ?
D'après l'horodatage ci-dessus, nous pouvons voir que la fréquence d'échantillonnage actuelle est de 1 Hz. Si les données souhaitées sont d'un point de données par minute, comment les lire ?
La méthode load () fournit le paramètre de rééchantillonnage
60s pour prendre un point de données, à savoir
df = next(fridge.load(physical_quantity = 'power',ac_type = None, sample_period=60))
Résumer:
1. frige est un type ElecMeter, donc quand vous voulez lire les données de frige, vous devez trouver une méthode sous ElecMeter selon le manuel. 2.
Lorsque vous avez besoin de renvoyer des données sous forme de série, appelez load_series(). Si vous souhaitez extraire des données de puissance, vous pouvez appeler directement power_series()
3. Lorsque vous devez renvoyer des données sous la forme de DataFrame, appelez load().
Mise à jour à 22:26:50 le 9 mai 2023 : Le lien est dans la zone de commentaire, et vous devez vous connecter scientifiquement.