特征工程之基本数据处理-19.12.3
一、缺失值删除
1. df.shape[0] #表示样本数,即行数
2. df.shape[1] #表示列数
3. df.count() #统计的每个样本的数量,是字典行
feature1 10
feature2 8
feature3 4
label 10
dtype: int64
4. df.count().to_frame().T # 每一维特征非缺失值的数量
feature1 feature2 feature3 label
0 10 8 4 10
5. no_nan_count.columns.tolist() #这个是一个列表把样本中的特征名组合在一起,
同时可以用于for循环
6. df[].values[] #选择某一特征的具体个值
7. df[列表名] #列表名可以是一个列表,表示直接选出这几列
8. df.dropna() #表示删除有缺失数据的样本
二、插值
9. df.mean() #求出均值每一列
10. df.fillna(df.mean()) #对空缺值进行均值填充
11. df.median() #中位数
12. df.fillna(df.median)
13. df.fillna(df11[col].mode()[0]) #众数可能有多个,
#因此在填充的时候可以进行选择第一个进行填充
14. df.fillna(df.max())
15. df.fillna(df.min())
16. df.fillna(value = 10) #自定义填充
17. df.fillna(method='ffill') # 前向填充
18. df.fillna(method = 'bfill') #向后填充
19. 这里需要注意的是一维矩阵和一维向量的区别,一维向量的shape是(5, ),
而一维矩阵的shape是(5, 1), 若两个参数a和b都是一维向量则是计算的点积,
但是当其中有一个是矩阵时(包括一维矩阵),dot便进行矩阵乘法运算,
同时若有个参数为向量,会自动转换为一维矩阵进行计算。
20. np.linalg.inv():矩阵求逆
21. dataset.isnull().sum() #每一列特征进行缺失数量进行求和
22. dataset.loc[i, 'Label_petal_length'] #这个也是进行定位到具体数值位置,i表示下标,后面的表示特征名
23. dataset.corr() #用于发现特征间的相关系数
24. train = data[data['Label_petal_length'].notnull()]
25. test = data[data['Label_petal_length'].isnull()]
26. data_test1=data.iloc[:,:8] #选取位置为[0,8)列的整列数据
27. data_test2=data.iloc[0:2,8] #选取位置为8的列的[0,2)行的数据
28. data_test3=data.loc[0:2,'工龄'] #选取列名为‘工龄’的[0,2]行的数据
学习到离群值处理
2019/12/03 16:14
作者:睿晞
身处这个阶段的时候,一定要好好珍惜,这是我们唯一能做的,求学,钻研,为人,处事,交友……无一不是如此。
劝君莫惜金缕衣,劝君惜取少年时。花开堪折直须折,莫待无花空折枝。
曾有一个业界大牛说过这样一段话,送给大家:
“华人在计算机视觉领域的研究水平越来越高,这是非常振奋人心的事。我们中国错过了工业革命,错过了电气革命,信息革命也只是跟随状态。但人工智能的革命,我们跟世界上的领先国家是并肩往前跑的。能身处这个时代浪潮之中,做一番伟大的事业,经常激动的夜不能寐。”
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

浙公网安备 33010602011771号