首页 > 编程语言 >sweetviz,一个快速EDA的python库

sweetviz,一个快速EDA的python库

时间:2024-03-30 15:35:11浏览次数:27  
标签:EDA show python sweetviz df html report my

From: https://mp.weixin.qq.com/s/8eu8srnv_aD1BUy0kIc5ng

-----------------------------------------------------------------------------------

Sweetviz是一个开源Python库,只需两行代码即可生成美观、高效率的可视化报告,快速进行EDA(探索性数据分析),输出是一个固定格式HTML报告文件。这个库围绕快速可视化目标值和比较数据集而构建。其目标是帮助快速分析目标特征、训练与测试数据以及其他数据表征任务。

主要功能

1、快速分析报告

        仅需两行代码即可产出html分析报告,自动识别数据类型,对各字段产出分布图、相关系数矩阵图、统计指标(唯一值数量,缺失率,重复率,最小/最大/中位数/众数/均值,分位数等等)

2、目标变量分析

        可自行指定y变量,报告会增加x变量与y变量的二维分布图

3、不同数据集对比分析

        不同数据集的分布对比,如train、test分布对比 ,通过分布图、各项统计指标可以快速直观地发现变量的分布差异

安装包

pip install sweetvizpip install sweetviz -i https://pypi.tuna.tsinghua.edu.cn/simpl

github地址

    https://github.com/fbdesignpro/sweetviz

代码演示

本文是用房价预测数据集来演示sweetviz的数据eda功能

import numpy as npimport pandas as pddf=pd.read_csv('D:/文档/部分数据/最简数据挖掘/KingCountry房价预测数据/KingCountry鎴夸环棰勬祴鏁版嵁/train.csv')print(df.shape)df.head()

Image

1、快速生成数据分析报告

        仅需两行代码即可生成报告并以html文件方式输出如下,包括各字段常规数据统计指标(最大最小平均、分位数、偏度峰度等)、缺失值、分布图等等

import sweetviz as svmy_report = sv.analyze(df)my_report.show_html() # Default arguments will generate to "SWEETVIZ_REPORT.html"

Image

将鼠标放在其中一栏、右侧会有对应的详细数据分析

Image

点击报告上方ASSOCIATIONS按钮,可以展示相关系数矩阵图

Image

2、添加目标变量的分析报告

        在analyze函数中添加target_feat参数(这里写的是房价),在生成报告时目标变量栏为黑色,各变量分布图会增加y变量分布

import sweetviz as svmy_report = sv.analyze(df,target_feat='price',pairwise_analysis='on')my_report.show_html() # Default arguments will generate to "SWEETVIZ_REPORT.html"

Image

3、不同数据集对比分析

        对于train、test(或train、oot)数据集对比分析也极其便利,使用compare函数快速对各变量分布/缺失等等情况进行对比分析,分布图也可以直观看到两个数据集的分布差异

my_report = sv.compare([df.head(5000), "Training Data"], [df.tail(5000), "Test Data"], "price")my_report.show_html()

Image

4、在notebook中显示

my_report.show_notebook()

Image

 ------------------------------------------------------

调试通过的一段代码例子

import arrow
import pytest
import sweetviz as sv

class Test_New_Functions():

def test_generate_html_report(self):
df = pd.read_csv('D:/sli_downloads/1.csv')
print(df.shape)
df.head()
my_report = sv.analyze(df)
# my_report = sv.analyze(df, target_feat='left', pairwise_analysis='on')
my_report.show_html()
print("between show_html and notebook")
my_report.show_notebook()

if __name__ == '__main__':
pytest.main(['-vs', 'test_new_functions.py'])

标签:EDA,show,python,sweetviz,df,html,report,my
From: https://www.cnblogs.com/Raul2018/p/18105557

