From 40dda037f66b35efd8b046c5c7f1712f6f41211d Mon Sep 17 00:00:00 2001 From: Oscar Nydza Date: Thu, 31 Aug 2023 11:23:52 +0200 Subject: [PATCH 1/6] added workig html --- ...ds-Lead-To-PyKX-Technical-Counterpart.html | 3285 +++++++++++++++++ assets/2023/08/05/132_0.png | Bin 0 -> 13904 bytes assets/2023/08/05/134_0.png | Bin 0 -> 24950 bytes assets/2023/08/05/fc_p.png | Bin 0 -> 55450 bytes assets/2023/08/05/heatmap3.png | Bin 0 -> 75248 bytes assets/2023/08/05/loadperhour.png | Bin 0 -> 8517 bytes assets/2023/08/05/loadperweekday.png | Bin 0 -> 8569 bytes assets/2023/08/05/loss_graph_p.png | Bin 0 -> 31018 bytes assets/2023/08/05/loss_python.png | Bin 0 -> 26726 bytes assets/2023/08/05/rainfall.png | Bin 0 -> 12474 bytes assets/2023/08/05/test_python.png | Bin 0 -> 56544 bytes 11 files changed, 3285 insertions(+) create mode 100644 _posts/2023-08-05-All-Roads-Lead-To-PyKX-Technical-Counterpart.html create mode 100644 assets/2023/08/05/132_0.png create mode 100644 assets/2023/08/05/134_0.png create mode 100644 assets/2023/08/05/fc_p.png create mode 100644 assets/2023/08/05/heatmap3.png create mode 100644 assets/2023/08/05/loadperhour.png create mode 100644 assets/2023/08/05/loadperweekday.png create mode 100644 assets/2023/08/05/loss_graph_p.png create mode 100644 assets/2023/08/05/loss_python.png create mode 100644 assets/2023/08/05/rainfall.png create mode 100644 assets/2023/08/05/test_python.png diff --git a/_posts/2023-08-05-All-Roads-Lead-To-PyKX-Technical-Counterpart.html b/_posts/2023-08-05-All-Roads-Lead-To-PyKX-Technical-Counterpart.html new file mode 100644 index 0000000..2b5d3b7 --- /dev/null +++ b/_posts/2023-08-05-All-Roads-Lead-To-PyKX-Technical-Counterpart.html @@ -0,0 +1,3285 @@ + + + + + TrafficQProjectRecords + + + + + + +
+

All Roads Lead + to Kdb: the technical counterpart

+

This post serves as a follow-up to our prior article, All + Roads Lead to PyKX, where we introduced the utility of the PyKX + library from the perspective of Emma Monad, the CTO of a large fictional + company known as Mad Flow. In addition to this high-level perspective, + the focus of this post is on Python programmers who are eager to + explore the technical intricacies that were left unexplained in the + aforementioned article. Consequently, the post will provide them with a + highly detailed, step-by-step example of how to migrate an existing + Python codebase into PyKX. Similarly to the outcomes presented in the + post Accelerating + Python Workflows using PyKX, which we highly recommend reading, we + will observe a significant performance advantage of the resulting PyKX + code compared to the initial Pandas implementation. More references are + available in the bibliography at the end of the post.

+

The structure of the post will be as follows:

+ +

The initial section regarding the use case is independent of + programming languages and is primarily included for reference purposes. + If you're eager to delve directly into the code and begin learning how + to migrate pure Pandas-based Python code into PyKX, you can proceed to + the second section now and revisit the first section as necessary.

+

Use Case

+

With the aim of predicting traffic congestion in the presence of + rain, Mad Flow dedicated significant effort to preparing and integrating + weather and traffic data into an LSTM model. This endeavor aligned with + other studies + that sought to forecast traffic patterns using LSTM models based on air + pollution. Just like findings from studies in cities such as Manchester, + Shenzhen and + Belgrade, + our results project a weekday traffic volume increase of 5-15% during + peak hours in the presence of rain. +

+

Like in most projects related to smart cities, the used data is + notable diverse, so it needed a lot of preparatory work. The following + sections will detail the data sources, the cleansing and interpretation + processes, as well as the used model.

+

Data sources

+

The Madrid City + Council provides weather and traffic data, including both real-time + and historical records. For the purpose of model training, only the + historical data is pertinent. These datasets, formatted as CSV files, + are categorized by months spanning from the year 2018 to the + present.

+
+ 🔍 You can access the different datasets required to run this notebook from the following links: + + +
+

Traffic data

+

The traffic sensors are strategically positioned at traffic lights + throughout the city of Madrid. The collected data gather together + diverse measurements of road conditions, including speed and traffic + volume. All of these metrics are encapsulated in the load + metric, quantified in percentage terms to denote levels of congestion. + The format of the traffic + table is presented as follows:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
traffic_stationelement typeintensityocupationloadvmederrorintegration perioddate
01001M3032409059N52022-12-01 00:00:00
11001M3032409059N52022-12-01 00:15:00
21001M303001066N52022-12-01 00:30:00
+

This table amass information from various traffic stations, detailing + elements such as traffic intensity, occupancy, congestion load, and + other relevant data, all correlated with specific dates and times.

+

The table also includes a column for the date and another column that + identifies the sensor. This identification will be used to establish a + link with its corresponding coordinates by utilizing the subsequent traffic + stations table:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
element typedistrictidcodenameutm_xutm_yLongitudeLatitude
0"URB"43840"01001""Jose Ortega y Gasset E-O - PÂș + Castellana-Serrano"4416154.47577e+06-3.6883240.4305
1"URB"43841"01002""Jose Ortega y Gasset O-E - Serrano-PÂș + Castellana"4417064.47577e+06-3.6872640.4305
2"URB"13842"01003""PÂș Recoletos N-S - Almirante-Prim"4413194.47484e+06-3.6917340.4221
+

Weather data

+

The table below provides a snapshot of the type of information + available in the weather + dataset:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
weather_stationmagnitudeyearmonthdayH01V01...
01088120221222270N...
110882202212229N...
2108832022122294.7N...
310886202212221031N...
410887202212222N...
+

This dataset contains hourly meteorological observations, including + temperature, humidity, wind speed, and precipitation measurements.

+

Each row documents various details about a specific meteorological + station:

+ +

Furthermore, we will require the geographical coordinates of the + various stations, which are available in a distinct table + provided by the Madrid City Council.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
weather_stationLongitudeLatitude
04-3.7122640.4239
18-3.6823240.4216
216-3.6392440.44
318-3.7318440.3948
4108-3.71788140.47663
+

Data Cleansing + +

+

Upon loading the data, the subsequent task involved its preparation + for analysis and modeling. The eventual consolidation of this cleaned + data into a unified table will occur during a subsequent phase.

+

After loading the data, the next step was to get it ready for + analysis and modeling. Given the diverse nature of the datasets, the + process of data cleansing will be conducted individually for each + dataset. We'll bring all this cleaned data together into a unified table + in a later phase.

+

Traffic Data

+

The process employed to clean the traffic dataset involves the + following steps:

+
    +
  1. +

    Initially, values characterized by measurement errors are + excluded from consideration. The documentation designates these values + using the symbol "N".

    +
  2. +
  3. +

    Subsequently, solely the load measurements, which constitute the + focus of our analysis, are retained.

    +
  4. +
  5. +

    The data is then grouped based on each date and station, + subsequently computing the average load value for each group:

    +
  6. +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
datetraffic_stationtraffic_load
2022-12-01 00:00:0010010
2022-12-01 00:00:0010020
2022-12-01 00:00:0010030
+

Weather Data

+

Concerning the weather dataset, the procedures undertaken were as + follows:

+
    +
  1. +

    In the weather dataset, the date is split into separate columns + for day, month, and year. However, in the traffic dataset, this + information is combined. So, we merged the columns to create a single + 'date' column with the format:" day-month-year.

    +
  2. +
  3. +

    Additionally, given that each individual row contains all 24 + daily measurements taken at a weather station, along with their + respective magnitudes, we need a transformation where each hourly + measurement value and its corresponding validity status are discrete + entries within separate rows. This presents an opportunity to remove any + measurements that are marked as invalid.

    +
  4. +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
hourvalue
00 days 00:00:007.1
10 days 00:00:006.8
20 days 00:00:002.8
30 days 00:00:005.6
+
    +
  1. +

    To standardize the time measurement format and align it with the + traffic table, we merge the date with the time. As a result, the updated + date format + becomes:date-month-year hour:minute:second

    +
  2. +
  3. +

    Lastly, we restructure the diverse types of measurements into + distinct columns, enhancing the organizational coherence of the + dataset:

    +
  4. +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
dateweather_stationdirectionhumiditypressurerainfallsolartemperaturewind
02022-12-01 00:00:004000007.10
12022-12-01 00:00:0080670009.40
22022-12-01 00:00:00160730008.90
+

Location Data

+

To make it easier to combine the tables we mentioned, we need to + connect the traffic sensors with the weather stations. To do this, we + can use a distance matrix that helps us find the closest pairs of both + types of stations. Instead of directly measuring the distance using + coordinates, we decided to go with the Haversine + distance. This method calculates the distance in meters between + coordinate pairs, which gives a clearer idea of the distances.

+

This visualization is best shown using a heatmap, where the distances + are displayed on a range from 0 to 20 kilometers:

+
+ +
Figure 1: Heatmap of distances in km between weather and traffic + stations
+
+

If we look at the shortest distances between each type of station, we + end up with a mapping between these two tables:

+ + + + + + + + + + + + + + + + + + + + + + + + + +
traffic_stationweather_station
03840109
13841109
238428
+

