<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: John Kyalo</title>
    <description>The latest articles on DEV Community by John Kyalo (@johnkyalo).</description>
    <link>https://dev.to/johnkyalo</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1169784%2F76e547f9-cd15-42ea-bd5c-69c5eaf9d401.png</url>
      <title>DEV Community: John Kyalo</title>
      <link>https://dev.to/johnkyalo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/johnkyalo"/>
    <language>en</language>
    <item>
      <title>Time Intelligence Functions (DAX)</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Wed, 09 Jul 2025 03:28:50 +0000</pubDate>
      <link>https://dev.to/johnkyalo/time-intelligence-functions-dax-5h6d</link>
      <guid>https://dev.to/johnkyalo/time-intelligence-functions-dax-5h6d</guid>
      <description>&lt;p&gt;Long time no Data chat around here.&lt;/p&gt;

&lt;p&gt;Let's talk about 3 crucial time intelligence functions in Power BI namely DATEADD, DATESINPERIOD and DATESBETWEEN.&lt;/p&gt;

&lt;p&gt;Basically, they all shift or define a date range, especially for creating time-based comparisons like:&lt;br&gt;
     same period last year&lt;br&gt;
     Trailing 12 months&lt;br&gt;
     Custom range&lt;br&gt;
They differ in how they define the range and what you pass in the parameters.&lt;/p&gt;

&lt;p&gt;Let's dive in:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DATEADD&lt;/strong&gt;&lt;br&gt;
Shifts the dates I have forward or backward in time by a specified number of Intervals. &lt;br&gt;
I think of it as shifting the dates I have by a fixed number of units.&lt;/p&gt;

&lt;p&gt;It is best for YoY, QoQ and MoM calculations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DATESINPERIOD&lt;/strong&gt;&lt;br&gt;
Returns a continuous date range (before or after a reference date), going back or forward by a fixed number of Intervals.&lt;br&gt;
I think of it as, "Give me a window of dates around a specific date"&lt;/p&gt;

&lt;p&gt;It is best for trailing periods e.g. (rolling 12 months)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DATESBETWEEN&lt;/strong&gt;&lt;br&gt;
Returns all dates between a start and an end date.&lt;br&gt;
I think of it as manually specifying the start and end of the range.&lt;/p&gt;

&lt;p&gt;It is best for exact range filtering:&lt;br&gt;
  YTD, QTD, MTD, Sales Jan - March&lt;/p&gt;

&lt;p&gt;In summary, DATEADD is a shift while DATESINPERIOD &amp;amp; DATESBETWEEN are range selectors.&lt;/p&gt;

&lt;p&gt;A key thing to note:&lt;br&gt;
DATEADD needs a complete date table as it is not gap-tolerant. Such issues are the reasons we also choose to have a dedicated Dim Calendar table.&lt;/p&gt;

&lt;p&gt;That's it for today and see you on the next one. &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Anything &amp;amp; Everything Data&lt;/em&gt;&lt;/p&gt;

</description>
      <category>powerplatform</category>
      <category>data</category>
      <category>dax</category>
    </item>
    <item>
      <title>SWITCH SELECTION IN POWER BI DAX</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Tue, 04 Feb 2025 03:54:57 +0000</pubDate>
      <link>https://dev.to/johnkyalo/switch-selection-in-power-bi-dax-5ai3</link>
      <guid>https://dev.to/johnkyalo/switch-selection-in-power-bi-dax-5ai3</guid>
      <description>&lt;p&gt;After a sort of an hiatus, okay not really a planned one, I am here to talk about the switch selection in Power BI Dax.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here is the scenario...&lt;/strong&gt;&lt;br&gt;
You have calculated many measures, and you want to know get to understand the %Achieved. &lt;br&gt;
The approach would be first get the measure targets for all the measures you have then now subsequently do other measures with %Achieved whereby it's an %achieved = DIVIDE([achieved],[target])&lt;/p&gt;

&lt;p&gt;Hold on, but that sounds a long route, and it is a traditional approach to providing solutions. What if I told you that we have a dynamic approach that could be done with a few steps?&lt;/p&gt;

