想用一個完整的案例講解Python數據分析的整個流程和基礎知識,實際上以一個數據集為例,數據集是天池上的一個短租數據集,後臺回覆:短租數據集,即可獲得。
先來想一下數據分析的流程,第一步獲取數據,因此本節內容就是獲取數據以及對數據的基本操作。
數據導入
導入.xlsx文件
要導入一個.xlsx後綴的Excel文件,可以使用pd.read_excel(路徑)方法
# 導入.xlsx文件
df_review = pd.read_excel(r"D:\個人\data\reviews.xlsx")df_review
結果:
df_review數據包含了兩個欄位,listing_id和date
讀入數據時必不可少的參數就是路徑,不同的作業系統下文件路徑的寫法也不同,通常windows作業系統下關於路徑有兩種寫法:
反斜槓「 \ 」:右鍵點擊這個文件,選擇屬性,可以看到它所在的位置,默認是使用 \ 來表示,由於反斜槓「\」在Python中被定義為轉義符號,因此在寫的時候就要在路徑的最前方加一個轉義符 r,r"D:\個人\data\reviews.xlsx"
斜槓「 / 」:不需要加r,全部用 / 來寫:"D:/個人/data/reviews.xlsx"
兩種方式看個人習慣吧。
(想了解更多的Python數據分析,爬蟲,web,人工智慧等資料請看文章末尾,免費獲取。)
sheet_name 參數
對於.xlsx文件來說,可能會存在多個sheet表,因此也可以設置sheet_name參數指定導入的sheet表,可以傳入sheet表的 名字,也可以按照從0遞增的 順序 來指定,不指定sheet表則默認第一個sheet.
# 指定Sheet表
df_review = pd.read_excel(r"D:\個人\data\reviews.xlsx",sheet_name = 0) # 指定名字或順序df_review
導入.csv文件
導入.csv格式的文件使用pd.read_csv(路徑)的方法
# 導入csv文件
df_list = pd.read_csv(r"D:\個人\data\listings.csv")df_list
df_list數據主要包括:房東ID、房東姓名、經緯度、房間類型、價格、最小可租天數、評論數量、最後一次評論時間、每月評論佔比、可出租房屋、每年可出租時長等欄位
指定編碼格式
對於.csv文件有個重要的知識點,就是編碼格式,尤其是在導入文件的時候,需要了解文件的編碼格式,以免出現亂碼,那麼如何知道文件是什麼類型的編碼呢?用notepad++軟體打開,右下角會顯示該文件的編碼格式,如剛剛導入的listings.csv文件,是utf-8編碼,在書寫編碼時,大小寫通用,且utf-8也可以寫成utf8.
可以用encoding參數來設置編碼格式,Python默認的編碼格式是utf-8。
中文亂碼問題
對於文件路徑中因為出現中文而導致的亂碼問題,可以加入參數engine來避免。
# 避免出現亂碼
df_list = pd.read_csv(r"D:\個人\data\listings.csv",engine = "python")df_list
指定行索引
不指定行索引的話,從0開始遞增的一列作為行索引,也可以指定id一列為行索引,傳入參數index_col
# 指定行索引
df_list = pd.read_csv(r"D:\個人\data\listings.csv",index_col = "id")df_list.head()
結果:可以看到,id列成了行索引列。
指定列索引
默認第一行是列索引,也可以指定,使用header參數,header = 0,表示指定第一行為列索引。
# 指定列索引
df_list = pd.read_csv(r"D:\個人\data\listings.csv",header = 0)df_list.head()
對數據的基本操作
導入數據後,需要對數據進行一個大概的了解,比如數據集有幾行幾列,每個欄位的數據類型是什麼,有無空值等。
預覽
不必完全跑出數據,只需看下前幾行,用head方法,得到的是前5行數據
# 預覽數據
df_list = pd.read_csv(r"D:\個人\data\listings.csv")df_list.head()
head()裡也可傳入數字,如預覽前10行數據
df_list = pd.read_csv(r"D:\個人\data\listings.csv")df_list.head(10)
查看數據維度
數據集有幾行幾列,用shape
# 查看數據集維度df_list.shape
結果:可以看到df_list數據集有28452行,16列
查看數據類型
使用dtypes可以查看數據集所有欄位的數據類型
# 數據類型df_list.dtypes
也可以單獨查看某一個欄位的數據類型
# 單獨查看某個欄位的數據類型df_list["host_id"].dtypes
以上所述都是Python入門數據分析要學習的了。但是很多朋友可能還是不知道如何去學習Python數據分析學習Python數據分析學上述這些是否就夠了。完全不用擔心,小編整理了全套的Python零基礎學習資料。可以找我拿,什麼都不要,拿的方式是:看我的網名,也就是Python芸芸的全拼音,然後用這個名字,在(魏X)上找我就行,我還可以給大家一些比較基礎的python項目視頻!