import streamlit as st
# Custom CSS to style the page with 3D features
st.markdown("""
""", unsafe_allow_html=True)
# Page title
st.title("Data Analysis Roadmap")
# Center image at the top
st.image("images/data_analysis.png", use_column_width='always')
# Two-column layout
col1, col2 = st.columns([1, 2])
# Left column with the buttons
with col1:
st.header("Topics")
selection = None
if st.button("Basic Python", key="basic_python"):
selection = "Basic Python"
if st.button("Intermediate Python", key="intermediate_python"):
selection = "Intermediate Python"
if st.button("Descriptive Statistics", key="descriptive_statistics"):
selection = "Descriptive Statistics"
if st.button("NumPy", key="numpy"):
selection = "NumPy"
if st.button("Pandas", key="pandas"):
selection = "Pandas"
if st.button("Matplotlib", key="matplotlib"):
selection = "Matplotlib"
if st.button("Seaborn", key="seaborn"):
selection = "Seaborn"
if st.button("Inferential Statistics", key="inferential_statistics"):
selection = "Inferential Statistics"
# Right column with the topic description
with col2:
if selection:
if selection == "Basic Python":
st.image("images/python_logo.png", width=50)
st.markdown("""
Basic Python:
Basic Python covers the fundamental aspects of the Python programming language.
Subtopics:
- Syntax: Understanding the basic syntax and structure of Python code.
- Data Types: Working with strings, lists, dictionaries, and tuples.
- Control Flow: Using loops, conditionals, and functions.
- File Handling: Reading from and writing to files.
Example:
Writing simple programs to automate repetitive tasks, such as renaming files in bulk.
""", unsafe_allow_html=True)
elif selection == "Intermediate Python":
st.image("images/python_logo.png", width=50)
st.markdown("""
Intermediate Python:
Intermediate Python includes more advanced features of Python programming.
Subtopics:
- Modules and Packages: Importing and organizing code into modules.
- List Comprehensions: Creating lists in a more readable way.
- Error Handling: Using try, except blocks to handle errors.
- Classes and Objects: Understanding object-oriented programming concepts.
Example:
Building reusable code modules and handling exceptions in data processing scripts.
""", unsafe_allow_html=True)
elif selection == "Descriptive Statistics":
st.image("images/statistics_logo.png", width=50)
st.markdown("""
Descriptive Statistics:
Descriptive statistics summarize and describe the main features of a dataset.
Subtopics:
- Central Tendency: Mean, median, mode.
- Dispersion: Variance, standard deviation, range.
- Distribution: Quartiles, percentiles, histograms.
Example:
Summarizing sales data to understand the average sales per month and the variability in sales.
""", unsafe_allow_html=True)
elif selection == "NumPy":
st.image("images/numpy_logo.png", width=50)
st.markdown("""
NumPy:
NumPy is a fundamental package for numerical computing in Python.
Subtopics:
- Arrays: Creating and manipulating arrays.
- Mathematical Operations: Performing element-wise and matrix operations.
- Statistical Functions: Using built-in functions for analysis.
- Data Transformation: Reshaping and slicing arrays.
Example:
Performing fast and efficient calculations on large datasets, such as computing the sum of all elements in an array.
""", unsafe_allow_html=True)
elif selection == "Pandas":
st.image("images/pandas_logo.png", width=100)
st.markdown("""
Pandas:
Pandas is a powerful library for data manipulation and analysis in Python.
Subtopics:
- DataFrames: Creating and manipulating DataFrames.
- Data Cleaning: Handling missing values and duplicates.
- Data Transformation: Merging, joining, and concatenating DataFrames.
- Data Analysis: Grouping and aggregating data.
Example:
Cleaning and analyzing sales data from different regions to find total sales per product category.
""", unsafe_allow_html=True)
elif selection == "Matplotlib":
st.image("images/matplotlib_logo.png", width=100)
st.markdown("""
Matplotlib:
Matplotlib is a plotting library for creating static, interactive, and animated visualizations in Python.
Subtopics:
- Basic Plots: Creating line, bar, and scatter plots.
- Customization: Customizing plots with titles, labels, and legends.
- Subplots: Creating multiple plots in a single figure.
Example:
Visualizing sales trends over time with a line chart and customizing it to include titles and labels.
""", unsafe_allow_html=True)
elif selection == "Seaborn":
st.image("images/seaborn_logo.png", width=100)
st.markdown("""
Seaborn:
Seaborn is a data visualization library based on Matplotlib that provides a high-level interface for drawing attractive statistical graphics.
Subtopics:
- Statistical Plots: Creating plots like histograms, box plots, and violin plots.
- Customization: Advanced customization of plots.
- Integration: Seamless integration with pandas DataFrames.
Example:
Creating a box plot to visualize the distribution of exam scores across different classes.
""", unsafe_allow_html=True)
elif selection == "Inferential Statistics":
st.image("images/statistics_logo.png", width=50)
st.markdown("""
Inferential Statistics:
Inferential statistics allow us to make predictions or inferences about a population based on a sample of data.
Subtopics:
- Hypothesis Testing: Determining the validity of assumptions.
- Confidence Intervals: Estimating population parameters.
- Regression Analysis: Modeling relationships between variables.
- ANOVA and Chi-Square Tests: Comparing group means and categorical variables.
Example:
Using regression analysis to predict future sales based on past data trends and conducting hypothesis tests to determine if a new marketing strategy significantly impacts sales.
""", unsafe_allow_html=True)