相关文章

  • Python+selenium+chromedriver实现自动化爬虫(一)安装
    Python+selenium+chromedriver实现自动化爬虫(一)安装一、概述1.python作为程序语言2.selenium作为库函数3.chromedriver.exe作为调用的可执行程序二、安装(一)Python安装(二)selenium安装安装好python后,使用pipinstallselenium安装好selenium库函数,其中pip安装换源及更新......
  • python str.split和rsplit笔记
    点击查看代码"""rsplit和split方法演示str.split(sep=None,maxsplit=-1)str.rsplit(sep=None,maxsplit=-1)"""#不指定sep或sep为None,拆分空字符串或只包含空格的字符串,返回为[](空列表)#1.空字符串str_1=''li_1_1=str_1.split()li_1_2=str_1.split(sep=None......
  • 【记录】使用python图形库自定义位置组件的技术
    目录使用的技术展示一下这个效果结语使用的技术使用自定义位置的技术可以通过place方法来实现。这里是如何使用这种技术的一般步骤:创建一个Label或Button等组件,并设置相关属性(例如文本、图像、背景色等)。使用place方法设置组件的位置,通过指定x和y参数来调整组件在窗口......
  • 【快速解决】使用python图形库,禁止用户拉伸收缩界面,使用tkinter中的window.resizable(
    目录简单介绍1.window.resizable()方法2.参数取值说明3.控制效果4.使用场景示例代码解释展示使用前后的样子 使用前使用后结语简单介绍当你在使用Python的tkinter库创建GUI(图形用户界面)应用程序时,可以使用window.resizable(False,False)技术来控制窗口是......
  • Python好学么?适合初学者学起么?
    Python好学么?适合初学者学起么?其实任何一门学科在初学的时候都是不容易的,但是就要看你想花多少心思在这一门学科上了。其实Python作为入门的编程语言是非常适合零基础的人群进行学习的,原因有以下几点:1.开发代码少,精确表达需求逻辑。33个关键词,7种基本数据类型。语法规则简......
  • 新手小白如何学习Python 选对方法很重要(附教程)
    近年来,Python应用领域增多、就业薪资上涨,这吸引了很多人关注学习。更重要的是Python语法简洁、功能强大,即使是0基础也能学会,这让很多想要从事IT开发的人看到了希望。不过新手小白如何学习Python呢?Python是一门语法简洁、功能强大、上手简单的计算机编程语言,根据TIOBE最新排......
  • python面向对象封装,私有变量
    一、私有变量“_”单下划线开头的变量:_var ,表示这些函数和变量是元素私有的或内部使用的,为非强制性(实际可修改也可引用)。"__"双下划线开头的变量:__var,表示这些函数和变量是元素私有的或内部使用的,为强制性,对象外不可修改或引用。单下划线例子classPeople():def__ini......
  • python入门教程(非常详细),从零基础入门到精通,看完这一篇就够了
    前言本文罗列了了python零基础入门到精通的详细教程,内容均以知识目录的形式展开。01.python由来与发展介绍02.项目开发流程第一章markdown编辑器01.markdown基本语法02.Typora简介与安装03.Windows上gitee+Typora设置图床04.macOS上gitee+Typora设置图床第二章计......
  • Python安装教程(新手)
    第一次接触Python,可能是爬虫或者是信息AI开发的小朋友,都说Python语言简单,那么多学一些总是有好处的,下面从一个完全不懂的Python的小白来安装Python等一系列工作的记录,并且遇到的问题也会写出,让完全不懂的小白也可上手安装,并且完成第一个Helloworld代码。[Python安装]......
  • 一文搞懂!Python中的 __call__以及其与自动调用forward()的关系
    在阅读一些深度学习项目的代码中,我们会发现这样一个问题,深度学习网络模型中常常要定义forward()方法,但是在使用该函数时却没有显式地调用函数的forward(),却好像“自动”地执行了。比如下面这个例子(不可执行的代码,仅描述常见网络模型的大致定义框架、模型实例化和获取输出......