The Final Table + +

+

After we've done all the setup for the three tables - weather, + traffic, and distance - we can now join them together. Because the + weather table has data every hour, while the traffic data is available + every 15 minutes, we'll combine them using an 'asof' join method. Then, + we'll add time and day-of-the-week details to the dataset, which will + help us study how these factors are connected to traffic congestion.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
datetraffic_stationloadDistanceClosestweather_stationdirectionhumiditypressurerainfallsolartemperaturewindweekdayhour
02022-12-01 00:00:001001015180670009.4030
12022-12-01 00:00:001002015180670009.4030
22022-12-01 00:00:001003014180670009.4030
32022-12-01 00:00:001006015180670009.4030
42022-12-01 00:00:00100901404000007.1030
+

Data interpretation + +

+

Traffic patterns exhibit a pronounced dependency on time. To dig + deeper into the data, a filtering process will be applied to extract + instances of peak traffic. This focused dataset will help us really get + a better grip on traffic dynamics.

+

The next figures illustrates the outstanding seasonality within the + dataset: + + + + + +
+
+ +
Figure 2: Load per Hour +
+
+
+
+ +
Figure 3: Load per + Weekday
+
+
+

+

It's clear that weekdays have more traffic compared to holidays. + Likewise, during the daytime, there's a higher traffic flow than at + nighttime.

+

Concerning the relationship between Rainfall and Load, preliminary + observations indicate a limited occurrence of rainy days within our + dataset:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
rainfall
count841068
mean0.0130932
std0.194232
min0
50%0
90%0
99.9%2.9
max10.9
+

After looking closely at the percentiles of the precipitation column, + it's clear that recorded instances of rainfall are quite scarce. To + address this limitation, the measurements were divided into distinct + categories based on the intensity of the rainfall. This led to a + separate analysis for datasets involving heavy rain, moderate rain, and + times when there was no rain. This analysis was done hourly, to minimize + the impact of time on traffic patterns.

+

The results of this analysis show that on average, traffic congestion + increases by around 5% to 14% during rainy hours. This consistently + matches the findings discussed in the Use Case + section.

+
+ +
Figure 4: The average traffic load per hour for measurements + categorized as heavy rain (blue), moderate rain (brown), and no rain (green):
+
+

To confirm the statistical importance of the differences between + these groups, we conducted an analysis of variance (ANOVA) test. + Notably, the ANOVA results strongly suggest significant variations in + load levels among the different rain intensity categories for all hours. + For example, let's take a look at the results for hour 12.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
sum_sqdfFPR(>F)
C(rainfall)37650.7620.11441.3346e-23
Residual8.01363e+0625687nannan
+

We chose to include rainfall as a factor in the model. However, the + other meteorological conditions didn't show similarly clear results, so + we decided to leave them out of the model.

+

The Model

+

For the purpose of performance evaluation, a preliminary model was + developed employing a basic Long Short-Term Memory (LSTM) architecture + with a memory span of 5 steps. The model's objective is to forecast the + load at a specific traffic station. The model input encompasses + historical load data, rainfall measurements, as well as the hour and day + of the week.

+

Preliminary results derived from a single station exhibit promising + outcomes, as demonstrated in Figure 6. In this figure, we compare the + actual traffic load with the predictions made by the LSTM model. + Furthermore, an analysis of the training and validation loss curves + (Figure 5) indicates that the model is not experiencing issues related + to overfitting or underfitting.

+ + + + + +
+
+ +
Figure 5: Train vs Validation loss curves plot
+
+
+
+ +
Figure 6: Traffic Forecasting for a traffic station +
+
+
+
+
+

PyKX migration + +

+
+
+

Despite the promising forecasting results yielded by the LSTM model, + certain considerations arose concerning the efficiency of the Python + code employed for project implementation. After profiling the entirity + of the process, we found 4 key areas in which the code was behaving + worse than expected:

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Pandas Time
Cleaning Weather247 ms ± 10.4 ms
Cleaning Traffic25.5 s ± 1.29 s
Join Final Table7.1 s ± 168 ms
Model Ingestion Preprocess3.2 s ± 54.2 ms
+

At this point, a fundamental decision had to be made regarding the migration strategy. Let's delve into the two + alternatives at our disposal, along with their positive and negative aspects:

+ + +

Let's get started!

+
+ 🔍 You can find on Github the Original + Python Project that will be migrated into PyKX. +
+
+
+

First of all we need to install and import PyKX:

+
+
+
+
!pip install pykx
+
+
+
+
+
import pykx as kx
+
+
+
+
+ 🔍 A license is required to use some of the following features. You can find more information in the + PyKX installation documentation. +
+
+
+

Datasets

+
+
+

An excellent starting point for the migration process involves transferring our data to the q environment. + We can even revert these objects to Pandas and leverage all our existing code. This approach ensures that our + data remains stored within the kdb environment, thus benefitting from its rapid and scalable database + capabilities. + However, it's important to acknowledge that we might sacrifice the processing prowess of kdb+/q. As a result, we + will + proceed with deeper steps in the migration process.

+

Before continuing, be sure to download the datasets required for running the next pieces of + code.

+
+
+

Traffic

+
+
+

The preprocessing of the traffic table was one of the most critical + parts in terms of time. Later on, we will showcase the improvement in + execution time compared to our pure Pandas implementation.

+

The data loading will be executed employing the utilities facilitated + by PyKX:

+
+
+
+
traffic = kx.q.read.csv('../12-2022.csv', types="IPSIIIISI", delimiter=';')
+
+
+
+
+
+    Further Information + on PyKX Read/Write Utils +
+
+

+ PyKX provides an array of functions designed to facilitate data loading and writing tasks. These functions + encompass the capability to handle diverse file types, spanning both general formats and those specific to the + q language. Notably, the q-specific functionalities enable seamless transfer of tables between the q context + and the Python context, offering a bidirectional exchange of data.

+

+ Specifically, the parameters of the read.csv function adhere to conventional standards. The + file's URL and + delimiter are specified. It is important to emphasize the types parameter, which expects the q types associated with each column. +

+
+
+
+
+
+
print(traffic)
+
+
+
+ id fecha tipo_elem intensidad ocupacion carga vmed .. +-----------------------------------------------------------------------------.. +1001 2022.12.01D00:00:00.000000000 M30 3240 9 0 59 .. +1001 2022.12.01D00:15:00.000000000 M30 3240 9 0 59 .. +1001 2022.12.01D00:30:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D00:45:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D01:00:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D01:15:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D01:30:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D01:45:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D02:00:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D02:15:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D02:30:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D02:45:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D03:00:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D03:15:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D03:30:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D03:45:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D04:00:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D04:15:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D04:30:00.000000000 M30 300 1 0 66 .. +1001 2022.12.01D04:45:00.000000000 M30 300 1 0 66 .. +.. +
+
+

As a result of this process, our table is now a PyKX object:

+
+
+
+
type(traffic)
+
+
+
+ pykx.wrappers.Table +
+
+

Let's examine the initial few rows of this table:

+
+
+
+
print(traffic[:3])
+
+
+
+ id fecha tipo_elem intensidad ocupacion carga vmed .. +-----------------------------------------------------------------------------.. +1001 2022.12.01D00:00:00.000000000 M30 3240 9 0 59 .. +1001 2022.12.01D00:15:00.000000000 M30 3240 9 0 59 .. +1001 2022.12.01D00:30:00.000000000 M30 300 1 0 66 .. +
+
+
+
+    Further Information + on pythonic indexing in PyKX +
+
+

+ Accessing data within PyKX objects, be it lists or tables, follows a methodology analogous to that of Numpy or + Pandas. This facilitates the indexing of PyKX objects without necessitating the explicit utilization of q + functions. Furthermore, the capacity to index by columns is an additional convenience offered by this + approach.

+ >>> print(weather["H01"][:3]) +
270 9 94.7

+
+
+
+
+

We have the kx.q.qsql interface integrated in PyKX, + which allows us to query into q tables concisely.

+
+
+
+
+    Further Information + on qSQL and SQL querys +
+
+

+ PyKX allows you to use qSQL queries using API functions. This includes select, exec, + update and delete functions, which share some common characteristics, mainly with + the arguments they receive. The first three share roughly this function call structure: +

+ kx.q.qsql.{function}({tab}, columns=..., where=..., by=...) +
+

+ The columns argument expects either a list of strings or a dictionary where the key is the column + name and the value is the actual value you want in this column if let's say you want to apply a function to + it. Let's see an example:

+ >>> print(kx.q.qsql.select(weather, {"magnitude": "count distinct magnitude"}, by=["weather_station"])[:3]) +
weather_station| magnitude + ---------------| --------- + 4 | 1 + 8 | 2 + 16 | 2 +
+
+
+

+ But if you are more familiarized with the q environment it is also possible to use q functions. This approach + reduces the verbosity of our functions compared to the equivalent in Python. +

+ >>> print(kx.q("{select count distinct magnitude by weather_station from x}", weather)[:3]) +
weather_station| magnitude + ---------------| --------- + 4 | 1 + 8 | 2 + 16 | 2 +
+
+
+

+ PyKX lets you use ANSI SQL queries too!

+ >>> print(kx.q.sql("SELECT weather_station, COUNT(DISTINCT(magnitude)) FROM $ 1 GROUP BY weather_station", weather)[:3]) +
weather_station magnitude + ------------------------- + 4 1 + 8 2 + 16 2 +
+
+
+
+
+
+

To preprocess the traffic table our objective is to ascertain the + average load based on date and season, while eliminating measurement + errors. The prowess of qSQL enables us to accomplish this feat through a + singular query:

