A utility module for DA and ML and DL tasks
Project description
王老师 WangLaoShi
项目介绍
总结一些在学习过程中的知识点,以及一些学习资料。
项目结构
WangLaoShi
├── README.md
├── wanglaoshi
│ ├── version.py
项目版本
- 0.0.1 初始化版本,项目开始
- 0.0.2 增加列表输出
- 0.0.3 增加字典输出,使用 Rich 输出
- 0.0.4 实现 JupyterNotebook 环境创建
- 0.0.5 增加几个有用的库
- 0.0.6 修改获取 version 的方法
- 0.0.7 增加获取当前安装包的版本号,增加获取当前每一个安装包最新版本的方法
- 0.0.8 增加对数据文件的基本分析的部分
- 0.0.9 增加 jinja2 的模板输出的 Analyzer
- 0.10.0 增加 no_waring,字体获取,安装字体
- 0.10.6 增加 Analyzer 的使用部分(需要 statsmodels)
安装方式
1. 源码安装方式
- 检出项目
- 进入项目目录
- 执行
python setup.py install - 安装完成
2. pip安装方式
pip install wanglaoshi
使用方法
1. 创建新的环境
from wanglaoshi import JupyterEnv as JE
JE.jupyter_kernel_list()
JE.install_kernel()
# 按照提示输入环境名称
2. 获取当前环境常用库版本
from wanglaoshi import VERSIONS as V
V.check_all_versions()
3. 获取当前环境所有库
from wanglaoshi import VERSIONS as V
V.check_all_installed()
4. 获取当前环境所有库最新版本
from wanglaoshi import VERSIONS as V
V.check_all_installed_with_latest()
5. 得到一个数据文件的基本的分析页面
from wanglaoshi import Analyzer as A
A.analyze_data('data.csv') # 生成HTML格式的分析报告
分析报告包含以下内容:
- 基础统计分析:描述性统计、缺失值分析等
- 异常值分析:
- Z-score方法:识别极端异常值(|Z-score| > 3)和中度异常值(2 < |Z-score| ≤ 3)
- IQR方法:基于四分位距的异常值检测,提供数据分布特征和异常值范围
- 详细的异常值解释和处理建议
- 数据质量分析:重复值、缺失值等
- 高级统计分析:相关性分析、主成分分析等
如果不需要 HTML 页面也可以使用下面的方法
from wanglaoshi import Analyzer_Plain as A
A.analyze_data('data.csv')
6. 取消错误输出
from wanglaoshi import JupyterEnv as JE
JE.no_warning()
7. Wget 功能
基本功能:
- 支持从 URL 下载文件
- 自动从 URL 提取文件名
- 支持指定输出目录和自定义文件名
- 显示下载进度条
使用方法:
from WebGetter import Wget
# 创建下载器实例
downloader = Wget(
url='https://example.com/file.zip',
output_dir='./downloads',
filename='custom_name.zip'
)
# 开始下载
downloader.download()
8. 字体安装
# 这里用的是 SimHei 字体,可以根据自己的需要更改
from wanglaoshi import JupyterFont as JF
JF.matplotlib_font_init()
9. 批量数据分析(适合比赛)
from wanglaoshi import Analyzer as A
import seaborn as sns
import pandas as pd
# 获取示例数据集
# 方法1:使用seaborn自带的数据集
tips = sns.load_dataset('tips') # 餐厅小费数据集
tips.to_csv('tips.csv', index=False)
# 方法2:使用sklearn自带的数据集
from sklearn.datasets import load_iris
iris = load_iris()
iris_df = pd.DataFrame(iris.data, columns=iris.feature_names)
iris_df['target'] = iris.target
iris_df.to_csv('iris.csv', index=False)
# 创建测试文件夹
import os
os.makedirs('test_data', exist_ok=True)
# 将数据集移动到测试文件夹
import shutil
shutil.move('tips.csv', 'test_data/tips.csv')
shutil.move('iris.csv', 'test_data/iris.csv')
# 分析数据集
A.analyze_multiple_files('test_data', output_dir='reports')
批量分析功能特点:
- 支持多种数据格式(CSV、Excel、JSON)
- 自动生成每个数据文件的详细分析报告
- 异常值分析包含:
- Z-score方法:识别极端和中度异常值
- IQR方法:提供数据分布特征和异常值范围
- 综合建议:基于两种方法的结果给出处理建议
- 报告包含可视化图表和详细的解释说明
分析完成后,您可以在 reports 目录下找到生成的分析报告:
tips_report.html:餐厅小费数据集的分析报告iris_report.html:鸢尾花数据集的分析报告
建议的版本对照关系
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wanglaoshi-0.10.6.tar.gz
(21.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wanglaoshi-0.10.6.tar.gz.
File metadata
- Download URL: wanglaoshi-0.10.6.tar.gz
- Upload date:
- Size: 21.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0fa726dea27056ddeccb1730610a1c9ea0fa7153d4685a31e4b5288fe0b7c5d9
|
|
| MD5 |
be06ff264efd1876f91f66ed6878bf15
|
|
| BLAKE2b-256 |
019a38884d922c1e7c66ef22afb52e0665a15afb1e7b01e702c11d08428aed13
|
File details
Details for the file wanglaoshi-0.10.6-py3-none-any.whl.
File metadata
- Download URL: wanglaoshi-0.10.6-py3-none-any.whl
- Upload date:
- Size: 21.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aae847775425557db1fe23dda4965ddc8e5b7d79f101ad01e0f202c98029f0d9
|
|
| MD5 |
d31102d14d60375a74a8667ad3340b87
|
|
| BLAKE2b-256 |
d1e3d18c765581f2bfaea3c3bbbf13808215b0179e38224f3064b32e841e4097
|