Selçuk Korkmaz, PhD Profile picture
Apr 23 10 tweets 4 min read Twitter logo Read on Twitter
[1/9] 🎲 Let's talk about the difference between probability and likelihood in #statistics. These two terms are often confused, but understanding their distinction is key for making sense of data analysis! #Rstats #DataScience Image
[2/9]💡Probability is a measure of how likely a specific outcome is in a random process. It quantifies the degree of certainty we have about the occurrence of an event. It ranges from 0 (impossible) to 1 (certain). The sum of probabilities for all possible outcomes is always 1.
[3/9] 📊 Likelihood, on the other hand, is a measure of how probable a particular set of observed data is, given a specific set of parameters for a statistical model. Likelihood is not a probability, but it shares the same mathematical properties (i.e., it's always non-negative).
[4/9] 🔑 The key difference between probability and likelihood is their focus. Probability is concerned with the outcome before it happens, while likelihood is focused on the model's parameters after the data has been observed. #RStats #DataScience
[5/9] 🌟 Now let's demonstrate the difference using #Rstats. Suppose we're interested in the probability of getting heads (H) or tails (T) when flipping a fair coin. We can simulate this process in R:
set.seed(123)
flips <- sample(c("H", "T"), size = 100, replace = TRUE, prob = c(0.5, 0.5))
table(flips)

flips
H T
47 53

#RStats #DataScience
[6/9] 📈 From the simulation, we can estimate the probability of heads or tails. In this case, since it's a fair coin, the probability of each outcome is 0.5.

Now, let's consider a model with a parameter p (probability of heads) and compute the likelihood for the observed data.
[7/9] 🧮 In R, we can compute the likelihood using the binomial distribution:

n_heads <- sum(flips == "H")
n_tails <- sum(flips == "T")
p <- seq(0, 1, 0.01)
l <- dbinom(n_heads, size = length(flips), prob = p)
plot(p, l, type = "l", xlab = "p", ylab = "Likelihood")

#RStats Image
[8/9] 📉 The likelihood plot shows how probable our observed data is for each value of p. The higher the likelihood, the more consistent the data is with the model parameters. Note that the likelihood isn't a probability distribution, as the area under the curve doesn't sum to 1.
[9/9] 📚It's important to remember that likelihood is not the probability of the parameters themselves, but rather a measure of how well those parameters fit the data we've observed. This distinction is crucial for understanding concepts like maximum likelihood estimation (MLE).

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Selçuk Korkmaz, PhD

Selçuk Korkmaz, PhD Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @selcukorkmaz

Apr 25
🧵 1/10 🧵
🎯 Demystifying the #Apply Functions Family in #R 🎯

Are you an #Rstats enthusiast? Let's dive into the powerful 'apply' family of functions to help you manipulate and analyze data efficiently! 👩‍💻👨‍💻

#DataScience #RStats Source: https://r-coder.com...
🧵 2/10
Meet the Family! 🏡

There are six main functions in the 'apply' family:

1️⃣ apply()
2️⃣ lapply()
3️⃣ sapply()
4️⃣ vapply()
5️⃣ mapply()
6️⃣ tapply()

Each has its own use case and is designed to work with different data structures. Let's explore them! 🕵️‍♂️🔍

#RStats
🧵 3/10 🧵
1️⃣ apply()

Use apply() for applying a function across the rows or columns of a matrix or array.

Syntax: apply(X, MARGIN, FUN, ...)

X: array or matrix
MARGIN: 1 for rows, 2 for columns
FUN: function to apply
... : additional arguments

#RStats #DataScience
Read 10 tweets
Apr 24
1/ 🎯 Introduction 📌
The #caret package in #R is a powerful tool for data pre-processing, feature selection, and machine learning model training. In this thread, we'll explore some useful tips & tricks to help you get the most out of caret. #DataScience #MachineLearning #RStats Image
2/ 🧹 Data Pre-processing 📌
caret offers various data pre-processing techniques, like centering, scaling, and removing near-zero-variance predictors. Use the preProcess() function to apply these methods before model training.🧪 #RStats #DataScience
3/ ⚙️ Feature Selection 📌
Use the rfe() function for recursive feature elimination. This method helps you find the most important features in your dataset, improving model performance & interpretation.🌟 #RStats #DataScience
Read 8 tweets
Apr 24
1/🧶📝 Welcome to a Twitter thread discussing the pros & cons of the #R packages, #knitr and #sweave. These packages allow us to create dynamic, reproducible documents that integrate text, code, and results. Let's dive into the strengths and weaknesses of each. #Rstats
2/🔍 #knitr is a more recent and widely-used package that simplifies the creation of dynamic reports. It's an evolution of #sweave and supports various output formats, including PDF, HTML, and Word. Plus, it's compatible with Markdown and LaTeX! #Rstats
3/🌟 Pros of #knitr:
✅ Better syntax highlighting
✅ Cache system to speed up compilation
✅ Inline code chunks
✅ Flexible output hooks
✅ More output formats
✅ Integrates with other languages
Overall, it provides more control and customization in document creation. #RStats
Read 9 tweets
Apr 24
🧵1/9 Let's talk about methods for identifying the optimal number of clusters in cluster analysis!

Cluster analysis is a technique used to group data points based on their similarity. Here are some popular methods & R packages. #RStats #DataScience Source: https://www.geeksfo...
🔍2/9 Elbow Method: The Elbow Method involves plotting the explained variation (inertia) as a function of the number of clusters. The "elbow point" on the curve represents the optimal number of clusters. R package: 'factoextra' #RStats #DataScience cran.r-project.org/web/packages/f…
📈3/9 Silhouette Score: This method evaluates the quality of clustering by calculating the average silhouette score of each data point. Higher silhouette scores indicate better cluster assignments. Optimal clusters have the highest average silhouette score.cran.r-project.org/web/packages/c…
Read 9 tweets
Apr 24
🧵1/7 Understanding the difference between test set and validation set is crucial for building accurate and robust machine learning models. In this thread, we'll discuss the key differences between these two sets and their importance in model development. #MachineLearning #RStats https://www.brainstobytes.c...
🧵2/7 Validation set: It is used during model development to tune hyperparameters and make decisions about the model architecture. It helps evaluate the model's performance and prevents overfitting by providing an unbiased estimate of how well the model generalizes to new data.
🧵3/7 Test set: This is a separate dataset not used during model training or validation. It's only used after the model has been finalized to assess its performance on completely unseen data. This provides an unbiased evaluation of the final model. #RStats #DataScience
Read 17 tweets
Apr 23
1/🧵🔍 Making sense of Principal Component Analysis (PCA), Eigenvectors & Eigenvalues: A simple guide to understanding PCA and its implementation in R! Follow this thread to learn more! #RStats #DataScience #PCA Source: https://towardsdata...
2/📚PCA is a dimensionality reduction technique that helps us to find patterns in high-dimensional data by projecting it onto a lower-dimensional space. It's often used for data visualization, noise filtering, & finding variables that explain the most variance. #DataScience
3/🎯 The goal of PCA is to identify linear combinations of original variables (principal components) that capture the maximum variance in the data, with each principal component being orthogonal to the others. #RStats #DataScience
Read 10 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(