0
所以我有3個類,一個組類,一個傳感器類和一個值類。 這些類粗略的定義是這樣的:外鍵作爲QuerySet列
class SensorGroup(models.Model):
name = models.CharField(max_length=100)
logging_on = models.BooleanField(default=False)
class Sensor(models.Model):
device_id = models.CharField(max_length=25, primary_key=True)
name = models.CharField(max_length=25, blank=False)
last_updated = models.DateTimeField(auto_now=True)
sensor_group = models.ForeignKey(SensorGroup, related_name='sensors')
class Value(models.Model):
sensor = models.ForeignKey(Sensor, related_name='values')
time = models.DateTimeField(auto_now_add=True)
value = models.FloatField(blank=False)
的值是在20秒的時間間隔增加了對每個傳感器。 我希望把它變成一個表像這樣用pandas.DataFrame.from_records()
說,第1組:
| sensor_1 | sensor_2 | sensor_3 | timestamp |
|----------+----------+----------+--------------|
| 1.5 | 2.0 | 1.0 | 12:33 2/4/17 |
|----------+----------+----------+--------------|
| 2.0 | 1.5 | 3.3 | 12:34 2/4/17 |
....
我試過到目前爲止:
qs = Sensors.all().values('name', 'values__value')
df = pd.DataFrame.from_records(list(qs))
print(df)
息率
name values__value
0 sensor_1 0.0
1 sensor_1 1.0
2 sensor_1 2.0
3 sensor_2 0.0
4 sensor_2 1.0
5 sensor_2 2.0
有一種使這個查詢並將其轉換爲數據集的方法?
你想要的傳感器值按「時間」屬性的值分組? – ikkuh
按名稱屬性分組並按時間屬性排序。但我想按時間屬性分組也是一樣 –