+
+
+
+
traffic = kx.q.qsql.select(traffic,
+                         columns = {'traffic_load': 'avg carga'},
+                         by = {"date":'fecha', "traffic_station": 'id'}, 
+                         where = "error=`N")
+
+
+
+
+
print(kx.q("3#",traffic))
+
+
+
+ date traffic_station| traffic_load +---------------------------------------------| ------------ +2022.12.01D00:00:00.000000000 1001 | 0 +2022.12.01D00:00:00.000000000 1002 | 0 +2022.12.01D00:00:00.000000000 1003 | 0 +
+
+
+
+    Pandas Alternative: + Traffic Cleaning +
+
+

+ Although it may look like a simple query, it is performing a seriously heavy operation. The original Pandas + implementation looked like this:

+ >>> traffic = traffic[traffic["error"] == "N"].rename(columns={"carga":"load", "id":"traffic_station"}) + >>> traffic['date'] = pd.to_datetime(traffic['fecha'], errors='coerce') + >>> traffic.drop(["tipo_elem", "error", "periodo_integracion", "fecha", "intensidad", "ocupacion", "vmed"], axis=1, inplace=True) + >>> traffic.groupby(["date", 'traffic_station']).mean().reset_index() +
+

+ We observe a noticeable improvement in code legibility, especially once you have familiarised a little bit + with the qSQL syntax. The code looks sleeker and simpler using PyKX. We noticed a roughly 10x reduction in + execution time:

+ + + + + + + + + + + +
Pandas TimePyKX Time
Cleaning Traffic25.5 s ± 1.29 s1.65 s ± 248 ms

+

+ This time we achieved both simpler and faster code, which we can agree can be considered as a success.

+
+
+
+
+

Keyed table indexing is different; that's why if we want to see the + first values of the table, we need to use the # + (take) operator.

+
+
+
+
print(kx.q("3#",traffic))
+
+
+
+ date traffic_station| traffic_load +---------------------------------------------| ------------ +2022.12.01D00:00:00.000000000 1001 | 0 +2022.12.01D00:00:00.000000000 1002 | 0 +2022.12.01D00:00:00.000000000 1003 | 0 +
+
+
+
+    Further Information + on Using Numpy and Pandas +
+
+

+ For individuals who are still acclimatizing to the kdb+/q ecosystem, a partial adoption of Numpy's + functionality remains accessible. Specifically universal functions. By using this type of + function, the average q function that was employed in the previous query can be rephrased as follows:

+ >>> import numpy as np + >>> + >>> def npmean(arr): + >>> return np.add.reduce(arr) / len(arr) + >>> + >>> print(npmean(traffic["load"])) +
5.4

+

+ While the ability to reuse numpy functions inside q is really nice and can be of great help during a migration + like the one we are exemplifying, we found that we were not able to use this numpy function on our + kx.q.qsql() query. After executing the previous code, our query would look something like this: +

+ + >>> kx.q["npmean"] = npmean + >>> traffic = kx.q.qsql.select(traffic, + columns = {'traffic_load': 'npmean carga'}, + by = {"date":'fecha', "traffic_station": 'id'}, + where = "error=`N") +
+

+ Notice the function called to perform the average of the traffic_load column is the one defined + earlier. Even though we didn't get any errors, this resulted in our code running for over 20 minutes with no + feedback until we eventually stopped it manually, so we can't recommend the usage Numpy functions inside a + qSQL query like we did. We suspect it may have something to do with q's avg function (and all of + q's functions) being optimised for this kind of usages and Numpy's implementation not being ready to deal with + how kdb+/q implements its tables. It may also have something to do with the group by clause, + which creates a keyed table on q, but we can't confirm it as of now. +

+

+ On the other hand, Pandas can seamlessly interface with PyKX objects through the Pandas API. This can be + effortlessly achieved by importing Numpy and Pandas and toggling a designated flag. We can try to replicate + the previous select:

+ >>> import os + >>> os.environ['PYKX_ENABLE_PANDAS_API'] = 'true' + >>> import numpy as np + >>> import pandas as pd + >>> + >>> print(traffic.iloc[traffic["error"] == "N"][["date", "traffic_station","load"]].head()) +
fecha id carga +---------------------------------------- +2022.12.01D00:00:00.000000000 1001 0 +2022.12.01D00:15:00.000000000 1001 0 +2022.12.01D00:30:00.000000000 1001 0 +2022.12.01D00:45:00.000000000 1001 0 +2022.12.01D01:00:00.000000000 1001 0 +
+
+

+ However, it's worth noting that the Pandas API is currently under development, hence not all of Pandas + functions have been fully incorporated yet. And unfortunately, groupby is one of them. We hope + that in the future we can migrate our Pandas code to PyKX without any changes.

+
+
+
+
+

Weather

+
+
+

This table, serving as the traffic table, will also be imported into + the Python environment. Consequently, it becomes accessible as a Python + object, albeit not within q scopes.

+
+
+
+
weather = kx.q.read.csv('../dic_meteo22.csv', types='I'*4 + '*'*4 + 'FS'*24, delimiter=';')
+
+
+
+

To display a table in markdown format, we can transfer it to + Pandas:

+
+
+
+
weather[:3].pd()
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PROVINCIAMUNICIPIOESTACIONMAGNITUDPUNTO_MUESTREOANOMESDIAH01V01...H20V20H21V21H22V22H23V23H24V24
0287910881b'28079108_81_98'b'2022'b'12'b'22'270.0N...218.0V228.0V227.83V213.67V233.83V
1287910882b'28079108_82_98'b'2022'b'12'b'22'9.0N...10.0V10.0V9.00V9.00V8.00V
2287910883b'28079108_83_98'b'2022'b'12'b'22'94.7N...86.7V91.4V93.80V96.30V98.70V
+
+
+
+    Further Information + on Python/Q transformations +
+
+

+ Objects from q can be converted to Pandas with .pd(), to PyArrow with .pa(), to + Numpy with .np() and to Python with .py() methods. This flexibility empowers Python + developers, especially those new to PyKX, to seamlessly tap into the capabilities of kdb+ databases while + acquainting themselves with q. +

+
+
+
+

As is evident, these objects are not currently within the q memory + space. Let's proceed to explore how we can access and leverage q + features on these objects. First, we will examine the straightforward + xcol function, which affords us the ability to rename + columns: +

+
+
+
+
weather = kx.q.xcol({'ANO': 'year', 'MES': 'month', 'DIA': 'day', 'ESTACION':'weather_station', 'MAGNITUD':'magnitude'}, weather)
+
+
+
+
+
+    Further Information + on using q functions in PyKX +
+
+

+ A plethora of q functions can be accessed via the pykx.q interface. The attributes mirrored by + these functions closely resemble the parameters anticipated by the corresponding q functions, with Python data + structures being employed in lieu of q structures. It is important to note that these functions are compiled + and thoroughly elucidated within the PyKX + documentation

+ >>> kx.q.distinct(['A', 'B', 'B', 'B' ,'C']) + `A`B`C
+

+ For those who want to dig deeper into kdb+/q and gain experience, you can use q functions and pass PyKX + objects as arguments:

+ >>> kx.q("distinct", ['A', 'B', 'B', 'B' ,'C']) + `A`B`C
+

+ It's important to emphasize that in the preceding function, a Python object is being passed to a q function. + When Python objects have a direct equivalent in q, like dictionaries, they can be directly employed as + attributes for PyKX functions. Beneath the surface, PyKX adeptly manages the conversion to q data structures. +

+

+ Moreover, the application of q iterations could be + another avenue of exploration:

