動手學習資料分析第1章

人间烟火天上星發表於2024-03-13

動手學習資料分析第1章

本文是Datawhale的組隊學習動手學習資料分析的學習筆記,課件內容來源於Datawhale的團隊;程式碼部分參考了b站up主橘子冰的一隅角落的系列影片

第一節 資料載入及初步觀察

1.1 載入資料

1.匯入numpy和pandas

import numpy as np
import pandas as pd

2.載入資料

pd.read_csv("<路徑>")

read_csv()和read_table()之間的區別

函式read_csv()和read_table()的作用相同,只是預設分隔符不同。

在read_csv()中,定界符為,,在read_table()中,定界符為\ t

3.每1000行為一個資料模組,逐塊讀取

pd.read_csv("<路徑>",chunksize=1000)

4.將表頭改成中文,索引改為乘客ID

pd.columns = []
pd.rename = ['原表頭':'新表頭']

1.2 初步觀察

1.檢視資料的基本資訊

df.info()
df.describe()

2.觀察表格前10行的資料和後15行的資料

df.head(n)  #前n行
df.tai(n)   #後n行

3.判斷資料是否為空,為空的地方返回True,其餘地方返回False

df.isnull()

1.3 儲存資料

將你載入並做出改變的資料,在工作目錄下儲存為一個新檔案train_chinese.csv

df.to_csv("train_chinese.csv")

第二節 pandas基礎

1.4 知道你的資料叫什麼

1.pandas中有兩個資料型別DateFrame和Series,透過查詢簡單瞭解他們。

Series是一維陣列,DataFrame是二維陣列。

2.檢視DataFrame資料的每列的名稱

df.columns

3.檢視"Cabin"這列的所有值

df.Cabin #屬性法
df['Cabin'] #字典法

4.載入檔案"載入檔案"test_1.csv",然後對比"train.csv",看看有哪些多出的列,然後將多出的列刪除,然後對比"train.csv",看看有哪些多出的列,然後將多出的列刪除

df1 = pd.read_csv("test_1.csv)
del df1[''] 
df1.pop("")
df1.drop("",axis = 1/0) #1代表列0代表行                 

5.將['PassengerId','Name','Age','Ticket']這幾個列元素隱藏,只觀察其他幾個列元素

使用drop方式刪除,若加上引數inplace = True 則表示徹底刪除

1.5 篩選的邏輯

1.我們以"Age"為篩選條件,顯示年齡在10歲以下的乘客資訊。

df1[df1['Age'] < 10]
  1. 以"Age"為條件,將年齡在10歲以上和50歲以下的乘客資訊顯示出來,並將這個資料命名為midage
midage = df1[(df1['Age'] > 10) & (df1['Age'] < 50)]

3.將midage的資料中第100行的"Pclass"和"Sex"的資料顯示出來

midage = midage.reset_index(drop=True)
midage.to_csv('midage.csv',index=False)
midage = pd.read_csv('midage.csv')
midage1 = midage.loc[[100], ['Pclass','Pclass']]

4.使用iloc方法將midage的資料中第100,105,108行的"Pclass","Name"和"Sex"的資料顯示出來

midage1.iloc[[100,105,108],[3,4,5]]

第三節:探索性資料分析

1.6 瞭解你的資料嗎?

sample = pd.DataFrame(np.random.randn(3,3),
                      index = list('213')
                      columns = list('bca'))

1.讓行索引升序排序

sample.sort_index()

2.讓列索引升序排序

sample.sort_index(axis = 1)

3.讓列索引降序排序

sample.sort_index(axis = 1,ascending = False)

4.讓任選兩列資料同時降序排序

sample.sort_index(['a','c'],ascending = False)

相關文章