0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Sweetviz: 讓你三行代碼實(shí)現(xiàn)探索性數(shù)據(jù)分析

科技綠洲 ? 來(lái)源:Python實(shí)用寶典 ? 作者:Python實(shí)用寶典 ? 2023-10-31 10:28 ? 次閱讀

Sweetviz是一個(gè)開(kāi)源Python庫(kù),它只需三行代碼就可以生成漂亮的高精度可視化效果來(lái)啟動(dòng)EDA(探索性數(shù)據(jù)分析)。輸出一個(gè)HTML。

它不僅能根據(jù)性別、年齡等不同欄目縱向分析數(shù)據(jù),還能對(duì)每個(gè)欄目做眾數(shù)、最大值、最小值等橫向?qū)Ρ取?/p>

所有輸入的數(shù)值、文本信息都會(huì)被自動(dòng)檢測(cè),并進(jìn)行數(shù)據(jù)分析、可視化和對(duì)比,最后自動(dòng)幫你進(jìn)行總結(jié),是一個(gè)探索性數(shù)據(jù)分析的好幫手。

1.準(zhǔn)備

開(kāi)始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒(méi)有,可以訪問(wèn)這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。

**(可選1) **如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了Python和pip.

**(可選2) **此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點(diǎn):Python 編程的最好搭檔—VSCode 詳細(xì)指南。

請(qǐng)選擇以下任一種方式輸入命令安裝依賴

  1. Windows 環(huán)境 打開(kāi) Cmd (開(kāi)始-運(yùn)行-CMD)。
  2. MacOS 環(huán)境 打開(kāi) Terminal (command+空格輸入Terminal)。
  3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install sweetviz

2.sweetviz 基本用法

sweetviz 使用的原理是,使用一行代碼,生成一個(gè)數(shù)據(jù)報(bào)告的對(duì)象(其中,my_dataframe是pandas中的DataFrame,一種表格型數(shù)據(jù)結(jié)構(gòu)):

import pandas as pd
import sweetviz as sv

# 讀取數(shù)據(jù)
my_dataframe = pd.read_csv('../ImpartData/iris.csv')
# 分析數(shù)據(jù)
my_report = sv.analyze(my_dataframe)
# 生成報(bào)告
my_report.show_html()

執(zhí)行完成后,會(huì)在當(dāng)前文件夾下生成一個(gè)HTML的報(bào)告文件
)

雙擊這個(gè)html,你就能看到精美的分析報(bào)告了:

圖片

其中,分析數(shù)據(jù)有三種函數(shù)可以用,除了上面提到的analyze函數(shù),還有 compare 和 compare_intra 函數(shù)。

首先是analyze函數(shù):

analyze(source: Union[pd.DataFrame, Tuple[pd.DataFrame, str]],
            target_feat: str = None,
            feat_cfg: FeatureConfig = None,
            pairwise_analysis: str = 'auto')

可見(jiàn)其有以下4個(gè)參數(shù)可以配置:

  • source: 以pandas中的DataFrame數(shù)據(jù)結(jié)構(gòu)作為分析對(duì)象。
  • target_feat: 需要被標(biāo)記為目標(biāo)對(duì)象的字符串。
  • feat_cfg: 需要被跳過(guò)、或是需要被強(qiáng)制轉(zhuǎn)換為某種數(shù)據(jù)類(lèi)型的特征。
  • pairwise_analysis: 相關(guān)性分析可能需要花費(fèi)較長(zhǎng)時(shí)間。如果超過(guò)了你的忍受范圍,就需要設(shè)置這個(gè)參數(shù)為on或者off,以判斷是否需要分析數(shù)據(jù)相關(guān)性。

compare()丨兩個(gè)數(shù)據(jù)集比較

my_report = sv.compare([my_dataframe, "Training Data"], [test_df, "Test Data"], "Survived", feature_config)

要比較兩個(gè)數(shù)據(jù)集,只需使用該 ** compare() ** 函數(shù)。它的參數(shù)與 ** analyze()相同,只是插入了第二個(gè)參數(shù)來(lái)覆蓋比較數(shù)據(jù)幀。建議使用 [dataframe, "name"] 參數(shù)格式以更好地區(qū)分基礎(chǔ)數(shù)據(jù)幀和比較數(shù)據(jù)幀。(例如 ** [my_df, "Train"] ** 比my_df ** 更好)

compare_intra()丨數(shù)據(jù)集欄目比較

my_report = sv.compare_intra(my_dataframe, my_dataframe["Sex"] == "male", ["Male", "Female"], feature_config)

想要對(duì)數(shù)據(jù)集中某個(gè)欄目下的參數(shù)進(jìn)行分析,就采用這個(gè)函數(shù)進(jìn)行。
例如,如果需要比較“性別”欄目下的“男性”和“女性”,就可以采用這個(gè)函數(shù)。

3.調(diào)整報(bào)告布局

