top of page

Fundamental concepts in data analysis and introduction to computational thinking

  • Foto do escritor: Vicky Costa
    Vicky Costa
  • 5 de abr. de 2024
  • 2 min de leitura

Atualizado: 2 de mai. de 2024

In the world today, where the amount of data generated on a daily basis is colossal, the ability to analyse and interpret this data has become an essential skill. Data analysis goes beyond simply examining numbers and graphs; it involves understanding fundamental concepts, applying different types of analysis and, most importantly, the ability to interpret data in order to make informed decisions.


Fundamental concepts in data analysis


The analysis of data encompasses a number of key concepts that are essential to understanding the process of turning data into actionable insights. Some of these concepts include:


  • Kinds of Analysis: This involves differentiating between descriptive, diagnostic, predictive and prescriptive analysis, each with its own set of techniques and objectives. Data Interpretation: The correct interpretation of data is crucial to extracting meaning from it. This includes identifying patterns, trends and relationships between variables.


The importance of computational thinking in programming


When embarking on the journey of learning to code, it is essential to develop computational thinking skills. This analytical and solution-orientated approach is inspired by the way computers process information and involves four main skills:

Decomposition: Breaking down complex problems into smaller, more manageable parts.

Pattern Recognition: Identifying trends and regularities in data.

Abstraction: Focusing on the essential aspects of a problem and ignoring irrelevant details.

Algorithms: Developing sequential and precise steps to solve a problem.


Programming languages and paradigms


In programming, programming languages are the tools that developers use to write code that computers can understand and execute. There are various programming paradigms, the main ones being structured programming and object-orientated programming (OOP).

Structured programming focuses on dividing programs into smaller parts, called functions or procedures, while OOP emphasises the representation of real-world concepts in the form of objects, promoting code reuse and modularity.


Practical Examples


To illustrate how different programming languages approach similar tasks, let's consider a simple example: requesting the user's name and printing a personalised greeting. Below are implementations of this example in several languages, including C, C++, Golang, Java, JavaScript, Python, Ruby and SQL.


C

#include <stdio.h>

int main() {

char name[50];

printf("Enter your name: ");

scanf("%49[^\n]", name);

printf("Hello, %s!\n", name);

return 0;

}

In this example, the standard library stdio.h is used for input and output operations. The name is read using scanf and then printed using printf.

C++

#include <iostream>

#include <string>

int main() {

std::string name;

std::cout << "Enter your name: ";

std::getline(std::cin, name);

std::cout << "Hello, " << name << "!" << std::endl;

return 0;

}

This code uses the iostream library, introducing a string object to store the user's name. The name is read with getline and printed using cout.

Golang

package main

import (

"bufio"

"fmt"

"os"

)

func main() {

reader := bufio.NewReader(os.Stdin)

fmt.Print("Enter your name: ")

name, _ := reader.ReadString('\n')

fmt.Printf("Hello, %s!", name)

}

Input is read using bufio.NewReader and printed using fmt.Printf.

Java

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

System.out.print("Enter your name: ");

String name = scanner.nextLine();

System.out.println("Hello, " + name + "!");

scanner.close();

}

}

The Scanner class is used for input. The name is read using nextLine() and printed using string concatenation.

JavaScript

const readline = require('readline');

const rl = readline.createInterface({

input: process.stdin,

output: process.stdout

});

rl.question('Enter your name: ', (name) => {

console.log(`Hello, ${name}!`);

rl.close();

});

The readline module is used for input. The name is read with a callback function and printed using string interpolation.

Python

name = input("Enter your name")

print(f"Hello, {name}!")

The input() function is used to get user input. The name is printed using f-strings.

Rubi

puts "Enter your name: "

name = gets.chomp

puts "Hello, #{name}!"

gets.chomp is used for input. The name is printed using string interpolation.

SQL

-- It is not possible to request user input directly in SQL, but you can do this using a programming language that interacts with the database and inserts the data into the table.

-- Assuming a 'users' table with a 'name' column:


INSERT INTO users (name) VALUES ('Enter your name here');

Although it is not possible to request input directly in SQL, the example shows how to insert data into an SQL table using a programming language to interact with the database.

Extra:

The C language was created by Dennis Ritchie in 1972.

The SQL language was created by Donald D. Chamberlin and Raymond F. Boyce in 1974.

The C++ language was created by Bjarne Stroustrup in 1983.

The Python language was created by Guido van Rossum in 1991.

The Ruby language was created by Yukihiro Matsumoto in 1995.

The JavaScript language was created by Brendan Eich (Netscape Communications Corporation) in 1995.

The Java language was created by James Gosling (Sun Microsystems) in 1995.

The Golang language was created by Robert Griesemer, Rob Pike and Ken Thompson (Google) in 2009.


Once during an interview I was asked who and when Python was created rsrs

Conclusion


Data analysis and programming are interconnected skills that play a fundamental role in various sectors of modern society. Understanding the basic concepts of data analysis and developing computational thinking skills are essential steps for anyone wishing to excel in these constantly evolving fields.

Always remember that, beyond mastering the techniques and tools, the real skill lies in the ability to interpret the data and turn that knowledge into actionable insights that drive informed decision-making.

I hope this article has provided you with a valuable introduction to the main concepts in data analysis and computational thinking in programming.




Comentários


Não é mais possível comentar esta publicação. Contate o proprietário do site para mais informações.

© 2023 por Vicky Costa.

Networking
Social

  • Facebook
  • LinkedIn
  • Instagram
  • GitHub
  • Pinterest
bottom of page