資料探索性分析案例實現diamonds.csv
《資料探索性分析案例實現(EDA) 》
一、資料描述
1.1資料集描述
diamonds資料框包含53940行,有carat、cut、color、clarity、depth、table、price、x、y、z共10列,對應每個鑽石的一些引數值。
carat:克拉,鑽石的重量
cut:代表了鑽石的切工,由低到高依次為Fair, Good, Very Good, Premium, Ideal
color:代表了鑽石的顏色從最低的J到最高的D
clarity:鑽石的純淨度,代表了鑽石的透明程度從低到高依次為I1, SI1, SI2, VS1, VS2, VVS1, VVS2, IF
depth:深度比例
table:代表了鑽石的桌面比例
price:代表了鑽石的價格
x,y,z:分別代表了鑽石的長/寬/高
1.2資料展示
1.3匯入資料
1.4檢視資料集資訊
從統計資訊可以看出數字型的總數、count,資料個數(非空資料),mean,均值,std,標準差,min,最小值,25%,第1四分位數,即第25百分位數,50%,第2四分位數,即第50百分位數,75%,第3四分位數,即第75百分位數,max,最大值等資訊。
二、問題提出
1、每個資料有什麼特徵?
3、價格和什麼成正比?
2、克拉、切割、顏色、鑽石的純淨度對價格的影響?
三、資料清洗和預處理
3.1查詢缺失值
pd.isnull(df).sum()
可以看出,該資料集沒有缺失值。
3.2檢視資料集型別
df.info()
檢視資料集型別,可以看到一個10x3的列表,該資料集有10列,53940條資料。Not-Null記錄該列是否有空值,Dtype描述每列資料的型別。
四、各變數相關性資料分析與視覺化
4.1通過庫,用程式碼實現視覺化
檢視資料描述
df.describe()
對每個特徵繪製柱狀圖
扇形圖
如上繪製clarity列扇形圖。同理繪製color、cut列扇形圖。圖片如下:
可以看到clarity主要分佈在VS2、SI1、SI2、VS1,I1、IF佔比很少。
可以看到,color為G佔比最大,J最小。
可以看出,cut切割理想(Ideal)的佔比最大,失敗的很少。
單個特徵的分佈情況(直方圖)
sns.distplot(df['price'],kde=False)
由直方圖可以看出加出價格的分佈情況。
4.2使用dtale視覺化資料
檢視資料
結果如下:
通過左上角的三角形開啟功能選單(通過language可將語言切換為中文)
描述
以price為例詳細展開說明:
檢視描述,可知價格分佈及頻率,還有最大值、中值、最小值、總和等。通過箱式圖可知道:
最小值:326
1/4分位點:950
中位數:2401
3/4分位點:5324.25
最大值:18823
直方圖:
可以看到價格為1250左右的最多,2000-7000其次,更貴就更少了。
細分
500個數據
5000個數據
50000條資料
從此細分計數圖可以看出,價格為600左右的最多。
price-carat
可以看出price-carat是正比例相關,價格越高,carat越高
以下給出了其他列和price計數圖
圖表功能
以price為x軸,其他列為y軸,可以得到如下結果:
carat by price
隨著鑽石重量的增加鑽石的價格也呈上升的趨勢
depth by price
cut by price
color by price
clarity by price
可以得出,克拉和價格成正相關,質量越重,價格越高,而價格高的鑽石的切工、純淨度不會太差,而顏色沒有太大相關。
ScatterPlot-散點圖
Wordcloud-詞雲圖
相關性
可以知道影響價格的最重要因素是carat。
五、主要結論
鑽石的重量越高價格越高,鑽石的重量越高其價格受其他因素的影響越大。
顏色、切工、透明度越好的鑽石價格均值越低。
鑽石的價格隨克拉數的升高而升高,透明度越好(IF)的鑽石的單價越高。
鑽石的價格隨克拉數的升高而升高,切工越好(Ideal)的鑽石的單價越高。
鑽石的價格隨克拉數的升高而升高,顏色越好(D)的鑽石的單價越高。