コンテンツにスキップ

Jupyter Notebook

Comprehensive Jupyter Notebook shortcuts and workflows for data science and interactive computing.

Basic Navigation

Shortcut Mode Description
Enter Command Enter Edit Mode
Esc Edit Enter Command Mode
Shift+Enter Both Run Cell and Select Below
Ctrl+Enter Both Run Cell
Alt+Enter Both Run Cell and Insert Below
↑/↓ Command Select Cell Above/Below
A Command Insert Cell Above
B Command Insert Cell Below
X Command Cut Cell
C Command Copy Cell
V Command Paste Cell Below
Shift+V Command Paste Cell Above
DD Command Delete Cell
Z Command Undo Cell Deletion

Cell Operations

Shortcut Mode Description
M Command Change to Markdown Cell
Y Command Change to Code Cell
R Command Change to Raw Cell
1-6 Command Change to Heading 1-6
Shift+M Command Merge Selected Cells
Ctrl+Shift+- Edit Split Cell at Cursor
Shift+J/K Command Extend Selection Below/Above
Shift+↑/↓ Command Extend Selection

Code Editing

Shortcut Mode Description
Tab Edit Code Completion or Indent
Shift+Tab Edit Tooltip
Ctrl+] Edit Indent
Ctrl+[ Edit Dedent
Ctrl+A Edit Select All
Ctrl+Z Edit Undo
Ctrl+Shift+Z Edit Redo
Ctrl+Y Edit Redo
Ctrl+Home Edit Go to Cell Start
Ctrl+End Edit Go to Cell End
Ctrl+Left/Right Edit Go Left/Right One Word
Ctrl+Backspace Edit Delete Word Before
Ctrl+Delete Edit Delete Word After

Running Code

Shortcut Mode Description
Shift+Enter Both Run Cell, Select Below
Ctrl+Enter Both Run Cell
Alt+Enter Both Run Cell, Insert Below
Ctrl+K Command Interrupt Kernel
0,0 Command Restart Kernel
Shift+L Command Toggle Line Numbers
Shift+O Command Toggle Output

File Operations

Shortcut Mode Description
Ctrl+S Both Save and Checkpoint
Ctrl+Shift+S Command Save As
Ctrl+O Command Open
Ctrl+N Command New Notebook
Ctrl+Shift+P Command Command Palette

View and Layout

Shortcut Mode Description
Shift+Space Command Scroll Up
Space Command Scroll Down
Ctrl+Shift+L Command Toggle All Line Numbers
F Command Find and Replace
O Command Toggle Output
Shift+O Command Toggle Output Scrolling

Magic Commands

Command Description
%run script.py Run Python script
%load script.py Load script into cell
%who List variables
%whos List variables with details
%time statement Time execution of statement
%timeit statement Time execution multiple times
%matplotlib inline Enable inline plots
%pwd Print working directory
%cd directory Change directory
%ls List directory contents
%history Show command history
%reset Reset namespace
%debug Enter debugger
%pdb on/off Toggle automatic debugger

Cell Magic Commands

Command Description
%%time Time execution of entire cell
%%timeit Time execution of cell multiple times
%%bash Run cell as bash script
%%html Render cell as HTML
%%javascript Run cell as JavaScript
%%latex Render cell as LaTeX
%%markdown Render cell as Markdown
%%python2 Run cell with Python 2
%%python3 Run cell with Python 3
%%writefile filename Write cell contents to file

Data Science Workflows

Data Loading and Exploration

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

# Load data
df = pd.read_csv('data.csv')

# Quick exploration
df.head()
df.info()
df.describe()
df.shape

Data Visualization

# Matplotlib inline
%matplotlib inline

# Basic plots
plt.figure(figsize=(10, 6))
plt.plot(x, y)
plt.title('Title')
plt.xlabel('X Label')
plt.ylabel('Y Label')
plt.show()

# Seaborn plots
sns.scatterplot(data=df, x='col1', y='col2')
sns.heatmap(df.corr(), annot=True)

Machine Learning Pipeline

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# Prepare data
X = df[['feature1', 'feature2']]
y = df['target']

# Split data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)

# Train model
model = LinearRegression()
model.fit(X_train, y_train)

# Evaluate
predictions = model.predict(X_test)
mse = mean_squared_error(y_test, predictions)

Markdown Formatting

Headers

# Header 1
## Header 2
### Header 3
#### Header 4
##### Header 5
###### Header 6

Text Formatting

**Bold text**
*Italic text*
`Code text`
~~Strikethrough~~

Lists

- Unordered list item 1
- Unordered list item 2

1. Ordered list item 1
2. Ordered list item 2
[Link text](URL)
![Alt text](image_url)

Tables

|Column 1|Column 2|Column 3|
|----------|----------|----------|
|Row 1|Data|Data|
|Row 2|Data|Data|

Math (LaTeX)

Inline math: $E = mc^2$

Block math:
$\int_\\\\{-\infty\\\\}^\\\\{\infty\\\\} e^\\\\{-x^2\\\\} dx = \sqrt\\\\{\pi\\\\}$

Best Practices

Code Organization

  • Use meaningful variable names
  • Add comments and docstrings
  • Break complex operations into multiple cells
  • Use functions for repeated operations
  • Import libraries at the top

Data Analysis Workflow

  1. Data Loading: Import and initial exploration
  2. Data Cleaning: Handle missing values, outliers
  3. Exploratory Data Analysis: Visualizations and statistics
  4. Feature Engineering: Create new features
  5. Modeling: Train and evaluate models
  6. Results: Interpret and visualize results

Performance Tips

  • Use vectorized operations with NumPy/Pandas
  • Avoid loops when possible
  • Use appropriate data types
  • Clear output of large cells
  • Restart kernel periodically

Documentation

  • Use Markdown cells for explanations
  • Document assumptions and decisions
  • Include data source information
  • Add conclusions and next steps
  • Use clear section headers