+ >>> kx.q("lower").each(['A', 'B', 'C']) + `a`b`c
+

+ Finally, you can even create functions and use them with PyKX or Python objects.

+ >>> kx.q("{u !(sum x=) each u:distinct x}", ['A', 'B', 'B', 'B' ,'C']) + A| 1 + B| 3 + C| 1
+
+
+
+
+

With the following code we have removed several columns that are not + relevant to the analysis.

+
+
+
+
weather = kx.q.qsql.delete(weather, ['PUNTO_MUESTREO', 'PROVINCIA', 'MUNICIPIO'])
+
+
+
+

The next step involves merging the year, month, and day columns into + a single unified date column. To initiate this process, we begin by + accessing these three individual columns. This can be accomplished + through indexing:

+
+
+
+
print(weather["year", "month", "day"])
+
+
+
+ "2022" "2022" "2022" "2022" "2022" "2022" "2022" "2022" "2022" "2022" "2022" .. +"12" "12" "12" "12" "12" "12" "12" "12" "12" "12" "12" .. +"22" "22" "22" "22" "22" "22" "22" "01" "02" "03" "04" .. +
+
+

We observe that the outcome consists of three lists, each containing + data corresponding to the sample size. The objective is to form a single + list of the sample size, wherein the three date elements are + combined:

+
+
+
+
print(kx.q.flip(weather["year", "month", "day"])[:3])
+
+
+
+ "2022" "12" "22" +"2022" "12" "22" +"2022" "12" "22" +
+
+

We appear to be approaching the desired outcome. Currently, we + possess a list of sample size, wherein each position contains a sub-list + comprising three elements: the day, the month, and the year. To + consolidate each sub-list into a singular, unified element, the + each iterator can be used: +

+
+
+
+
print(kx.q.each(kx.q.raze, kx.q.flip(weather["year", "month", "day"]))[:3])
+
+
+
+ "20221222" +"20221222" +"20221222" +
+
+

The final step entails converting the resultant data from string + format to a date format. However, it's worth noting that certain + functions, particularly the overloaded glyphs, have yet to be + implemented. For example cast ($), take (#), + concat (,)... So we are forced to abandon the pythonic way + of calling q functions and perform this casting writing kdb+/q code + using the pykx.q() method:

+
+
+
+
date = kx.q('"D"$',(kx.q.each(kx.q.raze, kx.q.flip(weather["year", "month", "day"]))))
+print(date[:3])
+
+
+
+ 2022.12.22 2022.12.22 2022.12.22 +
+
+

Finally, we add this column to our table:

+
+
+
+
weather_ = kx.q.qsql.update(weather, columns = {'date': date})
+
+
+
+
+
+    Pandas Alternative: + Time Join +
+
+

+ In Pandas, we achieved this by executing this operation on our table:

+ >>> pd.to_datetime(weather[["year", "month", "day"]]) +
+

+ It seems to be less complicated thanks to having a function that does exactly what we need, whereas in q we + had to implement this function ourselves.

+
+
+
+
+

Shortly after, some team members started using q code instead of PyKX + functions in the pythonic way, as they found the resulting code to be + sleeker and more concise. As their familiarity with q grew, they put + forth a suggestion to create a function entirely written in q.

+
+
+
+
weather = kx.q.qsql.update(weather, columns = {'date':'"D"$ raze each flip(year;month;day)'})
+
+
+
+

Once again, both solutions are entirely compatible and can even be + combined. It's at the programmer's discretion to opt for either + approach.

+

Now, the three columns that have already been incorporated into the + date can be eliminated:

+
+
+
+
weather = kx.q.qsql.delete(weather, ['year', 'month', 'day'])
+
+
+
+

The current state of the weather table is as follows:

+
+
+
+
weather[:3].pd()
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
weather_stationmagnitudeH01V01H02V02H03V03H04V04...V20H21V21H22V22H23V23H24V24date
010881270.0N252.0N216.0N242.0N...V228.0V227.83V213.67V233.83V2022-12-22
1108829.0N8.0N9.0N8.0N...V10.0V9.00V9.00V8.00V2022-12-22
21088394.7N97.6N96.6N97.5N...V91.4V93.80V96.30V98.70V2022-12-22
+
+
+

Now, let's shift our focus towards deconstructing the H* and V* + queries into multiple rows, while simultaneously introducing a time + column to prevent information gaps. In q, the conventional approach + would involve leveraging functional qSQL to extract columns conforming + to the aforementioned patterns. However, we will capitalize on the + advantage that PyKX offers by incorporating q code via strings to + sidestep this method:

+
+
+
+
def functionalSearch(cols, pattern, func):
+    xcols = cols[kx.q.where(kx.q.like(cols, pattern))]
+    xstring = func.format(kx.q.sv(b";", kx.q.string(xcols)).py().decode("utf-8"))
+    return xcols, xstring
+
+
+
+

The function above accepts a list of columns, a designated pattern + for searching, and a q function represented as a string. This function + takes the columns found following the specified pattern in qSQL format + (where columns are accessed by their names, not symbols) as an argument. + When applied to all columns commencing with "H", it yields these columns + as a vector of symbols, alongside a string representation of these + columns in qSQL format:

+
+
+
+
cols = kx.q.cols(weather)
+found_columns, qsql_function = functionalSearch(cols, b'H*', "{}")
+
+print("Columns found: ", found_columns)
+print("qSQL function: ", qsql_function)
+
+
+
+ Columns found: `H01`H02`H03`H04`H05`H06`H07`H08`H09`H10`H11`H12`H13`H14`H15`H16`H17`H18`H19`.. +qSQL function: H01;H02;H03;H04;H05;H06;H07;H08;H09;H10;H11;H12;H13;H14;H15;H16;H17;H18;H19;H20;H21;H22;H23;H24 +
+
+

This capability is remarkably powerful, as it enables the utilization + of qSQL alongside variables, obviating the need for functional forms + which can often prove intricate for individuals new to kdb+/q + development.

+

Now, let's apply the above methodology to the columns commencing with + H, which correspond to the measurement values, and to + the columns commencing with V, which indicate the + validity of the measurements. The function employed to transform the + measurement column into rows is flip: +

+
+
+
+
hcols, value = functionalSearch(cols, b'H*', "flip({})")
+vcols, valid = functionalSearch(cols, b'V*', "flip({})")
+
+
+
+

Our next step involves feeding our internally constructed functions, + represented as strings, into the qSQL update function. This + is done in conjunction with the repetition of the 24-hour sequence to + match the initial number of rows:

+
+
+
+
weather = kx.q.qsql.update(weather, columns = {'hour': 'count[i]#enlist 01:00*til 24', 'values': value, 'valid': valid})
+
+
+
+

To remove columns beginning with H or + V, we can employ the same approach as earlier to + circumvent the need for functional qSQL: +

+
+
+
+
weather = kx.q.qsql.delete(weather, columns = kx.q.raze(hcols,vcols).py())
+
+
+
+

Let's see the result:

+
+
+
+
weather[:3].pd()
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
weather_stationmagnitudedatehourvaluesvalid
0108812022-12-22[0 minutes, 60 minutes, 120 minutes, 180 minut...[270.0, 252.0, 216.0, 242.0, 239.0, 246.0, 233...[N, N, N, N, N, N, N, N, N, N, V, V, V, V, V, ...
1108822022-12-22[0 minutes, 60 minutes, 120 minutes, 180 minut...[9.0, 8.0, 9.0, 8.0, 8.0, 8.0, 8.0, 8.0, 8.0, ...[N, N, N, N, N, N, N, N, N, N, V, V, V, V, V, ...
2108832022-12-22[0 minutes, 60 minutes, 120 minutes, 180 minut...[94.7, 97.6, 96.6, 97.5, 97.5, 98.2, 98.8, 98....[N, N, N, N, N, N, N, N, N, N, V, V, V, V, V, ...
+
+
+

Finally, the remaining task involves expanding the table so that each + element within the lists corresponds to a distinct row:

+
+
+
+
weather = kx.q.ungroup(weather)
+
+
+
+

We can further streamline the table by eliminating rows that lack + validity and merging the date with the time:

+
+
+
+
weather = kx.q.qsql.select(weather, where = 'valid=`V')
+weather = kx.q.qsql.update(weather, columns = {'date': 'date+hour'})
+weather = kx.q.qsql.delete(weather, columns = ["valid", "hour"])
+weather[:3].pd()
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
weather_stationmagnitudedatevalues
0108812022-12-22 10:00:00263.00
1108812022-12-22 11:00:00247.83
2108812022-12-22 12:00:00215.83
+
+
+

The magnitude column plays a pivotal role in + attributing meaning to the value. As outlined by the + dataset creators, the diverse magnitudes align with the elements + encapsulated within the following dictionary:

+
+
+
+
magnitude = {80:"ultraviolet", 
+             81:"wind", 
+             82:"direction", 
+             83:"temperature", 
+             86:"humidity", 
+             87:"pressure", 
+             88:"solar", 
+             89:"rainfall"}
+
+
+
+

We just have to change the key by the value of the dictionary.

+
+
+
+
weather = kx.q('{update magnitude: x magnitude from y}', magnitude, weather)
+
+
+
+

Finally, all we have to do is separate the different weather + conditions into different columns:

+
+
+
+
weather = kx.q('{exec (value x)#magnitude!values by date,weather_station from y}',magnitude,weather)
+
+
+
+

The exec query provides us with the capability to + transform a dictionary, stored within a column, into multiple columns. + In this transformation, the keys become the column names, and the values + constitute the data within those respective columns. This proves + particularly beneficial when dealing with a dictionary that represents + the weather conditions of each entry, linked with their respective + values. By implementing this approach and subsequently grouping the + data, we effectively disseminate the weather conditions across distinct + columns for each weather entry and weather station.

+
+
+
+
+    Pandas Alternative: + Weather Cleaning +
+
+

+ This turned out to be a complex migration, since on Pandas this "flipping" functionality is provided by + melt: +

+ >>> weather_hour = weather.melt(id_vars=["weather_station", "magnitud", "date"], + value_vars=[x for x in weather.columns if re.match("^H", x)], + var_name="hour") + >>> + >>> weather_valid = weather.melt(value_vars=[x for x in weather.columns if re.match("^V", x)], var_name="valid") +
+

+ As for the subsequent operations, those turned more alike to the original Pandas implementation:

+ >>> weather= weather_hour[weather_valid["value"] == "V"].reset_index() + >>> + >>> weather["hour"] = weather["hour"].str[1:] + >>> weather["hour"] = pd.to_timedelta(weather['hour'].astype(int)-1, unit='h') + >>> weather["date"] = weather["date"] + weather["hour"] + >>> + >>> weather_values = weather.assign(MAGNITUD = weather["magnitud"].map({80:"ultraviolet", + 81:"wind", + 82:"direction", + 83:"temperature", + 86:"humidity", + 87:"pressure", + 88:"solar", + 89:"rainfall"})) \ + .MAGNITUD.str.get_dummies() \ + .multiply(weather["value"], axis="index") + >>> + >>> weather = pd.concat([weather, weather_values], axis=1) + >>> weather = weather.drop(["index", "hour", "magnitud", "value"], axis=1) + >>> weather = weather.groupby(["date", "weather_station"]).sum().reset_index() +
+

+ All in all, this table proved to be quite tricky with the migration, but nothing unmanageable. The rest of the + migration was far simpler. Overall, we noticed again a 10x decrease in execution time, which we consider + something remarkable.

+ + + + + + + + + + + +
Pandas TimePyKX Time
Cleaning Weather247 ms ± 10.4 ms26.7 ms ± 683 ”s