&lt;p&gt;Here are the steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get a disconnected table with all indicators that you are tracking.&lt;/li&gt;
&lt;li&gt;Establish a relationship of the table above with your targets table probably using the Indicator Id.&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now proceed to only do a single measure of targets by establishing a variable of the selected Indicator. see example below:&lt;br&gt;
 &lt;strong&gt;VAR SelInd = SELECTEDVALUE(disc[Indicator_id])&lt;br&gt;
 RETURN&lt;br&gt;
     CALCULATE(&lt;br&gt;
          SUM(Targets[Target_value]),&lt;br&gt;
          Targets[Indicator_id] = SelInd&lt;br&gt;
     )&lt;/strong&gt;&lt;br&gt;
The measure above basically looks for the indicator selected, and retrieves the target for that particular Indicator only (a dynamic approach)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now our many measures also need to be wired in a switch logic that matches the Indicator_id in the disconnected table.&lt;br&gt;
This way you only have one measure that contains all the achieved values of the indicators. It is this measure that we use to get to our %Achieved.&lt;br&gt;
 &lt;em&gt;Basically a switch based on selected value in disc table&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now that you have your two measures, achievements and target, go ahead and calculate the %Achieved &lt;br&gt;
%Achieved = DIVIDE([Achieved], [Targets])&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;em&gt;Voila, use the above in your visuals.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;key:&lt;/strong&gt;&lt;br&gt;
The relationship between the disconnected table and the Targets table allows you to dynamically fetch the target values for the selected indicator.&lt;/p&gt;

&lt;p&gt;The switch statement in the achieved measure dynamically calculates the achieved value based on the selected indicator.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Remember, &lt;br&gt;
    Anything and Everything Data&lt;/em&gt;&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>powerplatform</category>
      <category>powerapps</category>
    </item>
    <item>
      <title>Calendar in DAX, Power BI</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Tue, 12 Nov 2024 03:28:38 +0000</pubDate>
      <link>https://dev.to/johnkyalo/calendar-in-dax-power-bi-50l0</link>
      <guid>https://dev.to/johnkyalo/calendar-in-dax-power-bi-50l0</guid>
      <description>&lt;p&gt;As a Power BI developer, more than often you'll likely need to track trends over time. It goes without saying that at some point you will be engaging with a calendar.&lt;/p&gt;

&lt;p&gt;In DAX, you can easily create a calendar table with all the features of a calendar you need, may it be Quarters in a year or month numbers.&lt;/p&gt;

&lt;p&gt;We will explore creating a calendar table :&lt;/p&gt;

&lt;p&gt;The first step is specifying the range of dates you want your calendar to contain and you can contain that in variables. You will need to have a calendar that includes the dates present in your calendar&lt;/p&gt;