一旦你創(chuàng)建了你的報(bào)告對(duì)象,只需將它傳遞給兩個(gè)show函數(shù)中的一個(gè):

1 . show_html() :

show_html( filepath='SWEETVIZ_REPORT.html',
            open_browser=True,
            layout='widescreen',
            scale=None)

show_html(...) 將在當(dāng)前文件路徑中創(chuàng)建并保存 HTML 報(bào)告。有以下參數(shù):

  • **layout ** ( 布局 ):無(wú)論是 ' widescreen '或 'vertical'。當(dāng)鼠標(biāo)移過(guò)每個(gè)功能時(shí),寬屏布局會(huì)在屏幕右側(cè)顯示詳細(xì)信息。新的(從 2.0 開(kāi)始)垂直布局在水平方向上更加緊湊,并且可以在單擊時(shí)擴(kuò)展每個(gè)細(xì)節(jié)區(qū)域。
  • scale :使用浮點(diǎn)數(shù)(scale=0.8或 None )來(lái)縮放整個(gè)報(bào)告。
  • open_browser :?jiǎn)⒂?Web 瀏覽器的自動(dòng)打開(kāi)以顯示報(bào)告。如果不需要,可以在此處禁用它。

2.show_notebook():

show_notebook( w=None,
                h=None,
                scale=None,
                layout='widescreen',
                filepath=None)

它將嵌入一個(gè) IFRAME 元素,在notebook中顯示報(bào)告(例如 Jupyter、Google Colab 等)。

