#老規(guī)矩蹄殃,引入吧
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
##上句的意思是mat嵌入到notebook中郭厌,如果沒(méi)有這句會(huì)怎么反應(yīng)呢袋倔?
%config InlineBackend.figure_format = 'retina'
##這句應(yīng)該是精度的意思,視網(wǎng)膜精度折柠。
df=pd.read_csv(r"C:\Users\bog\Desktop\3-python lesson\smoking_cancer.txt",sep='\t')
df.head()
###??? 為什么是read_table,為什么讀取txt格式文件宾娜,使用的是read_table,而不是read_txt呢扇售?
數(shù)據(jù)的集中趨勢(shì)
? 均值碳默、中位數(shù)贾陷、眾數(shù) ? 偏度
數(shù)據(jù)的離散程度
? 全距Range ? 四分位距IQR& 箱圖 ? 方差缘眶、標(biāo)準(zhǔn)差 ? 拇指規(guī)則& 切比雪夫定理
兩個(gè)變量的關(guān)系 ? 協(xié)方差 ? 相關(guān)系數(shù) ? 相關(guān)性 VS 因果性
現(xiàn)在的問(wèn)題是如何分析集中趨勢(shì)嘱根?
- 算出中位數(shù),均值等巷懈,關(guān)鍵是算出哪個(gè)變量的各種值呢该抒?
- 不同洲之間的吸煙人數(shù),肺癌的均值等
- 然后畫(huà)出不同洲的分布圖顶燕。
cig=df.CIG
cig.head()
0 18.20
1 25.82
2 18.24
3 28.60
4 31.10
Name: CIG, dtype: float64
cmean=np.mean(cig)
cmean
#各州吸煙者平均數(shù)
24.914090909090906
cmedian=np.median(cig)
cstd=np.std(cig)
print(cmedian)
print(cstd)
23.765
5.50958929263822
cmean>cmedian
True
均值大于中位數(shù)凑保,看來(lái)圖像右偏
plt.hist(cig,bins=50, rwidth=0.9,range=(12, 42) )
plt.show()
#### 如何設(shè)定y軸呢?
### 總覺(jué)得y軸可以設(shè)置涌攻,但不知道啊
沒(méi)有學(xué)會(huì)設(shè)置y軸
10萬(wàn)人吸煙人數(shù)集中在20-30之間欧引。
人均吸煙數(shù)的離散程度呢?
#畫(huà)箱圖
plt.boxplot(cig)
plt.show()
!conda install seaborn
!pip install seaborn
import seaborn
sns.boxplot(data=df, y='CIG', x='LUNG')
plt.show()
沒(méi)有安裝seaborn包恳谎,無(wú)反應(yīng)芝此。
相關(guān)性的一段
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
##上句的意思是mat嵌入到notebook中,如果沒(méi)有這句會(huì)怎么反應(yīng)呢因痛?
%config InlineBackend.figure_format = 'retina'
##這句應(yīng)該是精度的意思婚苹,視網(wǎng)膜精度。
df=pd.read_csv(r"C:\Users\bog\Desktop\3-python lesson\smoking_cancer.txt",sep='\t')
df.head()
#np.cov(cig鸵膏,lung)
#np.corrcoef(salary, score)[0,1]
cig=df.CIG
cig
lung=df.LUNG
lung
print('協(xié)方差是:',np.cov(cig,lung)[0,1])
print('吸煙數(shù)和肺癌數(shù)的相關(guān)性是:',np.corrcoef(cig,df.LUNG)[0,1])
#"吸煙數(shù)和肺癌數(shù)的協(xié)方差是:"
#"吸煙數(shù)和肺癌數(shù)的相關(guān)性是:"
plt.scatter(cig,df.LUNG)
plt.show()
協(xié)方差是: 16.4339634249
吸煙數(shù)和肺癌數(shù)的相關(guān)性是: 0.697402504928
output_1_1.png
##煙和膀胱癌之間的相關(guān)性呢膊升?
print('煙和膀胱癌之間的相關(guān)性:',np.corrcoef(df.CIG,df.BLAD)[0,1])
plt.scatter(df.CIG,df.BLAD)
plt.show()
煙和膀胱癌之間的相關(guān)性: 0.703621859461
<matplotlib.collections.PathCollection at 0x14cd75bd898>
output_2_2.png
###吸煙數(shù)和腎癌的相關(guān)性呢?
print('吸煙數(shù)和腎癌的相關(guān):',np.corrcoef(df.CIG,df.KID)[0,1])
plt.scatter(df.CIG,df.KID)
plt.show()
吸煙數(shù)和腎癌的相關(guān): 0.487389617034
output_3_1.png
###吸煙數(shù)和白血病的相關(guān)性呢谭企?
print('與白血病的相關(guān)系數(shù)為:',np.corrcoef(df.CIG,df.LEUK)[0,1])
plt.scatter(df.CIG,df.LEUK)
與白血病的相關(guān)系數(shù)為: -0.0684812294766
<matplotlib.collections.PathCollection at 0x14cd7622c18>
output_4_2.png
相關(guān)性結(jié)論
- 白血病和吸煙數(shù)的相關(guān)性接近于0
- 腎癌跟吸煙的相關(guān)性系數(shù)低于50%
- 但是肺癌和膀胱癌跟吸煙相關(guān)性高達(dá)70%廓译。
- 不過(guò)這個(gè)數(shù)據(jù)也有不合理的地方,假如A洲债查,吸煙人數(shù)為100非区,肺癌人數(shù)為20. 但這20人,可不一定包含于吸煙的100人中哦攀操。
- 所以這次的分析只是在練習(xí)方法院仿,對(duì)數(shù)據(jù)的信任度,需要另當(dāng)別論速和。