+
+
+
+
+

Location

+
+
+

Both traffic and weather station tables will be loaded into the q + memory space:

+
+
+
+
kx.q["weather_station"] = kx.q(".Q.id", kx.q.read.csv('../Estaciones_control_datos_meteorologicos.csv', types=" IFF", delimiter=";", as_table=True))
+kx.q["traffic_station"] = kx.q.read.csv('../pmed_ubicacion_12-2022.csv', types = "SII**FFFF", delimiter = ";", as_table=True)
+
+
+
+

We are now able to access these objects within q functions without + the necessity of passing them as PyKX or Python objects. To illustrate, + let's proceed to modify the column names in both tables in order to + establish a uniform naming convention:

+
+
+
+
kx.q("weather_station:(`CDIGO_CORTO`LONGITUD`LATITUD!`weather_station`longitude`latitude) xcol weather_station")
+_=kx.q("traffic_station:(`id`longitud`latitud!`traffic_station`longitude`latitude) xcol traffic_station")
+
+
+
+
+
+    Further Information + on Using Q + memory space +
+
+

+ If you feel more comfortable programming in q, you have the option to operate within the q memory space. PyKX + objects can be seamlessly transferred into the q memory space, where you can manipulate them as if you were + operating within a q ecosystem, employing the following code: kx.q["table"]. Once you've + completed your operations, you can effortlessly bring them back to the Python memory space by returning them + using q code: kx.q("table")

+
+
+
+
+

Our objective is to merge these two tables. Currently, there appears + to be no identifier that readily facilitates a conventional join. + Nevertheless, it's worth noting that both the weather and traffic + stations are situated by coordinates. We can exploit the spatial + proximity between stations designated for measuring traffic and weather + to facilitate the join. To compute the distance between two sets of + coordinates, the Harvesine + distance as previously discussed, can be employed. It's important to + acknowledge that while this distance function is readily available in + Python, it is not natively accessible within q.

+
+
+
+
pip install haversine
+
+
+
+

One potential approach would involve re-implementing the Haversine + distance function in q. However, this might become impractical for more + complex libraries. Alternatively, although slower, we could transmit our + q objects to Python and work with them there. Nonetheless, it's strongly + recommended to avoid switching objects between q and Python. However, + the data we had to move between memory spaces wasn't very large (and we + were careful about this) and we didn't see any noticeable drop in + performance.

+

The features we've elucidated earlier, allowing us to transition + between Python and q objects, empower us to temporarily reuse Python + code. This is particularly pertinent given the scale of tables we are + currently dealing with. To incorporate our q objects into this function, + we can leverage certain PyKX tools to convert them into Python + objects:

+
+
+
+
from haversine import haversine_vector, Unit
+dist = kx.toq(
+            haversine_vector(kx.q('`longitude`latitude # weather_station').pd(), 
+                             kx.q('`longitude`latitude # traffic_station').pd(),
+                             Unit.KILOMETERS, comb=True))
+
+
+
+

We've reached a point where we have a matrix detailing the distance + in kilometers for every combination of traffic and weather stations. Our + upcoming task is to pinpoint pairs of station identifiers that exhibit + the minimum distance:

+
+
+
+
ids = kx.q.each(kx.q('{first where x=min x}'), dist)
+distance_table = kx.q('{traffic_station ^ weather_station[x]}' ,  ids)
+distance_table = kx.q.qsql.delete(distance_table, columns = ['tipo_elem','distrito','cod_cent','nombre','utm_x','utm_y','longitude', 'latitude'])
+
+
+
+

With this we have a mapping that relates every traffic station to its + nearest weather station:

+
+
+
+
distance_table[:3].pd()
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + +
traffic_stationweather_station
03840109
13841109
238428
+
+
+

Final Table

+
+
+

Integrating the three tables is a relatively straightforward process. + The distances table can be seamlessly merged with either of the other + two using a simple left join. However, when joining the traffic and + weather tables, an asof join (aj) is necessary due to their + disparate time intervals. To conclude, two columns, time and day of the + week, should be appended to furnish the model with the data's inherent + seasonality:

+
+
+
+
complete = kx.q.lj(traffic, kx.q.xkey('traffic_station', distance_table))
+complete = kx.q.aj(kx.toq(['date','weather_station']), complete, weather)
+complete = kx.q.qsql.update(kx.q("0^",complete),  {"hour":"`hh$date", "weekday":'("d"$date)mod 7'})
+
+
+
+

Let's look at this last table:

+
+
+
+
kx.q("5#",complete).pd()
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
traffic_loadweather_stationultravioletwinddirectiontemperaturehumiditypressuresolarrainfallhourweekday
datetraffic_station
2022-12-0110010.0240.00.54239.06.084.0946.01.00.005
10020.0240.00.54239.06.084.0946.01.00.005
10030.0240.00.54239.06.084.0946.01.00.005
10060.0240.00.54239.06.084.0946.01.00.005
10090.01100.00.352.07.979.0937.01.00.005
+
+
+
+
+    Pandas Alternative: + Final table +
+
+

+ This is another bottleneck we encountered on our profiling. On Pandas, the code looked kind of similar, with a + simple join and an asof join:

+ >>> complete = traffic.merge(distance_table, on=["traffic_station"], how="inner") +>>> complete = pd.merge_asof(complete.sort_values(["date"]), weather, on='date', by=["weather_station"]) +
+

+ However we once again noticed a 10x reduction in execution time:

+ + + + + + + + + + + +
Pandas TimePyKX Time
Join Final Table7.1 s ± 168 ms686 ms ± 24.1 ms

+

+ This improvement is most likely due to performance benefits when using kdb, as it's optimized for time series + data and the asof join, which is where most of this performance gain came from.

+
+
+
+
+

Model

+
+
+

For the model's input, we chose to cherry-pick only the essential + columns. Moreover, we apply normalization to the rainfall column using a + straightforward MinMax scaler. This function can be included within the + q memory space, ready for use whenever necessary:

+
+
+
+
kx.q("minMaxScale:{[l] {(x-y)%(z-y)}[;min l;max l]l}")
+                  
+final = kx.q.qsql.select(complete, columns = {"date": "date",
+                                              "traffic_station":"traffic_station",
+                                              "hour":"hour", 
+                                              "weekday": "weekday", 
+                                              "traffic_load": "traffic_load%100",
+                                              "rainfall":"minMaxScale rainfall"}
+                                    )
+
+
+
+

Throughout this transition from Pandas, the primary challenge emerged + while migrating the time_window function, given its + reliance on loops. Our approach involved first comprehending the input + data, defining the desired output, and then formulating an idiomatic q + implementation rather than a direct 1:1 migration. This method proved + more time-efficient.

+

In this scenario, our input consisted of a table, and our desired + output was a list of matrices for each station. To facilitate this + process, we devised multiple functions that proved invaluable:

+
+
+ +
+
+
+
_=kx.q("""sw:{({y#z _x}[x;y;]')til count b:y _x}""")
+
+
+
+ +
+
+
+
_=kx.q("""gt:{y _(flip x)[z]}""") # gets target (in position z)
+
+
+
+ +
+
+
+
_=kx.q("""toMatrix:{({[t;i]value t[i]}[x;]')til count x:flip x}""") # table to matrix
+
+
+
+ +
+
+
+
_=kx.q("""
+        prepareData:{[data; ntest; chunkLen; columns; locTarget]  
+            train:(toMatrix')?[data;();`traffic_station;columns!({(y;(-;(count;x);z);x)}[;_;ntest]')columns]; 
+            test:(toMatrix')?[data;();`traffic_station;columns!({(y;(-;(count;x);z);x)}[;#;ntest]')columns];                                                                               
+            (((sw[;chunkLen]')test;(gt[;chunkLen;locTarget]')test);((sw[;chunkLen]')train;(gt[;chunkLen;locTarget]')train))   
+        }
+    """)
+
+
+
+

Lets test this function in action with only one station:

+
+
+
+
import numpy as np
+
+station_id = 4010
+
+station = kx.q.qsql.select(final, where=["traffic_station="+str(station_id)])
+
+data = kx.q("prepareData", station, 500, 5, kx.SymbolVector(['rainfall', 'traffic_load', 'hour', 'weekday']), 1)
+
+X_train, y_train = np.array(data[0][0][station_id].py()), np.array(data[0][1][station_id].py())
+X_test, y_test =  np.array(data[1][0][station_id].py()), np.array(data[1][1][station_id].py())
+
+
+
+
+
+    Pandas Alternative: + Model Ingestion +
+
+

+ This is the last bottleneck we ran into while doing our profiling. We used the Python Sklearn MinMax scaler + for this.

>>> from sklearn.preprocessing import MinMaxScaler + >>> final_table["load"]/=100 + >>> final_table["rainfall"] = MinMaxScaler().fit_transform(final_table["rainfall"]) +
+

+ We also created a custom function to make those 5-step back chunks for a particular station:

+ + >>>
# Table Index: Load -> 2, Rainfall -> 7, Hour -> 11, Weekday -> 12
+ >>> + >>>
# Assign to each traffic station an array with the target column and the training information
+ >>> + >>> train = final_table.groupby('traffic_station').apply(lambda x: np.array(x[:500])[:,[2,7,11,12]].astype(float)) + >>> test = final_table.groupby('traffic_station').apply(lambda x: np.array(x[500:])[:,[2,7,11,12]].astype(float)) + >>> + >>>
# Crete 5 step back chunks
+ >>> def time_window(traffic_station, dataset, look_back=5): + >>> data_X, data_y= [], [] + >>> station_data = dataset[traffic_station] + >>> for i in range(len(station_data)-look_back-1): + >>> data_X.append(station_data[i:(i+look_back)]) + >>> data_y.append(station_data[i+look_back+1, 2]) + >>> return np.array(data_X), np.array(data_y) + >>> + >>> train_X, train_y = create_dataset(train) + >>> test_X, test_y = create_dataset(test) +

