惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
aimingoo的专栏
aimingoo的专栏
C
Check Point Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
D
Docker
N
Netflix TechBlog - Medium
罗磊的独立博客
F
Full Disclosure
I
InfoQ
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
The Register - Security
The Register - Security
The GitHub Blog
The GitHub Blog
U
Unit 42
Microsoft Security Blog
Microsoft Security Blog
Webroot Blog
Webroot Blog
Apple Machine Learning Research
Apple Machine Learning Research
T
Threatpost
博客园 - 【当耐特】
C
Cybersecurity and Infrastructure Security Agency CISA
P
Privacy International News Feed
Simon Willison's Weblog
Simon Willison's Weblog
T
Threat Research - Cisco Blogs
Y
Y Combinator Blog
P
Proofpoint News Feed
B
Blog RSS Feed
G
GRAHAM CLULEY
Last Week in AI
Last Week in AI
Martin Fowler
Martin Fowler
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Cisco Talos Blog
Cisco Talos Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
P
Palo Alto Networks Blog
博客园 - 三生石上(FineUI控件)
Recent Announcements
Recent Announcements
P
Privacy & Cybersecurity Law Blog
Know Your Adversary
Know Your Adversary
I
Intezer
Engineering at Meta
Engineering at Meta
博客园 - 聂微东
L
LangChain Blog
B
Blog
雷峰网
雷峰网
K
Kaspersky official blog
S
Secure Thoughts
Security Latest
Security Latest
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
Security @ Cisco Blogs
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python) The Hidden Cost of AI Systems Nobody Talks About. undefined vs undeclared, and how typeof behaves Switching from file-based jobs to NATS/Kafka in Rust without changing code io_uring Adventures: Rust Servers That Love Syscalls Why Agentic AI is Killing the Traditional Database The POUR principles of web accessibility for developers and designers Quantum Neural Network 3D — A Deep Dive into Interactive WebGL Visualization How To Install Caveman In Codex On macOS And Windows Automation Pipeline Reliability: Why Your Workflow Breaks When Nobody Is Watching I Built an 'Open World' AI Coding Agent — It Works From ANY Folder From Freelancing to Product: A Tech Service Company's SaaS Transformation China's AI Giants: Adding Tencent Hunyuan & ByteDance Doubao to AI University (74 Providers) On the Vibe Coders and Their Lies clerk: Auto-Summarize Your Claude Code Sessions AI Weekly — 2026/04/10–04/17 | The Model Lockdown Is Here, but the Toolchain Is the Real Battleground AI 週報 — 2026/04/10–2026/04/17 模型封鎖潮來了,但工具鏈才是真戰場 Maybe this is how Open-Source apps are born... 🚀 Fine-Tune LLMs with LoRA and QLoRA: 2026 Guide tRPC v11 + Next.js App Router: End-to-End Type Safety Without the Boilerplate ShadCN UI in 2026: Why I Stopped Installing Component Libraries and Started Owning My Components SaaS Billing in React Server Components: Stripe + Supabase Without a Single `useEffect` Join our DEV Weekend Challenge — $1,000 in Prizes Across TEN winners! Submissions Due April 20 at 6:59 AM UTC. Implementing FSRS Spaced Repetition in Flutter + Supabase — Adding Memory Science to an AI Learning App "I Texted My Localhost From the Train — Claude Code Fixed the Bug Before I Got Home" I Built a Sales Prep AI and It Went Deeper Than Expected Design to Code #2: One JSON, Eleven Outputs Solving the 100M-Row Problem: A Summary Table Pattern for High-Volume Push Notification Logs Flutter Web With Wasm: What Actually Changes For Developers I Built 50 Royalty-Free Soundtracks for My Side Project in a Weekend Using AI Music Generation The Vibe Coding Security Checklist: 7 Things to Check Before You Ship Stop Letting Googlebot Guess Fix Your React App's SEO Right Desconstruindo o Streaming do LinkedIn: Como Criar um Engine de Extração de Vídeo de Alta Performance com HLS e FFmpeg (EDA Part-1) EDA (Exploratory Data Analysis) Explained With Real Life — Why Looking at Your Data Is the Most Important Step in Machine Learning Brand Relationship Management at Scale: Our 4-Touch Outreach System for 200+ Brands Why String.fromEnvironment() Might Return an Empty String in Dart JGuardrails 1.0.0 — Hardening Java LLM Apps Against Jailbreaks, Toxicity, and Prompt Injection Plan and Schedule a Full Week of Threads Content From One Claude Conversation Coding Cat Oran Ep3, Five Tables Changed Everything Updated: BFF Pattern I'm done watching freelancers get buried by 200 proposals. So I'm building the alternative. This is my first post BFS Algorithm in Java Step by Step Tutorial with Examples Tracking LLM Pricing Monthly: An Open Dataset for 22 AI Models How We Measure Content ROI on a Comparison Site: Revenue Attribution Without Perfect Data Introducing Nova AI Ops: The AI-Native Operating System for SRE Teams I built a free desktop video downloader for Windows — Grabbit How Talkie OCR Helps Vision-Impaired & Dyslexic Users Read the World Around Them VRCFaceTracking安装和iPhone面捕配置教程,有bug Even CrowdStrike Can't See Your Agents The Automation Gold Rush: What n8n Workflows and Claude Are Opening Up for Developers Right Now
Introduction to Python for Data Analysis: A Beginner’s Guide
joseph mwang · 2026-05-15 · via DEV Community