請(qǐng)注意,由于Notebook通常是一個(gè)更受限制的環(huán)境,因此使用自定義寬度/高度/比例值 ( **w ** , h ** , ** scale ) 可能是個(gè)好主意。選項(xiàng)是:

  • w (寬度):設(shè)置報(bào)告輸出窗口的寬度。可以是百分比字符串 ( w="100%") 或像素 (w=900)。
  • h (高度):設(shè)置報(bào)告輸出窗口的高度??梢允窍袼?cái)?shù) (h=700) 或?qū)⒋翱诶斓脚c所有特征 ( h="full")一樣高。
  • scale :與上面的 show_html 相同。
  • layout :與上面的 show_html 相同。
  • scale :與上面的 show_html 相同。
  • filepath :可選的輸出 HTML 報(bào)告。
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • WINDOWS
    +關(guān)注

    關(guān)注

    3

    文章

    3545

    瀏覽量

    88714
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4788

    瀏覽量

    68625
  • 數(shù)據(jù)分析
    +關(guān)注

    關(guān)注

    2

    文章

    1449

    瀏覽量

    34060
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    怎么有效學(xué)習(xí)Python數(shù)據(jù)分析?

    Python在人工智能、機(jī)器學(xué)習(xí)領(lǐng)域受到火熱追捧,很大程度上在于它擁有非常龐大的第方庫(kù),以及強(qiáng)大的通用編程性能。因此,快速掌握Python進(jìn)行數(shù)據(jù)分析,就是學(xué)習(xí)Python各種第方庫(kù)、工具包
    發(fā)表于 06-28 15:18

    什么是探索性測(cè)試ET

    探索性測(cè)試ET(exploratory)是和ST(script based test)相比較而言的.籠統(tǒng)地說(shuō),ST就是有確定的步驟和預(yù)期目標(biāo)的測(cè)試.探索性測(cè)試可以說(shuō)是一種測(cè)試思維。它沒(méi)有很多實(shí)際
    發(fā)表于 07-05 06:38

    數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》總結(jié)及代碼---chap3數(shù)據(jù)探索

    數(shù)據(jù)分析與挖掘?qū)崙?zhàn)》總結(jié)及代碼練習(xí)---chap3 數(shù)據(jù)探索
    發(fā)表于 05-25 13:25

    數(shù)據(jù)探索數(shù)據(jù)預(yù)處理

    目錄1數(shù)據(jù)探索數(shù)據(jù)預(yù)處理21.1 賽題回顧21.2 數(shù)據(jù)探索性分析與異常值處理21.3 相關(guān)性
    發(fā)表于 07-12 08:37

    三行搞定獨(dú)立按鍵

    最近自己在做單片機(jī)的東西,準(zhǔn)備參加比賽,偶然發(fā)現(xiàn)了獨(dú)立按鍵的神助攻——三行搞定獨(dú)立按鍵,看到網(wǎng)上很多描述的不清晰,自己又花時(shí)間整理了一下,話不多說(shuō)先上代碼:void Key_Read(void
    發(fā)表于 12-07 11:05

    什么是三行按鍵?有什么用

    三行按鍵從出生到現(xiàn)在已經(jīng)很多個(gè)年頭了,經(jīng)過(guò)幾代優(yōu)化,現(xiàn)在有兩個(gè)版本,今天分析一下,也在本論壇擴(kuò)充一下資源。我在本論壇搜索三行按鍵,并沒(méi)有相關(guān)的帖子。首先說(shuō)明一下什么是三行按鍵,有什么用
    發(fā)表于 03-02 06:16

    電商數(shù)據(jù)分析攻略,輕松搞定數(shù)據(jù)分析!

    商核心業(yè)務(wù)分析主題的分析模型、BI電商數(shù)據(jù)分析報(bào)表。從電商多業(yè)務(wù)系統(tǒng)數(shù)據(jù)整合、清洗、電商分析指標(biāo)計(jì)算、篩選、
    發(fā)表于 06-27 09:22

    探索性數(shù)據(jù)分析(EDA)及其應(yīng)用

    所謂探索性數(shù)據(jù)分析(EDA),是指對(duì)已有的數(shù)據(jù)(特別是調(diào)查或觀察得來(lái)的原始數(shù)據(jù))在盡量少的先驗(yàn)假定下進(jìn)行探索,通過(guò)作圖、制表、方程擬合、計(jì)算
    發(fā)表于 01-24 10:02 ?1509次閱讀
    <b class='flag-5'>探索性</b><b class='flag-5'>數(shù)據(jù)分析</b>(EDA)及其應(yīng)用

    設(shè)計(jì)多網(wǎng)絡(luò)協(xié)議的Python網(wǎng)絡(luò)編程的探索性指南

    很高興看到本書(shū)出版了,我要感謝所有為本書(shū)的出版做出貢獻(xiàn)的人。本書(shū)是Python網(wǎng)絡(luò)編程方面的探索性指南,涉及了很多網(wǎng)絡(luò)協(xié)議
    發(fā)表于 09-14 10:47 ?5次下載

    如何看懂R中的探索性數(shù)據(jù)分析(附R代碼

    本文將通過(guò)介紹一個(gè)代碼模板的四個(gè)基本步驟,來(lái)幫助您完成數(shù)據(jù)分析的初期探索。
    的頭像 發(fā)表于 11-25 10:52 ?3580次閱讀
    如何看懂R中的<b class='flag-5'>探索性</b><b class='flag-5'>數(shù)據(jù)分析</b>(附R<b class='flag-5'>代碼</b>)

    細(xì)分模型探索性數(shù)據(jù)分析和預(yù)處理

    交流學(xué)習(xí)!文章較長(zhǎng),建議收藏~ 客戶細(xì)分模型是將整體會(huì)員劃分為不同的細(xì)分群體或類(lèi)別,然后基于細(xì)分群體做管理、營(yíng)銷(xiāo)和關(guān)懷。客戶細(xì)分模型常用于整體會(huì)員的宏觀性分析以及探索性分析,通過(guò)細(xì)分建立初步認(rèn)知,為下一步的
    的頭像 發(fā)表于 11-08 16:05 ?1584次閱讀
    細(xì)分模型<b class='flag-5'>探索性</b><b class='flag-5'>數(shù)據(jù)分析</b>和預(yù)處理

    Sweetviz三行代碼實(shí)現(xiàn)探索性數(shù)據(jù)分析

    Sweetviz是一個(gè)開(kāi)源Python庫(kù),它只需三行代碼就可以生成漂亮的高精度可視化效果來(lái)啟動(dòng)EDA(探索性數(shù)據(jù)分析)。輸出一個(gè)HTML。
    的頭像 發(fā)表于 10-17 10:59 ?456次閱讀
    <b class='flag-5'>Sweetviz</b><b class='flag-5'>讓</b><b class='flag-5'>你</b><b class='flag-5'>三行</b><b class='flag-5'>代碼</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>探索性</b><b class='flag-5'>數(shù)據(jù)分析</b>

    來(lái)看看他們用代碼寫(xiě)的“三行詩(shī)”

    往期精選 原文標(biāo)題:來(lái)看看他們用代碼寫(xiě)的“三行詩(shī)” 文章出處:【微信公眾號(hào):宏景智駕】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
    的頭像 發(fā)表于 10-25 15:55 ?397次閱讀
    來(lái)看看他們用<b class='flag-5'>代碼</b>寫(xiě)的“<b class='flag-5'>三行</b>詩(shī)”

    為什么選擇eda進(jìn)行數(shù)據(jù)分析

    數(shù)據(jù)科學(xué)領(lǐng)域,數(shù)據(jù)分析是一個(gè)復(fù)雜且多步驟的過(guò)程,它涉及到數(shù)據(jù)的收集、清洗、探索、建模和解釋。在這些步驟中,探索性
    的頭像 發(fā)表于 11-13 10:41 ?240次閱讀

    eda與傳統(tǒng)數(shù)據(jù)分析的區(qū)別

    EDA(Exploratory Data Analysis,探索性數(shù)據(jù)分析)與傳統(tǒng)數(shù)據(jù)分析之間存在顯著的差異。以下是兩者的主要區(qū)別: 一、分析目的和方法論 EDA 目的 :EDA的主要
    的頭像 發(fā)表于 11-13 10:52 ?329次閱讀