+

+ In this final test, we once again notice a huge time improvement:

+ + + + + + + + + + + +
Pandas TimePyKX Time
Model Ingestion Preprocess3.2 s ± 54.2 ms178 ms ± 8.01 ms

+
+
+

That wraps up our migration to PyKX. Next, we proceed to confirm that + the model is working as intended with the data we acquired through + PyKX.

+
+
+

Firstly, we install Tensorflow:

+
+
+
+
pip install tensorflow
+
+
+
+

And now we create and train a simple LSTM model:

+
+
+
+
from keras.models import Sequential
+from keras.layers import Dense,LSTM 
+
+model = Sequential()
+model.add(LSTM(units = 50, return_sequences=False, input_shape=[None,4]))
+model.add(Dense(units = 1))
+model.compile(loss='mae', optimizer='adam')
+
+def fit(train_X, train_y, test_X, test_y):
+    return model.fit(train_X, train_y, 
+                    epochs=50, batch_size=8, 
+                    validation_data=(test_X, test_y), 
+                    verbose=0, shuffle=False)
+
+
+def predict(data):
+    return model.predict(data, verbose=0)
+
+
+
+

Now we can observe the loss curves for both training and validation + over epochs.

+
+
+
+
import matplotlib.pyplot as plt
+
+history = fit(X_train,y_train,X_test,y_test)
+
+plt.plot(history.history['loss'], label='train')
+plt.plot(history.history['val_loss'], label='validation')
+
+plt.title("Train and Validation Loss Curves")
+plt.xlabel("Epochs")
+plt.ylabel("Loss")
+plt.legend()
+plt.show()
+
+
+
+ +
+
+

And finally, we can see the performance of the model in the following + graph:

+
+
+
+
plt.plot(y_test, label='test real')
+plt.plot(range(200,495), model.predict(X_test[200:], verbose=0).flatten(), label='test predict')
+plt.title("Real test vs Predicted test")
+plt.xlabel("Time(15 min)")
+plt.ylabel("Load")
+plt.legend(loc="upper right")
+plt.show()
+
+
+
+ +
+
+

Performance gains + +

+
+
+

As discussed earlier, all 4 bottlenecks were solved by migrating to + the kdb+/q environment taking advantage of PyKX. Overall, the final + picture looks like this:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Pandas Time PyKX Time
Cleaning Weather247 ms ± 10.4 ms26.7 ms ± 683 ”s
Cleaning Traffic25.5 s ± 1.29 s 1.65 s ± 248 ms
Join Final Table7.1 s ± 168 ms 686 ms ± 24.1 ms
Model Ingestion Preprocess3.2 s ± 54.2 ms178 ms ± 8.01 ms
+

So we got a 10x decrease across the board. We went from a total of 36 + seconds spent on these bottlenecks down to just shy of 4 seconds, which + is really impressive on itself. If a migration like this one was on the + horizon, we would strongly suggest profiling the code to see where it + struggles the most and try to think of a way to migrate those parts + alone to PyKX. Then, as a second step, we recommend to port the rest of + the code to PyKX in order to circumvent the overhead that moving data + between memory spaces inherently adds to the process.

+
+
+
+ 🔍 You can find on Github the resulting PyKX-enhanced + pythonic code. (TBD: fix url) +
+
+
+

pykx.q migration + +

+
+
+

After gaining proficiency in the q language, the team progressively + shifted towards utilizing kx.q() extensively, drawn by its + brevity. Yet, this approach introduced a level of monotony due to the + requirement of employing strings. As a remedy, a decision was made to + transition into a q environment. However, as highlighted in the previous + chapter, certain Python code proved challenging to migrate to q. + Consequently, the team chose to remain within PyKX, this time operating + within a q environment.

+

pykx.q facilitates the execution of Python code within a q + environment, thereby presenting new avenues for addressing existing + codebases. This flexibility enables the incorporation and utilization of + Python libraries, both those installed on the system and those available + as .py files.

+

In our scenario, we harness both of these options. We emphasize the + potential provided by these opportunities to integrate Python code + within pykx.q, while also providing a link to the project's q + script for readers seeking further insights.

+
+ 🔍 You can find on Github the resulting PyKX-enhanced + kdb+/q code. (TBD: fix url) +
+

Our initial step involves executing the haversine_vector + function for calculating coordinate distances. Given its unavailability + in q, we opted to employ pykx.q to seamlessly integrate this library + directly into our q code. This was achieved through the following + lines:

+
+
.pykx.pyexec"from haversine import haversine_vector, Unit";
+
+
+
+    Further Information + on Python and Q Context +
+
+

+ In PyKX.q, the python and q contexts coexists too. The utilization of .pykx.pyexec permits the + execution of Python code within the q environment. When you're in the q context, you can work with python + objects using the resources provided by pykx.q.These incluede indexing, function declaration, and library + importation. However, consistent with the recommendation of the previous chapter, it's generally better to + stick with q objects for as long as you can.

+ +

+ Objects from the Python memory can be retrieved using pykx.get and transmitted using + pykx.set. The Python data type to be employed in the transformation can be specified using + .pykx.setdefault. +

+
+
+

This function expects two Pandas DataFrames as input, so we need to + change the default conversion type from Numpy to Pandas:

+
+
.pykx.setdefault"pd";
+
+

Having done this, we can "move" our input variables to the Python + memory space using .pykx.set