Introduction

For a long time, I viewed programming as something reserved for software engineers and computer scientists. As someone with a background in scientific research and a growing interest in data analytics, I assumed tools like Excel, SQL, and Power BI were enough to answer most questions hidden in data.

Then I started learning Python, and what first looked like a programming language full of strange syntax quickly revealed itself as one of the most powerful tools a data analyst or data scientist can have. Python is not just about writing code; it is about automating repetitive tasks, cleaning messy datasets, analysing millions of records, and creating reproducible workflows that can be shared with anyone.

In this article, I share my beginner-friendly understanding of Python and how it is used in the data analytics space. If you are just starting your journey in data analysis, this guide will give you a practical overview of what Python is, why it matters, and the core concepts you need to know.

What Is Python?

Python is a high-level, general-purpose programming language known for its readability and simplicity.

It was created by Guido van Rossum and first released in 1991. The whole idea behind creating Python was that Code should be easy to read and easy to write.

Unlike many programming languages that require complex syntax, Python uses clear and concise statements that often resemble plain English.A better example is you can print hello data world and run to get the output.

a simple code

That single line displays text on the screen and demonstrates how approachable Python can be.

Why Python Is Important in Data Analysis

Python has become one of the most widely used languages in data analytics, data science, machine learning, and artificial intelligence. Its strength lies in its versatility.

1. Automating Repetitive Tasks

Data analysts often perform the same operations repeatedly:

  • Renaming hundreds of files
  • Cleaning dozens of spreadsheets
  • Downloading reports from APIs
  • Merging datasets

Python can automate these tasks.Let me give you a real-world scenario: Imagine receiving 200 CSV files from different branches every month. Opening and cleaning each file manually in Excel would take hours. With Python, a short script can process all files in seconds.

Python script for automating file processing

Python script for automating file processing

2. Handling Large and Complex Data

Excel becomes slow when datasets grow to hundreds of thousands or millions of rows.

Python, especially with the pandas library, can efficiently process large datasets and perform advanced transformations. Real-World Scenario
Analysing e-commerce transactions from Jumia or Amazon with millions of records is practical in Python but cumbersome in spreadsheets.

3. Advanced Data Cleaning

Real-world data is rarely perfect.

You may encounter:

  • Missing values
  • Duplicate records
  • Inconsistent text formats
  • Incorrect dates

Python provides tools to clean and standardize data systematically. Real-World Scenario: Converting NAIROBI, Nairobi, and nairobi into consistent values is a simple operation in Python.

Harmonizing columns names

4. Reproducibility

Every step of your analysis is stored in code.

This means:

  • Your work can be repeated
  • Errors can be traced
  • Colleagues can reproduce your results.

Python Basics Every Data Analyst Should Know

1.Variables

Variables store data values.

name = "Joseph"
age = 28

Enter fullscreen mode Exit fullscreen mode

name is the variable that stores the name Joseph and age is the variable that store the 28
Think of variables as labeled containers.

2.Data Types

Python supports several built-in data types.

Data_Type Example
Strings "Joseph
integer 28
Float 23.43
Boolean True/False

Demonstrating Python data types

3.Operators

Operators allow you to perform calculations and comparisons.

Arithmetic Operators

Arithmetic Operators

Comparison Operators

Comparison operators are used to compare two values:

Operator Name Example
== Equal x == y
!= Not equal x != y
> Greater than x > y
< Less than x < y
>= Greater than or equal to x >= y
<= Less than or equal to x <= y

Logical Operators

Logical operators are used to combine conditional statements:

operator Description example
and returns true if both conditions are true x = 5, print(x<=5 and x < 10) (output:True)
or returns true if one of the conditions is true x = 5, print(x<4 and x < 10) (output:True)
not Reverse the result, returns False if the result is true x = 5,print(not(x > 3 and x < 10)) (output:False)