&lt;p&gt;&lt;em&gt;&lt;strong&gt;dimCalendar = &lt;br&gt;
VAR Mindate = MIN(Expenditure[Date]&lt;br&gt;
VAR Maxdate = TODAY()&lt;br&gt;
RETURN&lt;br&gt;
ADDCOLUMNS(&lt;br&gt;
CALENDAR(Mindate, Maxdate),&lt;br&gt;
"YEAR" YEAR([Date]),&lt;br&gt;
"MONTH" MONTH([Date]),&lt;br&gt;
"DAY" DAY([Date]),&lt;br&gt;
"MONTHNAME"  FORMAT([Date], "MMM"),&lt;br&gt;
"QUARTER", "Q" &amp;amp; QUARTER([Date])&lt;br&gt;
)&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The above is a simple calendar that:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Defines the dates you need in your calendar table as variables&lt;/li&gt;
&lt;li&gt;You need to ADDCOLUMNS to the calendar, and begin by having it said that the calenda will contain the mindate and the maxdate.
3.Specify the columns as needed. Whatever we have in quotation, is the name of the column then returns respective value.&lt;/li&gt;
&lt;li&gt;The format in the Monthname ensure we return our months as 'Jan, Feb' simply as 3 letter words.&lt;/li&gt;
&lt;li&gt;For the Quarter column, the additional Q ensures the name of quarters begin with the prefix Q. This way it adds much more sense. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There you go, try out this simple calendar and use it in your reports.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Anything and Everythind Data!&lt;/em&gt;&lt;/p&gt;

</description>
      <category>powerplatform</category>
      <category>data</category>
      <category>analyst</category>
      <category>datascience</category>
    </item>
    <item>
      <title>ALWAYS A DATA NERD</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Tue, 05 Nov 2024 20:18:59 +0000</pubDate>
      <link>https://dev.to/johnkyalo/always-a-data-nerd-184h</link>
      <guid>https://dev.to/johnkyalo/always-a-data-nerd-184h</guid>
      <description>&lt;p&gt;Been a long way since I connected with you all.&lt;br&gt;
Actually, the last time we did it was over some SQL...Yea, SQL is and has been great, coming in handy for data nerds dealing with end-to-end projects...&lt;/p&gt;

&lt;p&gt;Now ever since, I have dived into the exciting &lt;strong&gt;Power BI&lt;/strong&gt;, the best visualization tool in my opinion so far and it has been nothing short of a learning experience...&lt;br&gt;
For a month of learning, and another month of using it on a daily basis I have done quite much with this amazing tool.&lt;/p&gt;

&lt;p&gt;Over the next few articles, I will share with you some of the concepts that I have come to appreciate in Power BI, helping to bring out the best analysis of data. Talk of stuff in DAX, Data Modelling, Visuals that are so great and so much of other stuff...&lt;br&gt;
Hang in there and let's get into this ride together! &lt;/p&gt;

&lt;p&gt;Remember, &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Anything and Everything Data&lt;/em&gt;&lt;/p&gt;

</description>
      <category>powerfuldevs</category>
      <category>data</category>
      <category>analytics</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Window Functions in SQL</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Sun, 21 Jul 2024 16:09:36 +0000</pubDate>
      <link>https://dev.to/johnkyalo/window-functions-in-sql-47id</link>
      <guid>https://dev.to/johnkyalo/window-functions-in-sql-47id</guid>
      <description>&lt;p&gt;Just another time nerds, to break down Window functions to you in the simplest form ever.&lt;br&gt;
Simply window functions allow you to perform calculations across a set of rows(a window) while still retaining access to individual rows.&lt;br&gt;
You can use these functions to perform running calculations.&lt;br&gt;
They include:&lt;br&gt;
RANK(), ROW_NUMBER(), DENSE_RANK(), LEAD(), LAG() and even other more aggregate functions.&lt;/p&gt;

&lt;p&gt;For the ranking functions:&lt;br&gt;
Row_number(): numbers all rows sequentially&lt;br&gt;
Rank(): uses the same numeric values for rows which are a tie &lt;br&gt;
        then skips the next value&lt;br&gt;
Dense_ rank(): uses the same numeric values for rows which are a &lt;br&gt;
              but does not allow any gap to the values.&lt;/p&gt;

&lt;p&gt;Lead () allows access to rows after the current row while lag() allows access to rows before the current row.&lt;/p&gt;

&lt;p&gt;Syntax:&lt;br&gt;
&lt;strong&gt;RANK() OVER(PARTITION BY... ORDER BY... )&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Partition by divides the result set into partitions&lt;br&gt;
The ranking gets applied to each partition separately&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This will help you get started with window functions&lt;/em&gt;&lt;br&gt;
&lt;strong&gt;Anything and Everything Data&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>sql</category>
      <category>datascience</category>
      <category>database</category>
      <category>data</category>
    </item>
    <item>
      <title>Common Table Expressions (CTEs) in SQL</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Sun, 05 May 2024 19:35:23 +0000</pubDate>
      <link>https://dev.to/johnkyalo/common-table-expressions-ctes-in-sql-5ba1</link>
      <guid>https://dev.to/johnkyalo/common-table-expressions-ctes-in-sql-5ba1</guid>
      <description>&lt;p&gt;Let me take you through an advanced yet easy concept to grasp in SQL.&lt;br&gt;
You have probably already dealt with sub-queries in SQL. If so, then this is no difference.&lt;br&gt;
A CTE is basically a named temporary result set used within a larger SQL statement.&lt;/p&gt;

&lt;p&gt;Similar to a subquery also known as a nested query, CTEs are useful for breaking down complex queries into more manageable parts to improve code readability.&lt;br&gt;
Think of it as a better way to organize longer queries.&lt;/p&gt;

&lt;p&gt;Having known that, let's go through a CTE example:&lt;br&gt;
First things first, the syntax to include a CTE statement is,&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WITH cte_xxxx&lt;br&gt;
AS (larger/temporary query)&lt;br&gt;
then now the main query&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A point to note is every other time, you should run the two together because as its name appears, a temporary query is not saved anywhere&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;WITH cte_employees&lt;br&gt;
AS (&lt;br&gt;
SELECT emp_id, first_name, last_name, dpt_id, dpt_name&lt;br&gt;
FROM employees)&lt;br&gt;
SELECT * FROM cte_employees&lt;br&gt;
WHERE dpt_id = 2;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The main query selects data from our CTE allowing easy retrieval of information specifically related to department 2&lt;/p&gt;

&lt;p&gt;Always treat a CTE query like any other query...Go ahead and perform joins, aggregate functions in a CTE.&lt;br&gt;
In the event of multiple CTEs, always include them in the same WITH statement separated by a comma.&lt;/p&gt;

&lt;p&gt;Happy querying SQL nerds&lt;/p&gt;

</description>
      <category>database</category>
      <category>datascience</category>
      <category>sql</category>
      <category>analytics</category>
    </item>
    <item>
      <title>JOINS IN SQL</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Sun, 28 Apr 2024 19:08:20 +0000</pubDate>
      <link>https://dev.to/johnkyalo/joins-in-sql-4en9</link>
      <guid>https://dev.to/johnkyalo/joins-in-sql-4en9</guid>
      <description>&lt;p&gt;&lt;em&gt;Being a SQL nerd you've probably heard of joins.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;SQL JOINS combine rows from different tables on related columns.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;INNER JOIN:&lt;/strong&gt;&lt;br&gt;
This being the most common type of join, inner join combines rows from two tables based on a related column between them. Basically, a field that exists in both tables.&lt;br&gt;
Sometimes you can just write it as JOIN.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LEFT JOIN:&lt;/strong&gt;&lt;br&gt;
Retrieves all records from the left table with the corresponding matches in the right table. If there is no match in the right table, NULL values are returned for values in the right column.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RIGHT JOIN:&lt;/strong&gt;&lt;br&gt;
Look at this as the opposite of Left join. Retrieves all records from the right table with the corresponding matches on the left table. Again, if no match found, NULL values are returned as well.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;FULL OUTER JOIN:&lt;/strong&gt;&lt;br&gt;
This type of join returns all records from both tables regardless of a match or not.&lt;br&gt;
For cases where there is no match, NULL values as well are returned for the columns without a corresponding row.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CROSS JOIN:&lt;/strong&gt;&lt;br&gt;
I usually think it is a special type of JOIN...No condition imposed. (ON clause)&lt;br&gt;
It returns a cartesian product of two tables. combining each row from the first table with each row from the other table.&lt;/p&gt;

&lt;p&gt;While on JOINS, there are two clauses that appear as much:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;UNION VS UNION ALL&lt;/em&gt;&lt;br&gt;
Used to combine results from two or more queries into a single result set.&lt;br&gt;
UNION automatically removes the duplicates that arise between the queries.&lt;br&gt;
The idea is to generate a unique result set.&lt;br&gt;
Unlike UNION, UNION ALL does not remove duplicates. It simply combines all results, including duplicates if any.&lt;br&gt;
This means UNION ALL is faster than UNION as it does not need to check for duplicates and eliminate.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Happy querying!&lt;/em&gt;&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>database</category>
      <category>sql</category>
      <category>data</category>
    </item>
    <item>
      <title>GETTING STARTED WITH THE SQL JOURNEY</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Sat, 20 Jan 2024 20:28:19 +0000</pubDate>
      <link>https://dev.to/johnkyalo/getting-started-with-the-sql-journey-3l8n</link>
      <guid>https://dev.to/johnkyalo/getting-started-with-the-sql-journey-3l8n</guid>
      <description>&lt;p&gt;Structured query language is it, and basically, it is the language for communicating with Relational databases such as MySQL and SQLSERVER.&lt;br&gt;
With its ease syntax it gets no minute into understanding the fundamentals. In the past 2 weeks I have had a look or rather a deep dive into the introduction of SQL and quite a lot has been helpful in the learning.&lt;br&gt;
I installed MySQL and chose Popsicle as the text editor to write the queries...It is actually a cool tool to use. I went from getting to &lt;strong&gt;CREATE&lt;/strong&gt; a database to actually querying every bit of its data. Of course, &lt;strong&gt;tables&lt;/strong&gt; are involved, structured into &lt;strong&gt;columns&lt;/strong&gt; and &lt;strong&gt;rows&lt;/strong&gt;.&lt;br&gt;
Constraints in SQL, got to see how you can specify rules for the data that goes in my tables. Some of the common constraints include:&lt;br&gt;
&lt;strong&gt;PRIMARY KEY&lt;/strong&gt; - unique value that identifies each row in a table&lt;br&gt;
&lt;strong&gt;FOREIGN KEY&lt;/strong&gt; - basically a primary key in another table. You refer to it by the term REFERENCE.&lt;br&gt;
&lt;strong&gt;NOT NULL&lt;/strong&gt; - can't leave an empty value for your columns.&lt;br&gt;
&lt;strong&gt;UNIQUE&lt;/strong&gt; - a different value that doesn't match any other in that particular column.&lt;br&gt;
&lt;strong&gt;DEFAULT&lt;/strong&gt; - set a default value for a column if no value specified.&lt;/p&gt;

&lt;p&gt;Moving on I got to interact with a couple SQL Queries. This goes from:&lt;br&gt;
&lt;strong&gt;INSERT INTO&lt;/strong&gt; - feeds data into tables.&lt;br&gt;
&lt;strong&gt;SELECT FROM&lt;/strong&gt; - retrieves data from tables.&lt;br&gt;
&lt;strong&gt;UPDATE&lt;/strong&gt; - modify data in a table.&lt;br&gt;
&lt;strong&gt;DROP&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;DELETE FROM&lt;/strong&gt;&lt;br&gt;
and so forth &lt;br&gt;
A lot of SQL, from the word jump I have realized it's all about the &lt;strong&gt;keywords&lt;/strong&gt;, understand your tables or rather data then fetch it using the appropriate keyword.&lt;br&gt;
I also got to use most of the keywords which include:&lt;br&gt;
&lt;strong&gt;WHERE&lt;/strong&gt;: a specification&lt;br&gt;
&lt;strong&gt;ORDER BY&lt;/strong&gt;: does sorting whether in ascending or descending order.&lt;br&gt;
&lt;strong&gt;GROUP BY&lt;/strong&gt;: groups rows with the same values into summary rows.&lt;br&gt;
&lt;strong&gt;AS&lt;/strong&gt;: for aliases&lt;br&gt;
&lt;strong&gt;DISTINCT&lt;/strong&gt;: all different values, what actually exits&lt;/p&gt;

&lt;p&gt;Functions too especially aggregate functions such as &lt;strong&gt;COUNT()&lt;/strong&gt;, &lt;strong&gt;SUM()&lt;/strong&gt;, &lt;strong&gt;AVG()&lt;/strong&gt;, &lt;strong&gt;MAX()&lt;/strong&gt;, &lt;strong&gt;MIN()&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Moving to JOINS, UNIONS, NESTED queries this SQL gets more interesting for a fact.&lt;br&gt;&lt;br&gt;
Getting to all of this and even more which I left out was way appealing. Pulling all kind of information, you require from modelled data is actually satisfying.&lt;/p&gt;

&lt;p&gt;I now keep it on get hands all dirty on and uncovering more of SQL. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Datanerd&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;DATA ANALYST&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>luxtech</category>
      <category>dsea</category>
      <category>datascience</category>
      <category>data</category>
    </item>
    <item>
      <title>The Complete Guide to Time Series Models</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Sun, 22 Oct 2023 15:08:08 +0000</pubDate>
      <link>https://dev.to/johnkyalo/the-complete-guide-to-time-series-models-o6g</link>
      <guid>https://dev.to/johnkyalo/the-complete-guide-to-time-series-models-o6g</guid>
      <description>&lt;p&gt;Time is the most important factor which ensures success in a business. It is difficult to keep up with the pace of time but through methods of prediction and forecasting such as time series models this is achievable.&lt;br&gt;
It involves working on time-based data to derive hidden insights to make informed decision making. The goal of a time series model is usually to make a forecast for the future.&lt;br&gt;
To be able to come up with a time series model, certain aspects of a time series are considered such as: &lt;br&gt;
Is it &lt;strong&gt;stationery&lt;/strong&gt;?&lt;br&gt;
Is there a &lt;strong&gt;seasonality&lt;/strong&gt;?&lt;br&gt;
Is the target variable &lt;strong&gt;autocorrelated&lt;/strong&gt;?&lt;/p&gt;

&lt;p&gt;Moving on, many of the ways to build a model include:&lt;br&gt;
&lt;strong&gt;Moving average&lt;/strong&gt; - it's a model that states the next model is simply the mean of all the past observations.&lt;br&gt;
&lt;strong&gt;Exponential smoothing&lt;/strong&gt;- uses similar logic to moving average but a less importance is assigned to each observation.&lt;br&gt;
&lt;strong&gt;Double exponential smoothing&lt;/strong&gt;- used when there is a trend in the time series.&lt;br&gt;
&lt;strong&gt;Triple exponential smoothing&lt;/strong&gt;- This method extends double exponential smoothing by adding a seasonal smoothing factor. Of course, this is useful if you notice seasonality in your time series.&lt;br&gt;
&lt;strong&gt;Seasonal autoregressive integrated moving average (SARIMA.)&lt;/strong&gt;&lt;br&gt;
Now, SARIMA is the combination of simpler models that create a complex model that can present a time series exhibiting non-stationery properties and seasonality.&lt;br&gt;
It does involve:&lt;br&gt;
the autoregression model AR(p), basically a regression of the time series onto itself.&lt;br&gt;
the moving average model MA(q)&lt;br&gt;
order of integration&lt;br&gt;
then finally seasonality S where S is the season's length.&lt;br&gt;
All this combines to get the SARIMA.&lt;/p&gt;

&lt;p&gt;To put this Time Series Models into use, it is applied in:&lt;br&gt;
1) Determining patterns.&lt;br&gt;
2) Detecting anomalies.&lt;br&gt;
3) Forecasting future trends.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Exploratory Data Analysis using Data Visualization Techniques</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Sun, 08 Oct 2023 08:29:28 +0000</pubDate>
      <link>https://dev.to/johnkyalo/exploratory-data-analysis-using-data-visualization-techniques-2ok5</link>
      <guid>https://dev.to/johnkyalo/exploratory-data-analysis-using-data-visualization-techniques-2ok5</guid>
      <description>&lt;p&gt;Exploratory Data Analysis involves initial investigation and examination of datasets to summarize the main characteristics often with the help of graphical representations. &lt;br&gt;
