Quick Data Insights for FabLab
Duration: 2 hours
Participants: 10-15 FabLab users (makers, hobbyists, engineers, and students)
Prerequisites: Basic knowledge of Python programming and an understanding of NumPy, Pandas, and Matplotlib.
Objective: This workshop aims to provide participants with a quick, hands-on experience in applying AI data skills to analyze and visualize data generated from FabLab equipment and projects.
Agenda:
Introduction and Setup (15 minutes)
- Brief overview of the workshop and objectives
- Introduction to FabLab environment and typical data sources (3D printers, CNC machines, IoT devices)
- Setting up the working environment (Jupyter notebooks, necessary libraries)
Session 1: Data Collection and Preparation (30 minutes)
- Introduction to data collection methods from various FabLab equipment
- Collecting sample data (provided) from IoT sensors and 3D printers
- Using Pandas to load and inspect data
- Reading data from CSV files
- Basic data cleaning and preparation (handling missing values, filtering)
import pandas as pd
# Load sample data
data = pd.read_csv('sample_fablab_data.csv')
# Inspect data
print(data.head())
# Clean data (example: fill missing values)
data.fillna(method='ffill', inplace=True)
Session 2: Data Analysis with Pandas and NumPy (30 minutes)
- Using NumPy and Pandas for basic data analysis
- Calculating summary statistics
- Analyzing time-series data
- Hands-on activity: Participants will analyze the provided data to extract meaningful insights
import numpy as np
# Summary statistics
print(data.describe())
# Analyzing time-series data
time_series = data['usage_time']
print(np.mean(time_series))
Break (10 minutes)
Session 3: Data Visualization with Matplotlib (30 minutes)
- Introduction to data visualization with Matplotlib
- Creating simple plots (line plot, bar chart)
- Customizing plots (labels, titles, legends)
- Hands-on activity: Participants will create visualizations for their analyzed data
import matplotlib.pyplot as plt
# Line plot
plt.plot(data['timestamp'], data['usage_time'])
plt.xlabel('Time')
plt.ylabel('Usage Time')
plt.title('Usage Time Over Time')
plt.show()
# Bar chart
plt.bar(data['device'], data['usage_time'])
plt.xlabel('Device')
plt.ylabel('Usage Time')
plt.title('Usage Time by Device')
plt.show()
Wrap-Up and Q&A (15 minutes)
- Summary of key takeaways
- Q&A session
- Providing additional resources for further learning
Materials Needed:
- Computers with Python, NumPy, Pandas, and Matplotlib installed
- Sample datasets for demonstration (pre-collected data from IoT sensors and 3D printers)
Outcome:
Participants will gain a quick and practical understanding of how to collect, analyze, and visualize data within a FabLab environment. They will learn how to apply AI data skills to extract insights and improve their projects, fostering a data-driven approach to innovation.