4.Data Structures

Lists
Lists are used to store multiple items in a single variable.
List items are ordered, changeable, and allow duplicate values.
List items are indexed; the first item has index [0], the second item has index [1], etc.
list uses square brackets [ ]

fruits = ["apple", "banana", "mango"]

Enter fullscreen mode Exit fullscreen mode

Tuples
Tuples are used to store multiple items in a single variable.
Tuple items are ordered, unchangeable, and allow duplicate values.
Tuples use parentheses ()

coordinates = (1.2, 3.4)

Enter fullscreen mode Exit fullscreen mode

Dictionaries
Dictionaries are used to store data values in (key: value) pairs.
A dictionary is a collection that is ordered, changeable, and does not allow duplicates.
Dictionary uses curly brackets {}

student = {"name": "Amina", "score": 90}

Enter fullscreen mode Exit fullscreen mode

Sets
A set is a collection that is unordered, unchangeable, and unindexed.
Sets are used to store multiple items in a single variable.
Sets cannot have two items with the same value.
Sets uses curly brackets {}

cities = {"Nairobi", "Mombasa", "Kisumu"}

Enter fullscreen mode Exit fullscreen mode

These structures help organise and manipulate data efficiently.

Conditional Statements

marks = 75

if marks >= 70:
    print("Pass")
else:
    print("Fail")

Enter fullscreen mode Exit fullscreen mode

For Loops

Loops repeat tasks automatically.

for number in range(1, 6):
    print(number)

Enter fullscreen mode Exit fullscreen mode

Real-World Scenario

Processing each row in a dataset or iterating through multiple files.

Functions

The functions package reusable logic.

def greet(name):
    return f"Hello, {name}!"

Enter fullscreen mode Exit fullscreen mode

Functions make code cleaner and easier to maintain.

Python Libraries for Data Analysis

One of Python's greatest strengths is its ecosystem of libraries.

Requests

requests url is used to interact with web APIs.

import requests

response = requests.get("https://dummyjson.com/products")
data = response.json()

Enter fullscreen mode Exit fullscreen mode

This is useful for collecting real-time data from online sources.

Pandas

pandas url is the most widely used library for data manipulation.

import pandas as pd
#loading an excel file into a notebook
df = pd.read_csv("sales.csv") 
df.head()

Enter fullscreen mode Exit fullscreen mode

import pandas as pd
data_json = data.json()        
#transforms a JSON file into a dataframe
df = pd.DataFrame(data_json[:100])
df

Enter fullscreen mode Exit fullscreen mode

With pandas, you can:

  • Load data
  • Filter rows
  • Handle missing values
  • Group and summarize
  • Merge datasets

For more information about pandas, refer to this video.
youtube link

<br>
Getting data URLs and loading a dataset with requests and pandas

Python Enhancement Proposals (PEP 8)

Like people, Python has its own likes and dislikes, its own "pet peeves". It likes clean indentation, meaningful variable names, and consistent formatting, and it dislikes messy spacing, unclear names, and poorly organized code. To help programmers understand what Python “prefers” and what it “dislikes,” the Python community created Python Enhancement Proposals (PEPs), with PEP 8 PEP providing the most widely used guidelines for writing readable and consistent code.

Indentation

Python uses indentation (typically 4 spaces) to define code blocks.

if True:
    print("Indented correctly")

Enter fullscreen mode Exit fullscreen mode

Line Length

Recommended maximum line length is 79 characters.

Naming Conventions

Variables and Functions: snake_case

total_sales = 500

def calculate_average():
    pass

Enter fullscreen mode Exit fullscreen mode

Classes: PascalCase

class StudentRecord:
    pass

Enter fullscreen mode Exit fullscreen mode

Constants: UPPER_CASE

PI = 3.14159

Enter fullscreen mode Exit fullscreen mode

Docstrings

Docstrings describe what a function does.

def add_numbers(a, b):
    """Return the sum of two numbers."""
    return a + b

Enter fullscreen mode Exit fullscreen mode

Docstrings are essential for writing maintainable code.

Final Thoughts

Python has shown me that data analysis is not just about creating charts or writing queries; it is about building repeatable processes that turn raw data into reliable insights.

Although I am still at the beginning of my learning journey, I can already see why Python has become such an essential tool for analysts and scientists. If you are starting out, focus on the fundamentals, practice consistently, and trust that each small script you write is another step toward becoming a more effective data professional.

A few weeks into this journey, I already understand why Python is considered the backbone of data science.

And this is only the beginning!