Basically, EDA helps you get a feel of the data you are working with. This is by identifying the structure and patterns involved. EDA helps generate hypotheses about relationships and trends in data which guide further analysis.&lt;br&gt;
EDA with data visualization involves creating various plots and charts, such as &lt;strong&gt;histograms&lt;/strong&gt;, &lt;strong&gt;box plots&lt;/strong&gt;, &lt;strong&gt;scatter plots&lt;/strong&gt;, &lt;strong&gt;bar charts&lt;/strong&gt; and &lt;strong&gt;heatmaps&lt;/strong&gt;, to visualize the distribution and relationship within the data. With this, you are able to uncover styles, pick out relationships, and gain insights. In case of anomalies, you also get to identify them.&lt;br&gt;
Mostly &lt;strong&gt;Matplotlib&lt;/strong&gt; and &lt;strong&gt;Seaborn&lt;/strong&gt; are &lt;strong&gt;Python&lt;/strong&gt; libraries used for visualization. There exist various sorts of EDA strategies hired depending on the nature of records and desires of evaluation. This includes:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Univariate analysis&lt;/strong&gt;-makes a specialty of analyzing character variables inside the records set. It involves visualizing an unmarried variable at a time to understand its distribution. 
Examples include:
&lt;strong&gt;Histogram&lt;/strong&gt; -displays distribution of a single numerical variable. Useful for understanding data's central tendency.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bivariate analysis&lt;/strong&gt;- from the name bi which means two, you explore two variables by finding their correlation, association and dependencies.
Examples include:
&lt;strong&gt;Scatter plot&lt;/strong&gt; - which explores relationship between two variables.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multivariate analysis&lt;/strong&gt;- extends bivariate evaluation to encompass greater variables. It ambitions to apprehend the complex interactions and dependencies among the many variables in a record set.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;More different plots which are also considered as techniques include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Box plots (Box and Whisker)&lt;/strong&gt; which provides a summary of visual distribution of data. Good for identifying outliers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Line plots&lt;/strong&gt; used for time-series data. They show how a variable change over time identifying trends.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Bar charts&lt;/strong&gt; mainly used for comparison of categorical data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Heatmaps&lt;/strong&gt; which visualize correlation matrix of numerical variables. They use color intensity to represent the strength of correlations.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Pie charts&lt;/strong&gt; which shows the composition of categorical variable.&lt;br&gt;
Many others include: &lt;strong&gt;pair plots&lt;/strong&gt;, &lt;strong&gt;violin plots&lt;/strong&gt;, &lt;strong&gt;density plots&lt;/strong&gt;, &lt;strong&gt;word cloud&lt;/strong&gt; ...&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All these visualization techniques can be done in both &lt;strong&gt;Python&lt;/strong&gt;, and other visualization tools such as &lt;strong&gt;Excel&lt;/strong&gt;, &lt;strong&gt;PowerBi&lt;/strong&gt; and &lt;strong&gt;Tableau&lt;/strong&gt;. Choice of a tools depends on the user's and interest and what they would like to achieve. &lt;/p&gt;

