掌握這5種方法,讓你使用python進行數據分析可以事半功倍

2020-08-29 技頑

本篇針對Python語言的數據分析庫(pandas),分享了5個可以提升數據處理效率的解決方案,總結來說就是,不用不知道,一用真高效!符合真香定律···

針對不同情況下的nan值定位

涉及到數據的清洗,那麼nan值必然是一個需要處理的問題,不論是直接捨棄還是填充值,總是需要先定位nan值在哪裡,再根據數據特點去做相應的操作。這裡我分享下我個人對定位nan值問題一些好的實踐


詳看以下代碼,主要包含三種情況的定位

import pandas as pdimport numpy as npdf = pd.DataFrame({&34;: [i for i in list(&34;)], &34;: [i for i in range(10, 15)], &34;: [&34;, np.nan, &34;, np.nan, &34;]}) 結果展示 :顯示只有female列有nan值存在name Falseage Falsefemale Truedtype: bool

第二個方法:df[&34;].isnull()

結果如下,返回的是每個值是否為nan值的布爾值

第一個方法已經確定了哪些列有nan值,那麼接下來你可能想知道的是這些欄位中哪些值是nan值,那麼這個方法就可以幫你定位

0 False1 True2 False3 True4 FalseName: female, dtype: bool

第三個方法:df[df.isnull().values==True]

結果如下:返回的是數據表中含有nan值的所有行

還有個寫法很推薦, df[df.列名.isnull().values==True]因為有些列的nan值沒有什麼實際作用,也不用處理,那麼有些列則必須不能有nan值,那麼就可以通過這個命令專門針對某一列進行nan值的定位

這個命令是我用的最多的,因為在大數據文件中,如果nan值非常少,那麼這種方法的定位非常有有效率且直接

構建案例數據import pandas as pddf = pd.DataFrame({&34;: [&34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;], &34;: [&34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;]}) 我們發現需求簡單來說 就是將小明和小紅的愛好匯總到一起 name 愛好0 小明 籃球,足球,桌球,唱歌,跳舞,跳繩1 小紅 喝酒,抽菸,燙頭,蹦迪,瑜伽

想要實現這個效果,代碼如下

34;name&34;愛好&34;,&34;isin&34;省&34;遼寧&34;遼寧&34;遼寧&34;四川&34;四川&34;四川&34;四川&34;山東&34;山東&34;市&34;瀋陽&34;大連&34;盤錦&34;成都&34;資陽&34;綿陽&34;樂山&34;青島&34;菏澤& 數據呈現如下 省 市0 遼寧 瀋陽1 遼寧 大連2 遼寧 盤錦3 四川 成都4 四川 資陽5 四川 綿陽6 四川 樂山7 山東 青島8 山東 菏澤

需求描述為:要呈現除了瀋陽之外的數據

34;瀋陽& 結果呈現如下 省 市1 遼寧 大連2 遼寧 盤錦3 四川 成都4 四川 資陽5 四川 綿陽6 四川 樂山7 山東 青島8 山東 菏澤

將每個人的技能拆分成序列展示

有時候我們會面對這種需求:一個欄位中保存的是帶有固定分隔符的字符串(比如&34;),需要將這一行的這個欄位拆分,拆分為一個數據集,這個數據集每一行都顯示這個原有欄位的一個值


這麼說有點繞口,看圖

34;name&34;小明&34;小紅&34;小陳&34;小白&34;小王&34;技能&34;籃球,排球,羽毛球&34;桌球,籃球,排球&34;網球,唱歌,跳舞&34;b-box,籃球,足球&34;網球,桌球,羽毛球& 構造數據如下所示 name 技能0 小明 籃球,排球,羽毛球1 小紅 桌球,籃球,排球2 小陳 網球,唱歌,跳舞 3 小白 b-box,籃球,足球4 小王 網球,桌球,羽毛球

需求為:需要把技能相同的人匯總一起,那麼首先第一步肯定是要將每個人技能拆開,再去做聚合操作,那麼拆開的結果應該是如下圖所示的

用到了拼接和轉置的操作df=df.drop(&39;, axis=1).join(df[&39;].str.split(&39;, expand=True).stack().reset_index(level=1, drop=True).rename(&39;))

只關注各省份TOP2的記錄

需求描述:我想將數據根據一定的要求分類並排序,然後取每個分組後排序的前兩條記錄

舉例來說就是,如下

