Python Sweetviz輕松實現(xiàn)探索性數(shù)據(jù)分析
Sweetviz 是一個開源 Python 庫,它只需三行代碼就可以生成漂亮的高精度可視化效果來啟動EDA(探索性數(shù)據(jù)分析)。輸出一個HTML。文末提供技術(shù)交流群,喜歡點贊支持,收藏。
如上圖所示,它不僅能根據(jù)性別、年齡等不同欄目縱向分析數(shù)據(jù),還能對每個欄目做眾數(shù)、最大值、最小值等橫向?qū)Ρ取?/p>
所有輸入的數(shù)值、文本信息都會被自動檢測,并進行數(shù)據(jù)分析、可視化和對比,最后自動幫你進行總結(jié),是一個探索性數(shù)據(jù)分析的好幫手。
1.準備
請選擇以下任一種方式輸入命令安裝依賴:
1. Windows 環(huán)境 打開 Cmd (開始-運行-CMD)。
2. MacOS 環(huán)境 打開 Terminal (command+空格輸入Terminal)。
3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install sweetviz
2.sweetviz 基本用法
sweetviz 使用的原理是,使用一行代碼,生成一個數(shù)據(jù)報告的對象(其中,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) # 生成報告 my_report.show_html()
執(zhí)行完成后,會在當前文件夾下生成一個HTML的報告文件
雙擊這個html,你就能看到精美的分析報告了:
其中,分析數(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')
可見其有以下4個參數(shù)可以配置:
- source: 以pandas中的DataFrame數(shù)據(jù)結(jié)構(gòu)作為分析對象。
- target_feat: 需要被標記為目標對象的字符串。
- feat_cfg: 需要被跳過、或是需要被強制轉(zhuǎn)換為某種數(shù)據(jù)類型的特征。
- pairwise_analysis: 相關(guān)性分析可能需要花費較長時間。如果超過了你的忍受范圍,就需要設(shè)置這個參數(shù)為on或者off,以判斷是否需要分析數(shù)據(jù)相關(guān)性。
compare()丨兩個數(shù)據(jù)集比較
my_report = sv.compare([my_dataframe, "Training Data"], [test_df, "Test Data"], "Survived", feature_config)
要比較兩個數(shù)據(jù)集,只需使用該 compare()
函數(shù)。它的參數(shù)與 analyze()
相同,只是插入了第二個參數(shù)來覆蓋比較數(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)
想要對數(shù)據(jù)集中某個欄目下的參數(shù)進行分析,就采用這個函數(shù)進行。
例如,如果需要比較“性別”欄目下的“男性”和“女性”,就可以采用這個函數(shù)。
3.調(diào)整報告布局
一旦你創(chuàng)建了你的報告對象,只需將它傳遞給兩個show函數(shù)中的一個:
1. show_html():
show_html( filepath='SWEETVIZ_REPORT.html', open_browser=True, layout='widescreen', scale=None)
**show_html(…)**將在當前文件路徑中創(chuàng)建并保存 HTML 報告。有以下參數(shù):
- layout (布局):無論是 'widescreen'或 ‘vertical'。當鼠標移過每個功能時,寬屏布局會在屏幕右側(cè)顯示詳細信息。新的(從 2.0 開始)垂直布局在水平方向上更加緊湊,并且可以在單擊時擴展每個細節(jié)區(qū)域。
- scale:使用浮點數(shù)(scale=0.8或 None )來縮放整個報告。
- open_browser:啟用 Web 瀏覽器的自動打開以顯示報告。如果不需要,可以在此處禁用它。
2.show_notebook():
show_notebook( w=None, h=None, scale=None, layout='widescreen', filepath=None)
它將嵌入一個 IFRAME 元素,在notebook中顯示報告(例如 Jupyter、Google Colab 等)。
請注意,由于Notebook通常是一個更受限制的環(huán)境,因此使用自定義寬度/高度/比例值 (w
, h
, scale
) 可能是個好主意。選項是:
- w(寬度):設(shè)置報告輸出窗口的寬度??梢允前俜直茸址?( w=“100%”) 或像素 (w=900)。
- h(高度):設(shè)置報告輸出窗口的高度。可以是像素數(shù) (h=700) 或?qū)⒋翱诶斓脚c所有特征 ( h=“full”)一樣高。
- scale:與上面的 show_html 相同。
- layout:與上面的 show_html 相同。
- scale:與上面的 show_html 相同。
- filepath:可選的輸出 HTML 報告。
我們的文章到此就結(jié)束啦,如果你喜歡今天文章,點贊、支持、關(guān)注。
技術(shù)交流
歡迎轉(zhuǎn)載、收藏、有所收獲點贊支持一下!
到此這篇關(guān)于Python Sweetviz輕松實現(xiàn)探索性數(shù)據(jù)分析的文章就介紹到這了,更多相關(guān)Python Sweetviz內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python一行代碼就能實現(xiàn)數(shù)據(jù)分析的pandas-profiling庫
- Python數(shù)據(jù)分析庫PyGWalker的強大交互式功能界面探索
- 精選39道Python數(shù)據(jù)分析面試題提早備戰(zhàn)金三銀四
- Python數(shù)據(jù)分析從入門到進階之分類算法全面教程
- 科學計算與數(shù)據(jù)分析利器Python數(shù)據(jù)分析庫Scipy使用詳解
- Python數(shù)據(jù)分析numpy文本數(shù)據(jù)讀取索引切片實例詳解
- Python數(shù)據(jù)分析numpy的Nan和Inf使用注意點詳解
- Python數(shù)據(jù)分析pandas之布爾索引使用詳解
- python?Sweetviz探索性數(shù)據(jù)可視化分析庫使用特征詳解
相關(guān)文章
Python如何生成exe文件?用Pycharm一步步帶你學(超詳細、超貼心)
這篇文章主要給大家介紹了關(guān)于Python如何生成exe文件的相關(guān)資料,本文利用Pycharm一步步帶你學,文中通過圖文以及實例代碼介紹的超詳細、超貼心,需要的朋友可以參考下2022-02-02pytorch: tensor類型的構(gòu)建與相互轉(zhuǎn)換實例
今天小編就為大家分享一篇pytorch: tensor類型的構(gòu)建與相互轉(zhuǎn)換實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07Python for循環(huán)與getitem的關(guān)系詳解
這篇文章主要介紹了Python for循環(huán)與getitem的關(guān)系詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-01-01python通過apply使用元祖和列表調(diào)用函數(shù)實例
這篇文章主要介紹了python通過apply使用元祖和列表調(diào)用函數(shù),實例分析了python中apply方法的使用技巧,需要的朋友可以參考下2015-05-05Python利用contextvars實現(xiàn)管理上下文變量
Python?在?3.7?的時候引入了一個模塊:contextvars,從名字上很容易看出它指的是上下文變量。所以本文就來和大家詳細講講如何使用contextvars實現(xiàn)管理上下文變量,需要的可以參考一下2022-07-07