&lt;p&gt;Therefore, EDA through visualization is a key step in the data analysis process that helps leverage insight into data understanding that results to appropriate business decision making.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;It's Data Allday Everyday&lt;/em&gt;&lt;/p&gt;

</description>
      <category>lux</category>
      <category>dsea</category>
      <category>datascience</category>
      <category>data</category>
    </item>
    <item>
      <title>Data Science for Beginners:2023-2024 Complete Roadmap</title>
      <dc:creator>John Kyalo</dc:creator>
      <pubDate>Tue, 26 Sep 2023 11:33:13 +0000</pubDate>
      <link>https://dev.to/johnkyalo/data-science-for-beginners2023-2024-complete-roadmap-1993</link>
      <guid>https://dev.to/johnkyalo/data-science-for-beginners2023-2024-complete-roadmap-1993</guid>
      <description>&lt;p&gt;Data Science is a rapidly growing field that combines statistics, mathematics, computer science and domain knowledge to extract insights from data. As a data scientist, skills are purposeful to solve complex problems and make better decisions in a variety of Industries.&lt;/p&gt;

&lt;p&gt;To learn, it is very key to start with the basics. This includes learning about the different types of data, how to collect and clean data, and how to use programming languages to analyze data.&lt;br&gt;
To know how to handle data, it's advisable to even begin with what is termed to be used by data analysts a lot i.e.: &lt;strong&gt;Understanding Excel&lt;/strong&gt;, &lt;strong&gt;Spreadsheets&lt;/strong&gt; and &lt;strong&gt;SQL&lt;/strong&gt; which is a Structured Query Language for managing and manipulating data stored in databases.&lt;/p&gt;