import numpy as npimport pandas as pddf = pd.DataFrame({&34;: [&34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;, &34;], &34;: [&34;, &34;, &34;, &34;, &34;, &34;,&34;, &34;, &34;]})34;籃球場個數& 數據如下所示 省 市 籃球場個數0 遼寧 瀋陽 46977371 遼寧 大連 35509602 遼寧 盤錦 31546603 四川 成都 11748384 四川 資陽 44091975 四川 綿陽 21882126 四川 樂山 16097227 山東 青島 37247358 山東 菏澤 2102416

需求為:展示每個省籃球場個數最多的前兩個市,展示如下

先排名,根據省市和籃球場個數,要加上inplace=True, 不然沒有更改原表的順序df.sort_values(by=[&34;, &34;], ascending=False, inplace=True)print(df)34;省"]).head(2)

相關焦點

  • 掌握這5種方法,讓你使用python進行數據分析可以事半功倍
    本篇針對Python語言的數據分析庫(pandas),分享了5個可以提升數據處理效率的解決方案,總結來說就是,不用不知道,一用真高效!這裡我分享下我個人對定位nan值問題一些好的實踐詳看以下代碼,主要包含三種情況的定位第一個方法:df.isnull().any()通過結果可以看得出來,這個語句返回的是所有列是否含有nan值的布爾值對於一個大數據文件來講,你想一瞬間知道哪些欄位有nan值需要處理,那麼這個命令就可以讓你瞬間看到結果,再針對結果做處理即可第二個方法:
  • 電商數據分析並不難,掌握這幾種方法就可以了
    實際上,在一家年銷售額幾百萬或者上千萬的電商公司,你只要掌握一些基礎的數據分析方法,再配合Excel表格,就足夠你完成各種數據化運營工作了。所以我建議,先從最基礎也是最核心的數據分析方法學起。隨著你學習的深入,以及崗位的變化,再去學習相關的爬蟲或者語言類的相關知識,會讓你更加容易理解。
  • 小白零基礎如何使用python進行數據分析工作
    小白零基礎如何使用python進行數據分析工作?這是心如韓給的人比較頭疼的問題,有大約一百萬個網站可以幫助你從頭開始學習Python。   python入門非常困難,甚至很難取得進展。你可能曾經嘗試過學習編碼並放棄了,以為那不是你擅長的事情。
  • 數據分析實用的4種分析方法
    在日常工作中數據分析主要是為了支持業務,而業務很大程度上是圍繞用戶進行的,因而可以從用戶場景出發來具體選擇數據工具。用戶場景主要分成三大類: 第一類是洞察,要去觀察和找到我們用戶當中的一些特點規律。
  • Python進行數據分析,5個學習路徑拆解及資源推薦
    也就是說,你想通過這門技術來解決哪些問題。你就可以知道要達成這樣的目標,它的知識體系是怎麼樣的。書籍推薦:《利用python進行數據分析》,豆瓣評分8.6本書詳細介紹利用Python進行操作、處理、清洗和規整數據等方面的具體細節和基本要點。
  • 零基礎入門數據分析,一個月學會Python
    ,主要是介紹我們為什麼要用python進行數據分析,以及python需要掌握的一些基礎知識,我們能夠用python做什麼?數據類型:python的數據類型比較簡單,基本上就可以分為兩大類——數值和字符串。數據結構:python的數據結構可以分為四種,列表、元組、字典、集合。
  • 收藏|10個可以快速用Python進行數據分析的小技巧
    有時候使用一點點黑客技術,既可以節省時間,還可能挽救「生命」。一個小小的快捷方式或附加組件有時真是天賜之物,並且可以成為真正的生產力助推器。所以,這裡有一些小提示和小技巧,有些可能是新的,但我相信在下一個數據分析項目中會讓你非常方便。
  • 5種方法,加密你的Python代碼
    想要做到這一點,並不難。Python標準庫就提供了一個名叫compileall的庫,使用它就可以做到。執行如下命令,即可將<src>目錄下的所有.py文件編譯成.pyc文件:python -m compileall <src> 然後刪除 <src> 目錄下所有 .py 文件就可以了。
  • 在Python中進行探索式數據分析(EDA)
    介紹探索性數據分析(Exploratory Data Analysis ,EDA)是對數據進行分析並得出規律的一種數據分析方法。它是一個故事,一個數據試圖講述的故事。EDA是一種利用各種工具和圖形技術(如柱狀圖、直方圖等)分析數據的方法。
  • 還在用老方法分析財務數據?這5種財務分析方法,你一定得看看
    作為會計,除了能熟練掌握各種財務做帳報稅流程外,如果想在會計行業越走越遠,或者能走到領導崗位,那就要會各種財務數據或者財務報表的分析。如果你還在用老方法分析財務數據和財務報表,那可能就要落後了。今天給大家整理了一份最新的財務分析方法匯總,大家可以一起參考學習一下。
  • 9種常用數據分析方法
    數據分析是從數據中提取有價值信息的過程,過程中需要對數據進行各種處理和歸類,只有掌握了正確的數據分類方法和數據處理模式,才能起到事半功倍的效果,以下是數據分析員必備的9種數據分析思維模式:1.回歸回歸是一種運用廣泛的統計分析方法,可以通過規定因變量和自變量來確定變量之間的因果關係,建立回歸模型,並根據實測數據來求解模型的各參數,然後評價回歸模型是否能夠很好的擬合實測數據,如果能夠很好的擬合,則可以根據自變量作進一步預測。3.
  • 掌握這兩個方法:助你學會Python 中所有函數(方法)的功能與用法
    Python是一門非常方便的程式語言,這也是其成為當前熱門行業(如人工智慧,數據分析)首選工具的主要原因之一。python的便利之處不僅僅在於各種多功能強大的封裝庫,更多的是其大量人性化的函數調用,但這一點也是學習python的難點之一。
  • 快速入門python數據分析,老程式設計師說了這兩種方法,附教程
    如何快速入門python數據分析?這個問題問得好,但是python畢竟是一門程式語言,要說通過一篇文章,就能教會你快速入門python數據分析,我自己都不行。比如:《利用python進行數據分析》這本書的內容非常好,對於新手來講
  • 學習計劃|一個月學會Python,零基礎入門數據分析
    一、初識python基礎在這一章裡,主要是介紹我們為什麼要用python進行數據分析,以及python需要掌握的一些基礎知識,我們能夠用python字符串:也就是文本數據,在python中一般用引號來定義,可以通過python進行拼接和重疊,實現文本數據的處理;索引和切片:索引是有序列每個子元素在序列的位置,切片就是對序列的部分截取。數據結構:python的數據結構可以分為四種,列表、元組、字典、集合。
  • 未明學院:對照Excel使用Python進行數據分析,更快掌握
    Excel和Python,作為數據分析的主流工具,在從效率提升到數據商業化的整個過程中,都起到了重要作用。不管是在Excel中通過滑鼠點選實現,亦或是利用Python通過代碼實現,數據分析中的很多基礎功能都是相通的。在數據量級大躍進的今天,對於從業者來說,熟練掌握用於數據處理的程式語言非常必要,通曉兩者可以更增競爭力。
  • 使用python進行數據分析
    使用python進行數據清洗及可視化今天第一次使用pandas和matplotlib處理數據,以下紀錄一些使用心得:1、首先第一步就是要導入一些使用包:import numpy as npimport pandas as pdimport matplotlib.pyplot as plt
  • SEM優化常用的幾種數據分析方法
    SEM優化工作少不了做分析報表,而數據分析不僅僅是為了發現問題,為解決問題提供參考數據,也是對推廣效果的直觀展現方式,善用工具,能事半功倍地掌握工作,並及時作出調整。簡而言之,數據分析就是為了幫助我們對工作做到心中有數。
  • Python數據可視化:5種繪製柱狀圖表的方法(附源碼)
    今天我們就用五種方法來繪製柱狀圖,分別是matplotlib,seaborn,plotnine,pyecharts,pandas。首先我們先導入數據。數據分析必定接觸到的一個庫,是用來繪圖的基礎的庫,也是其他各個可視化庫的基本庫之一。
  • 零基礎小白如何快速入門Python數據分析
    網易的兩大遊戲客戶端引擎,NeoX和Messiah,都是使用Python作為腳本語言的。你最喜歡的吃雞遊戲可能也是「Python」學的呢!人工智慧、數據分析、網絡爬蟲、自動化、網站開發等python都能搞定。
  • excel VS python 誰更適合數據分析?
    我常常會聽到這樣的問題,「金融分析中,為什麼我要學習像python這樣的程式語言,甚至使用它超過excel呢?」在金融領域,python成為炙手可熱的分析工具,這幾乎已經成為共識。面對excel和python,誰更適合數據分析,也確實一直被大家討論。excel VS pythonexcel不用多做介紹,辦公必備的表格工具。