首页 代码 正文

Python数据科学平台JupyterLab学习笔记

2024.1.22 代码 299

JupyterLab是Jupyter Notebook的升级版。

安装:pip install jupyterlab,启动:jupyter lab

JupyterLab官网:https://jupyter.org/

默认文件保存路径

查看JupyterLab默认文件保存路径:

import os
os.path.abspath('.')

快捷键

编辑模式快捷键

编辑模式即cell编辑模式,可使用以下快捷键:

快捷键 作用 说明
Esc 切换到命令模式
Ctrl+Enter 运行本单元
Shift+Enter 运行本单元,选中下一单元 新单元默认为命令模式
Alt+Enter 运行本单元,在下面插入一单元 新单元默认为编辑模式
Ctrl+Up 跳到单元开头,或者Ctrl+Home
Ctrl+Down 跳到单元末尾,或者Ctrl+End
Ctrl+Left 跳到左边一个字首
Ctrl+Right 跳到右边一个字首

命令模式快捷键

退出cell编辑模式,即可使用命令模式快捷键:

快捷键 作用 说明
Enter 进入编辑模式
Y 单元转入 code 状态
M 单元转入 markdown 状态
R 单元转入 raw 状态
1 设定 1 级标题 仅在 markdown 状态下时建议使用,如果单元处于其他状态,则会强制切换到 markdown 状态

代码格式化

JupyterLab本身并不支持代码格式化,需要安装jupyterlab_code_formatter插件:pip install jupyterlab_code_formatter

插件jupyterlab_code_formatter支持Python常见的代码格式化包,如autopep8、black、isort等,
插件安装完成后,需要安装Python代码格式化包。

插件默认支持isort和black包,安装这两个包后续会避免很多问题,安装命令:pip install black isort

重启JupyterLab,点击JupyterLab左侧栏插件图标,在INSTALLED列表下,可看到jupyterlab_code_formatter已安装。

格式化方式

最简单的方式是通过鼠标右键菜单来格式化代码:右键 -> Format cell。

也可通过工具栏按钮来格式化代码,在笔记本上方工具栏中有一个格式化按钮。单击按钮会对单元格进行代码格式化。

另外,可以设置保存笔记本自动格式化代码:Settings -> Settings Editor -> Jupyterlab Code Formatter -> Auto format config。

使用

import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = 'SimHei' # 设置中文显示
## 行命令,将图表直接嵌入到Notebook之中
%matplotlib inline

# 1.加载数据
data1=pd.read_excel('1.xlsx', sheet_name='sheet1')
data2=pd.read_excel('2.xlsx', sheet_name='sheet2')

data=pd.concat([data1,data2], axis=0) # 按行拼接
data.head(5)
data.info()

# 2.数据清洗
# 2.1数据预处理(重复值、缺失值、格式调整)

data.drop_duplicates(keep='first', inplace=True) # 删除重复记录
data.dropna(axis=1, inplace=True) # 按列删除NA列并修改源数据

data.dropna(axis=0, how='any', inplace=True) # 删除有NA的整行数据

# 格式调整
def data_deal(number):
    new_number += 1
    return new_number
data['新列'] = data['列'].map(data_deal)

## 2.2异常值处理
data.describe()
data = data[data['金额'] != 0] # 数据量小可以采用直接删除

data.drop(columns=['列'], inplace=True, axis=1) # 删除列
data.reset_index(drop=True, inplace=True) # 更新索引

# 3.数据规整
## 时间提取
data['time'] = pd.to_datetime(data['字符串时间'])
data['hour'] = data['time'].dt.hour
data['minute'] = data['time'].dt.minute
data['month'] = data['time'].dt.month

# 4.数据分析
round(data['列'].mean(), 2) # 求平均
dishes_count = data['列'].value_counts()[:10] # 频数统计,取前10

# 分组求和
group_sum = data[['列1', '列2', '列3']].groupby(by='列1').sum()
sort_counts = group_sum.sort_values(by='列', ascending=False) # 降序排序

data['列'] = data['列'].str.strip()
data.groupby(['月份', '列']).size().unstack()

# 5.数据可视化
dishes_count.plot(kind='line', color=['r']) # 折线图
dishes_count.plot(kind='bar', fontsize=16, color=['r','b', 'g']) # 直方图
plt.title('标题')
plt.xlabel('x轴', fontsize=16)
plt.ylabel('y轴', fontsize=16)
for x,y in enumerate(dishes_count):
    plt.text(x, y+2, y, ha='center', fontsize=12) # 水平居中显示
  1. 转载请保留原文链接:Python数据科学平台JupyterLab学习笔记 https://aboss.top/post/163/
  2. 本站所有资源文章出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。
  3. 本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户擦亮眼睛自行鉴别,做一个有主见和判断力的用户。
  4. 本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。
  5. 联系方式(#替换成@):mail#aboss.top

评论

热门搜索