&lt;p&gt;The essential skills that then you build onto include learning a programming language in this case &lt;strong&gt;Python&lt;/strong&gt; or &lt;strong&gt;R&lt;/strong&gt;. Python is a general-purpose language well known for its simplicity whereas R is a statistical language.&lt;/p&gt;

&lt;p&gt;From there, a visualization tool would help. Besides working with Python or even R for data manipulation, adding a set of tools such as &lt;strong&gt;Tableau&lt;/strong&gt;, &lt;strong&gt;Power Bi&lt;/strong&gt; is essential. These tools allow you to create interactive and visually appealing charts, graphs and dashboards to communicate your data insights.&lt;/p&gt;

&lt;p&gt;Deep into data Science after getting comfortable with the essentials, it's when you dive into statistics as this is crucial for data mining. Here you get to learn about machine learning algorithms and how you can build predictive models. Basically, Machine learning would be allowing computers to learn from data without being explicitly programmed.&lt;/p&gt;

&lt;p&gt;Advanced topics of a data Science career would include:&lt;br&gt;
&lt;strong&gt;Deep Learning&lt;/strong&gt;, &lt;strong&gt;Big data&lt;/strong&gt; and &lt;strong&gt;Natural Language Processing&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Gaining hands-on experience with data science projects is the way to get to learn about this exciting field&lt;/em&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;IT'S DATA ALLDAY, EVERYDAY&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>lux</category>
      <category>python</category>
      <category>datascience</category>
      <category>luxacademy</category>
    </item>
  </channel>
</rss>
