天天看點

azw3 python資料分析 活用pandas庫_python資料分析 pandas庫的學習(3)

importpandas as pdimportnumpy as np'''這裡主要講pandas如何導入資料并對資料做最基本的操作和處理

pandas導入資料的方法主要有兩種,一個是read_csv,另一個是read_excel'''df= pd.read_csv(r"C:\Users\12046\Desktop\housing(1).csv")'''read_csv函數作為最基本的讀取函數一般是用的最多的,其表達式為

read_csv(r'routine',index_col可用來選取适合的列作為該清單中的主鍵,其實也不是特别必要)

當我們導出檔案後第一步要觀察該資料的結構'''

'''print(df.head(5)) # 檢視前n行的資料,注意是行不是列

print(df.tail(5)) # 檢視後n行的資料

print(df.shape) # 檢視有多少行列

print(df.info)''' #一個函數涵蓋上面三個函數的功能

#下面嘗試利用dataframe對這組資料做切割,将各行的資料都提取出來

RM=df['RM']

Lstat=df['LSTAT']

Ptratio=df['PTRATIO']

medv=df['MEDV']#這裡可以引入布爾條件下的dataframe的篩選了

'''print(df[df.RM>7]) #單值篩選

print(df[(df.RM>7)|(df.MEDV>600000)]) #|表示且的多值篩選

print(df[(df.RM>7)&(df.MEDV>600000)]) # &表示或的多值篩選

#先對df做列篩選,選出要用的列,然後再進行條件篩選

print(df[['RM','MEDV']][(df.RM>7)|(df.MEDV>600000)])'''

#這裡的篩選操作對後續的分析很重要,是以要熟練掌握dataframe中所有格式

'''print(df.describe()) #describe函數對df進行描述性統計分析

print(df.skew(),df.kurt()) #還有偏度和峰度這兩個變量要進行分析

#以及對numpy中常用的函數都可以在dataframe上使用'''

#這個函數可以直接給出所有常見的統計量,但是要注意資料類型的影響

'''def stats(x):

return pd.Series([x.count(),x.min(),x.idxmin(),

x.quantile(.25),x.median(),

x.quantile(.75),x.mean(),x.max(),x.idxmax(),x.mad(),x.var(),x.std(),x.skew(),x.kurt()],

index = ['Count','Min','Whicn_Min',

'Q1','Median','Q3','Mean',

'Max','Which_Max','Mad',

'Var','Std','Skew','Kurt'])

print(stats(df[['RM','LSTAT','PTRATIO','MEDV']]))'''