Task 1 資料載入及初步觀察 筆記

2021-10-23 13:08:48 字數 4483 閱讀 4987

2、pandas兩常用資料結構(series和dataframe)

讀取:可用with open()的方法,也可用pd.read_csv()

儲存:可用pd.to_csv()

shares.to_csv(

'titanic/train_chinese.csv'

)

相對路徑:

①當要匯入的檔案在和當前檔案在同乙個目錄下時,直接匯入這個檔名。

②當要匯入的檔案或者目錄和當前檔案不同目錄時,需要跳到這個要匯入檔案的父級目錄,然後一級一級的用點號連線走過的目錄或者檔案。

逐塊讀取用chunksize引數

import pandas as pd

shares = pd.read_csv(

'titanic/train.csv'

,sep=

',',encoding=

'utf-8'

,chunksize=10)

for share in shares:

print

(share)

改表頭改索引

import pandas as pd

shares = pd.read_csv(

'titanic/train.csv'

,sep=

',',encoding=

'utf-8'

,header=

0,index_col=

['乘客id'

],names=

['乘客id'

,'是否倖存'

,'乘客等級(1/2/3等艙位)'

,'乘客姓名'

,'性別'

,'年齡'

,'堂兄弟/妹個數'

,'父母與小孩個數'

,'船票資訊'

,'票價'

,'客艙'

,'登船港口'])

shares

檢視資料資訊/觀察前幾行後幾行/是否null

import pandas as pd

shares = pd.read_csv(

'titanic/train.csv'

,sep=

',',encoding=

'utf-8'

,header=

0,index_col=

['乘客id'

],names=

['乘客id'

,'是否倖存'

,'乘客等級(1/2/3等艙位)'

,'乘客姓名'

,'性別'

,'年齡'

,'堂兄弟/妹個數'

,'父母與小孩個數'

,'船票資訊'

,'票價'

,'客艙'

,'登船港口'])

a=shares.head(6)

b=shares.isnull(

).tail(3)

c=shares.info(

)d=shares.tail(7)

a,b,c,d

series 就如同列表一樣,一系列資料,每個資料對應乙個索引值。

series 就是「豎起來」的 list

dataframe 是一種二維的資料結構,它的豎行稱之為 columns,橫行跟前面的 series 一樣,稱之為 index,可以通過 columns 和 index 來確定乙個主句的位置。

import pandas as pda=[

'sun'

,'flower'

,'river'

]pd.series(a)

2.2.1 dataframe的構建
import pandas as pd

import numpy as np

dic=

a=pd.dataframe(dic,index=

list

('123'))

print

(a)

2.2.2 dataframe的使用

1)dataframe資料的檢視,元素,列行獲取

import pandas as pd

import numpy as np

dep=pd.read_csv(

'titanic/train_chinese.csv'

,nrows=5)

a=dep[

'乘客姓名'

].values

print

('所有乘客姓名:\n'

,a,'\n'

)print

('index檢視行名:\n'

,dep.index,

'\n'

)print

('columns檢視列名:\n'

,dep.columns,

'\n'

)

2)dataframe 列行刪除
import pandas as pd

import numpy as np

dep=pd.read_csv(

'titanic/test.csv'

,nrows=5)

a=dep.drop(columns=

['cabin'

],inplace=

false

)#inplace=false時不會替換原有物件

b=dep.drop(columns=

['cabin'

],inplace=

true

)#inplace=true時是真刪除

b=dep.drop(columns=

['cabin'

],axis=1)

del dep[

'parch'

]#也可直接del刪除列

dep

注意:凡是會對原陣列作出修改並返回乙個新陣列的,往往都有乙個 inplace引數。如果手動設定為true(預設為false),那麼原陣列直接就被替換。也就是說,採用inplace=true之後,原陣列名對應的記憶體值直接改變;

而採用inplace=false之後,原陣列名對應的記憶體值並不改變,需要將新的結果賦給乙個新的陣列或者覆蓋原陣列的記憶體位置。

3)dataframe 條件篩選

import pandas as pd

import numpy as np

dep=pd.read_csv(

'titanic/train.csv'

,nrows=

100)

a=dep[dep[

'age'

]<=10]

b=dep[

(dep[

'age'

]<=10)

|(dep[

'age'

]>60)

]# \表示並集

midage=dep[

(dep[

'age'

]>10)

&(dep[

'age'

]<=60)

]# &表示 交集

midage.head(

7)

注意多個條件要加括號後在&或|。

4)dataframe 的排序

import pandas as pd

import numpy as np

dep=pd.read_csv(

'titanic/train_chinese.csv'

)a=dep.sort_values(by=

['票價'

,'年齡'

],ascending=

false

)# 先後按照 "票價"和"年齡"來降序排列

b=dep.sort_values(by=

'票價'

,ascending=

true

)# 按照 "票價"來公升序排列

c=dep.sort_index(ascending=

false

)# sort_index()對行索引 降序排列

d=dep.sort_index(axis=

1,ascending=

false

)# sort_index(axis=1)對列索引 降序排列

5)檢視基本統計資訊
import pandas as pd

Python自學task1筆記

字母表中的字母 大寫或小寫,python支援大小寫 開頭不能是數字 同一行多條語句用,用分號 分開 不能是python的關鍵字 檢視關鍵字輸入import keyword就可以 乙個模組不會重複載入 2.一旦import,模組將會匯入記憶體中,屬於絕對匯入 import只能匯入模組,不能匯入模組中的...

資料分析 Task1 資料載入及探索性分析

1.關於read csv和read table的區別 read csv和read table的區別在於separator分隔符。csv是逗號分隔值 comma separated values 僅能正確讀入以 分割的資料。read table的分隔符是tab tsv檔案與csv檔案的區別 tsv 是...

百度web ife前端學院 task1學習筆記

用兩種方法來實現乙個背景色為紅色 寬度為960px的 在瀏覽器中居中 實現思路為 一 利用設定左右margin為auto,自動居中 二 利用絕對定位和負邊距來居中 html主要 如下 class div1 實現乙個背景色為紅色 寬度為960px的盒子在瀏覽器中居中利用margindiv class ...