+
+
.pykx.set[`a;`longitude`latitude#a];
+.pykx.set[`b;`longitude`latitude#b];
+
+

And finally execute our function:

+
+
(.pykx.eval"haversine_vector(a, b, Unit.KILOMETERS, comb=True)")`
+
+

Notice the backtick at the end, this is for converting back to a q + type.

+

The other way we can run Python code is to load a .py (renamed to .p) + file using \l. This could be done as follows:

+
+
system"l kerasmodel.p";
+
+

Here we have included the functions fit and + predict previously defined in last section. We can load + them and use them like this: +

+
+
modelfit:.pykx.get`fit;
+modelfit[train[0][3403];train[1][3403];test[0][3403];test[1][3403]];
+modelpredict:.pykx.get`predict;
+res:modelpredict[train[0][3403]];
+
+

In terms of performance, we noticed a slight decrease in execution + time comparing to using PyKX:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Pandas Time PyKX Time q Time
Cleaning Weather247 ms ± 10.4 ms26.7 ms ± 683 ”s22.3 ms ± 224 ”s
Cleaning Traffic25.5 s ± 1.29 s 1.65 s ± 248 ms 1.627 s ± 124 ms
Join Final Table7.1 s ± 168 ms 686 ms ± 24.1 ms543 ms ± 10.1 ms
Model Ingestion Preprocess3.2 s ± 54.2 ms178 ms ± 8.01 ms153 ms ± 3.12 ms
+

These little timing shifts might happen because of changes in memory + or processor activity, but it's not really noticeable as far as we could + see.

+
+
+

Final + thoughts

+

Overall this project turned out smoother than expected thanks to + PyKX. It allowed us to get a foothold on the kdb+/q ecosystem before + making the full transition to using q code, which on itself it's + impressive. We achieved our goals of reducing execution time, as we saw + throughout this post, and learned a lot about the kdb+/q ecosystem and + its technologies.

+

It wasn't all smooth and sail though. For instance, we hit a + fundamental obstacle when using the Pandas API. In an ideal world, the + transition from Pandas to PyKX using this API would be as simple as + importing PyKX, enabling a flag and getting the input tables as PyKX + objects. However, since we relied on operations such as + group_by and melt, it ended up being + unfeasible since these operations were not yet implemented and we would + have to manually code them, which would take a long time on itself. We + should note, however, that this feature is still on beta, so we look + forward to future improvements in this regard since it would make + migrations like this one much simpler once it becomes a drop-in + replacement for Pandas calls. +

+

In summary, with the experience we gained we dare to recommend you + following these steps as a PyKX migration guide:

+
    +
  1. Migrate the original data to a kdb+/q environment or PyKX objects.
  2. +
  3. Profile the original code to locate bottlenecks. This allows us to + put the focus on the heavier parts of our process.
  4. +
  5. Once located, migrate those parts alone to PyKX. You + will take a performance hit when moving data from + memory spaces, but it's important to know the potential gains that are + possible, so measure the migrated bottlenecks alone to see the + difference. +
  6. +
  7. If your tables are not that large, you may be able to get away with + it as-is, not needing to do a full migration. If that's the case then + great! You are done. However, if you notice that the performance hit + when moving data between memory spaces is actually hindering the + process, consider a full migration to PyKX.
  8. +
  9. If a full migration to PyKX is needed, then first take a look at the + Pandas API. By the time you read this, it may have already improved + compatibility and could be a drop-in replacement for Pandas. If it's not + the case you will need to familiarise yourself with PyKX and get your + hands dirty as we had to.
  10. +
+

We hope this post could serve as a guide of sorts for those that want + to familiarise themselves with PyKX and the kdb+/q ecosystem since it + brings a lot to the table. In the end we were able to achieve a full 1:1 + migration to PyKX and even to q with pykx.q, which is impressive given + the differences between the languages and their philosophy all while + notably cutting execution time. Below you will find some additional + references to continue learning PyKX. Have fun with PyKX!

+
+
+

Bibliography

+ +

(TBD: new refs - need formatting .. )

+
+ + + \ No newline at end of file diff --git a/assets/2023/08/05/132_0.png b/assets/2023/08/05/132_0.png new file mode 100644 index 0000000000000000000000000000000000000000..559334e0ca8934cf08295cf0e5b461697651b175 GIT binary patch literal 13904 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 literal 0 HcmV?d00001 diff --git a/assets/2023/08/05/fc_p.png b/assets/2023/08/05/fc_p.png new file mode 100644 index 0000000000000000000000000000000000000000..899376b5b2bc2bb7f0c7c25ce9126dc9333e14e5 GIT binary patch literal 55450 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

E<)U+? z$5QuoGrvq(`$%x)MrfV3M&a>}^Q(gFbti1>1H9sdwhmstz5c89>HyZ7<640dob%bP zOb^B09iTkfO&wr={+)`*==-P6o-G;FS-+HyZg<^u$K%*>k>~F>9ouj(~7@y62da)$3$M^9G z$xfRq7L)43Rjgthrm1Qlsr@-UOtGsmCaMsgj+kS(Q7j%~?ub>U*uPSchRx-YFx`TB{LK5(3x>@$9mUo%^v z)3fKdUzE?sv;zkXl~}UG#MzAbBsQ2&ZKSUWb;$`W+TUyExySJ0g<8+n*B#CAjZsk# z*Kezd-)pp6Sm~HqaF+uU)I_W*SzTvNnM*(X)$XnNCf259_WY;+{PjlvMSTY|B^Q?> z%1(4XgDU^aSO4pqg{rn!zPP*R`mx;%;YuDGuG3ys;wFEofT#eU!N&ufd7YIsDVkS6 zs!`0z_p>@+*!0N584T6r0>Q?(;UDe)`72Mwn!c9f|Ne1!|E|6NkAMB|XLGyz-%;50 z@AuSC|1ZDhhV132L$~owP16bzIW>w1r+yC=BcXd;i;G)JA+sV3LPcSbO0{l5=EtKo zn8{q(yh8l8VgNix$mF6;xL1QDj0`%~z?n#TC`MHT` zPf3I~wq@8`9)+HVLV;e4*ahlfU<_gfX|Q;<|3z#uQ7y^;{PI9-mYJ1x7rF%e35$*v zUP?u78bWyf<)Qe0A>4X!^x#)XCR*;FU-1*M1KLZr{SI43Mn;-n5*KgHm?d!ah#Z!N zj*f~#beWP%zX6NQquVDbyH-|KAUZuBWs~#(diMS2Pm)?q2||Bl4aPLFR3$PTVv!Dm zGXd`cKxGgkq&~qb57hf~ZWk;?o?y}$3N{h3KzoM7Us3;W&TpsB5eq(_g*M3ygWH2g zw@JBC5Q~|6^07Q-D8!c%5q-#@vq8bdn|lFq=7;HN4H=Q}j|Rk;BDU{V!;2S0RPfQp z&fb0$!=wT?&eHyAZGjdUCXk~+659b>__m;62(dK5F=Y*?O%M8_5CzG}dviVM0JOEW zW7{QB@=2x`(X>oyN~hA8YkgXd|82eGl3K?5qSjm8B1pXzh4DB$Om_%SO8HS*(I9V4g zDkVF+yIT~(;C~SgycqUzg6|%l5d^s(UM^u$fq!cB`Y^2ugHQVgt`M+`!a*{!hS-Dn z_7bDxXDuyi$jm4hC{Zgq0mHO<%xsk$9UZIEYOhxe`Ke)E7YS)&I9&2Y!Nj0vW8)+A z15u|pLiF3V2@Uy-ZpaG?QXwnkrYJF$ha$H3%8)48b;}=QClU8p3Q6U-ULhU zYWzN{U}C9X55hMOuX_B>x*y|PVG-=I;y-W4vv#3rRp)<{zU=4_S$Ndv%mPc? zqoJkj?Civ9HhTCMvahU>n_-QS1%N)r6Y|5*G)IWrx9cB&;ZhL^bMpv@D%Uk!0PkePE8e-K_EI4 zZ76aTwm{Izi2u&EiXb_Z=sfSt>J9zksV~1A4Og8?z+9kRD&e%JVN__)_%pW63P=+J zrl1OW`b54R30yo9dQuuKEv*k9K5#)t(Ohc?sPO$_8VH?ugxr2jM-dm9)GK&hWDXDg z()I;4(1%mxMHo0SvRVTHq&q0=9>a%xzuv*G9IHDybm_!bS9o7)?)VG`Af>7H;m!7^i5(3>~ zFPu@$KL3VVOc$QHhEm@!SE|R)P}bJI24B=ntu*-&a!(|Z3ZE@RM?^5dDJ5mg$h+Nz zx_R}aiJdJrt^4l;P>=s9Wr;!Ec(LPU*Vbt zu_QBXr~-C8;^Y%XmLANY!{CSllCzS6La<&RWMZ9@hhkNEfVGc&?`N0u|K>TMmynRa z&C9ET#X+7L><115l_ixPW8nJ0YdM@OR~oK*-1bo2JSK4K=<#SX#K^DY;yM5=MA$$G zZaOx@5g2+D-6*X>m}CZ|^B8u8#KgoHRe5B?_MQc9ILU0tu*E|@a%r=?n}GkfFUD9? zT!{2gg5O36_7f6hMz$}3SXGj&3jMBB>~wE&8j1olmY~4G5N^2=idaM7pM@PcrClHW4eS|dh^l60*?OXn}ptO?AlwCMRag#?J z)JJaexmLRe$UP(sSW;LtZPjjV4pq>ZdHl8AG*4e<{66N7VW0>8dx9}GDmnW}lb)HG zhgU1rY{pm30S(KhE$r<4#JyzZr=UT>7QC&oI<0{Fcx#07wJorJ`W#`!({pkPL%MG` zX+4TRMpS1clC-fl-#@(+y&S_SC*b%h_k;d7OwSlLZk1pXsa?EbQ=z8gfM;M2CIuC` zv$OBY)xbz-%yR~T0V%IRSaQpUP|@?285tQvpITPtm9*JCAR8KDEUJNUWx~vMq`cQc z&`=atev>WkC6*z~R^mrzK_LOc5Hk+g8YS`5V3OSzq^J0MXIIVOn?|7s>#-hVW)_M>yQvcKf9ohv$!4` z%M+4&{%JT$2f6+5uw%q&pBaOJf6HO?H-TZRb7A+-VIFA+jdDNzRn z0kcyJ3kwZcjzo4{j}1IjC9CRm=-pG^X2=N=V+>Fp-Ndo~*g-M4=eA!U z)sEbgSou`4MGup|1RR$4+)^ghAzFnXX0&Xh6F+>hl*s9J$e&wn!Kf!8XWy z;rEhZiPw|?k?|8auJI?tT1+rm980ZuYMJYH+OxJBG|4-|I@}g``-`7x zxg(F5xVWIX8_3Grmvd2;RkKT9%_HPg3EfF@GoE!_6#ILvau%sOz_Hf6{-G(0%^* z>;*I^9*y7T=J>`eL=)6ubO@d?9asGUCq3U~dpw!&oAR$3J`GJZ_r86dlm2j79U1f< zX2w44z2b^N`qawON)qTkxB;W3C{OFXlIMJ7T>;o+b~ah8pxzVPEV{LI^5Yv z*izgotsMOF`-IpPYHI4(cW-Ij&uq$fu;IzzVosE;M~Ar=uRp}3@SG5fW4TFveSH`p zPkp|Az_y}i-j$)udQM#HF?YjjLNL+!5Bg*t{;Z>;_*qjr?shb_NthE$!jwigdJ+4o zn}3$h!&4>`8e`P_p)!S@8sD>BkGz~djE(X9Gui!3QcDMvg{7s9A^V8{btoJ^RtN4i zUD%IBu{(6->FvpQ?brZTrP+tK%nhsGPJa_)$zlNW-iuTk;y0^P;bJa|q(8DT!r-3| z{oro2zPorelPB~g4jnp42E@@nvw(DF^M1v#B33urWw($}fr4Zss@YE1cO}=c;^9Vl z=EVw5{__(HyQNkOl8u)7od_tOf4M6rjI^2Hjp+Nt`1<)pU~7~5Q>Syf4tF(Fbpe%< z)SrKjBR+-qHfW+d?V--82`xgA-{gG+GLDwYa#B(__B&{Qc-uZxf@z^1ph6`$meQgJ z$|>d9O3zg^I7J(p`RaEKl5BLU&z;FB#T^hDt7~a*XQ2&!mT@rUP+;A_?5|%79g%>l zOR$aV8ax>oFvCYOWUoUUA9YSC`e}MFT8es>L-+#!FpMOYPJZ!i>*!#Gs4^2V0n9@u z@nB>NiDArooZnWIi|Yu~4{?Gb_2nCFJUz=GZU}*COwHs^Cnz1s$QjMtoz~>**RJhE zqbBg*+lY-slCr951RDRmeRFeu$kp!9jcB+EslL>p93HV2E8TN1paK*0Tqk5!sr?Iq zFJpCwkQ{d9z#TE+lXXH6oQptwDDe9W60TH#BbnSLZ}}t~NatVaX~hbrrKIe|Jb!m) zRu*YwObQKf;t0bj2?Ww*L#cD8PTjF-G&$ick>mrTo_bhQ2%%K*d^uN58ai@E2uY7k z#?v8t_;F=rJd=pot(1MQG87 z7K3|81C4S*8yNUktoc1Q*cPvxR4I1_2$v(CURoFV?*!uO8-C={+Hg2JABAUy(S)ZA zNh|Yctdp;MMl?&d){j-;tsLdhnSRj+6q^k~DR$X&&Q&GSzP`Tb@a{hQ&x#=1Pu(G$X>mp<_81n)$jv>5 zf~SiB&BM9+_f%(#(W2Z|4Xd2rMnryKtAA2$jMd+m*LiIB>ktgd!|va|uPeF%6*eR^ z^hBkiMTJWWx;)#eS(u84<8dFD^aokR5x+g9EEIO_p1N=>q`H1%M#({s^`Olf^4);K;zgrQJKfd+5HvIjw z{Ft_}qpgh@^M7Vs2Nv=lKKA0M@XCj|h=7e;bt+7YXw9u+$Jp`{I0$>NG>dg`zr zjqreeN+w7!gr*5*t)>(A@!c~K&H+2G>x+{JMp$*Dj>z0f05mX)F(TLYVs7Jd6Z0am zHD>u24kB^1yYipj07ZRx@l$`<=}X9wdpeS`G4YOwW zBQUO#p>2tRPPEh{Tneq;fLH0v`5^`lU2C zlXG3a(fEqWf5Uv{n*S3d{J+3_|9^ZV6?{shL1udBIz01PuWCx0j|m%ZZoZZx_jUbX zeTUsQOzVMYkz6^_@A+O5?>{$me=2~;I(#ZI+P!;YfWpZa7%im2tt31;$0hV%nn;qO0t6%x! z879h5Y!6$Qm^}aM=K_Q&*L8qzkgpn3BG_SZ`JJ#|wZWEFAWDEwg0?p81#q+heRu<8 zEGcvI0(=WM|yW6RQx;*)j%{uWeOtl=qZ9RAG%XeF;&6kk!va$h=qZ1)Y-YXEOO zHcY|~3wnPXfyaE>9LueNT|jFgPL>FMcI*v)9k)m4ra$}aJ#c{RzbZaHQW$U%Zz`Z~ zglNxnk^-PE zYbbyaL$I4+9gt&2SVROGb8hs8VYuofOAI&%HD#N$2NfP^;$jkkD~3MLd7zRW5b_I{ z*%Il}Y6_?S7g3aQ>-muef(&)S>x^<(Utd3Of#lL_o0&!7WR4Eo3eP?kJKyKt;utU( zq~t5m7Lt?*Sm*7ytC>O?Ji@ocJth)ykm(0>8*70h1CySEg?|>TdYFYjV!2|lx%0-& zoAcO9vv8qFR11Cup~jK1G8&p^PQ|sCv9Vc!d_v;4S5d&?qEPTwTT^6N;gGHfW8n{z zli^sTHqddCZ59Wa^w*AEc=fGmhjw6sUQgb0Bd0&zlLJns%EY)9w!EBxC$8Wpb3t_m zn+FvvR#L6tsh$7o)8_3mAw=_zLnO(0x{v-8uqquu8+>b#n-B&TH)-&{7Cg)h=+j6c zu}A_sh0`qqDtI!w9?BNLISdLkRwYIuI3R)en?1Tfz#ww4#o0MKx)vh=0!pFYt6jCP z=x<3TiJ&29RYryg!hDhWU=1IMht5Kucc!Pd2(QbI-n>(UF7aS`7Je| z&hsXTVfi?`7)gF7uEaV#vjB*r1F<)fS;0RPXB7AbrMG|q`qY;%UmnK!!m6U56cT}y zzj#bH7aB}`uZG8)!`u5@uv(t-IRmg3gAgC&+^VIVgvkO7tTt8;Mg!ZuCF64VaM1Iy z6YM;1a>&(nFBueqEPd^zRTRqyeI#xkM^jKtS5dGJ9F-BKIKREWN`a^(Ft56 zf*6wo71$(u^Cyr#qQ3r?-(E}^a82G(omSgj1PU5<)w`f~!Jr9?(mwBd0t1euAH%Zv zb(~eL4obNdU zI|9K46H80Wyvmz+dRJ3mWYCg)GCXN|8_ur$ z*vjg*d2@_F%D;#U5|m9+`ACo}mMqEDAwI7EQeOlf<4kxE0(KJJApdJlk;ss+mS8*p zq$u~R*9YC}V&1>YV~_3jB;&vVYik>ujNYjd6j8Xi5gIENL-aECXgb^jycHX43DI;s z6tW6Y=~3BmsRg$?AxaJNAI7>rD^t3~dw6-{emI9aMW~_Sqfij2E9n)jk4@wX#$?v8 zA_JI(##|P&JvkDiNV9%@-rUauv#Rd-t!BmWvh}*xYM<|Cu6nB+r0?77@5w`Wo!5b) zDtiU;nB5g@n15o4?cTlnJ&s@sNZ`sdio~&xYu~;ts0w@a0(tQf@bG6imEQ*-E7r)O z@E$K9`tb>Y6A9ZdSXps_?sQV+;qJ401O+3Pev`Cc6ioFr`R!;-ZHLg)gV)8q;}F7a zSR%7uIr-HNT~9bMB7AS+XRf{gA5(;G92*xE21V0iX@#G?a5~wH>p^6npAYKk>0vMN zz(FA$$d#lQ*&3&=v2cWclpwax&ixNJB1-1PKfBNzZ9ccZzn5*WZAW)lbUX{)K!6We zudXM4XDCkOp+=e^dEW3DoPWeAl)pbZ0*S4~NYkD)VtRoHk9mkurANez$kPj#267mN zeZfXl9TJDDe&5lS=of)m)SvB;yMhz-d;EKd)2WIqY9mmTtnmV%T~Nw15k5h(?1{Mn zaK9^nZl0nKLIxp8ng%%3`A^o54y2~Gb{@a~3B0#1T)2RHNWwG!ETsK?kBA~ge7tru zCrN$B>_PU7ETGdc{Jc?s`zreSOn|6Y;k6-`v48Rh$`=jEr6ucuymOpa@9a8LjSN@d z0Am`B8;+xM44Yyo*nQ)33&_hKP{R5jOt488}dXB4i^<_Mi z`3K1v8W_B-#cNpiDw_>t}zEM`574rvlbm#SYHE6g%2^T@g z0Y5MTAzY)-D_5?NQ3$;7O%j}z@Jk{AMw4Gpxy50RwjvWxIvR+7^GD!aF!?j)-Dpa~ zg^hL(oK!`SOhgr=JKWp%NiBN#-U&f~wjmW26=aY~K(>UA*gYq^4q#$`;wV>0)UliY z8vl`@muwvW2m`xaV$ga2YxgVV$WerRJo1gS&Hp~`-^Kj@^*1j3r7+XgRd!NN&rtB^ NxU!~Fk%DFL{{Xx#8jt`0 literal 0 HcmV?d00001 diff --git a/assets/2023/08/05/loadperhour.png b/assets/2023/08/05/loadperhour.png new file mode 100644 index 0000000000000000000000000000000000000000..98218d441b07305dadb28474ddf798a47191300b GIT binary patch literal 8517 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 F_%Cq&&q4qI literal 0 HcmV?d00001 diff --git a/assets/2023/08/05/loss_graph_p.png b/assets/2023/08/05/loss_graph_p.png new file mode 100644 index 0000000000000000000000000000000000000000..acde664e4aa406d1e5c44b8516c3a72f6f82fc8d GIT binary patch literal 31018 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 literal 0 HcmV?d00001 diff --git a/assets/2023/08/05/rainfall.png b/assets/2023/08/05/rainfall.png new file mode 100644 index 0000000000000000000000000000000000000000..49affec111116916c05e51a915f406c4ad36bf82 GIT binary patch literal 12474 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 literal 0 HcmV?d00001 diff --git a/assets/2023/08/05/test_python.png b/assets/2023/08/05/test_python.png new file mode 100644 index 0000000000000000000000000000000000000000..50f38d20643cf8a9011e3d3ef0c7de4ae0bea9d0 GIT binary patch literal 56544 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

yi3t9_(xu->DHPzry38gjud>w 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 L&YG5=ycGWrfJYo$ literal 0 HcmV?d00001 From 840d6f8f43cf5a05e804bfe2fed76e0572bc7d29 Mon Sep 17 00:00:00 2001 From: Oscar Nydza Date: Thu, 31 Aug 2023 12:25:25 +0200 Subject: [PATCH 2/6] renamed to kdb and changed references --- ... 2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename _posts/{2023-08-05-All-Roads-Lead-To-PyKX-Technical-Counterpart.html => 2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html} (100%) diff --git a/_posts/2023-08-05-All-Roads-Lead-To-PyKX-Technical-Counterpart.html b/_posts/2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html similarity index 100% rename from _posts/2023-08-05-All-Roads-Lead-To-PyKX-Technical-Counterpart.html rename to _posts/2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html From 9c8fc20eed965f8a9dd557b8cbebcd2ca03d61aa Mon Sep 17 00:00:00 2001 From: Oscar Nydza Date: Thu, 31 Aug 2023 12:42:18 +0200 Subject: [PATCH 3/6] fix urls and minor changes --- ...ds-Lead-To-Kdb:-Technical-Counterpart.html | 29 +++++++++---------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/_posts/2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html b/_posts/2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html index 2b5d3b7..496307c 100644 --- a/_posts/2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html +++ b/_posts/2023-08-05-All-Roads-Lead-To-Kdb:-Technical-Counterpart.html @@ -2,7 +2,7 @@ - TrafficQProjectRecords + All Roads Lead to Kdb: Technical Counterpart