在读取文件后,对数据进行初步的清理,来达到后续回归、建模等操作所需要的比较规整的数据集。对数据的最终结果要求依不同的项目而定,此处只整理一些个人能想到的&比较通用的处理过程。
1、选取数据集中特定的行/列
以下为取某(几)列的三种方法:
data['列名'] # 取出一列,以series的形式展示
data.loc[:,["列名1","列名2","列名3"]] # 取出多列,以DataFrame的形式展示
data[data.columns[0:7]] # 取连续的几列 (注:第一列的index为0)
2、删除操作
(1)删除某一行/列(不在数据集中出现)
data.pop("X") # 删除名为X的列,运行此行代码输出的结果为列X的数据
# data # 再次查看数据集,不存在列X
data.drop('XX',axis=1) # 删除名为XX的列,若axis=1不写则默认为0,表示删除名为XX的行
(2)删除特定的行/列(如删除含有某字符串的记录)
data1[-data.AA.str.contains("XX")] # 删除AA列中含“XX”的记录
(3)删除缺失值
data.dropna(axis=1) # 删除有缺失值的所有列,默认axis=0删除行
data.dropna(subset=['XX'],inplace=True) # 删除XX列中有缺失值的行
3、重命名列
data.rename(columns={"A1":"X1","A2": "X2"}) # 将名为A1、A2的列重命名为X1、X2
4、新增列(还有其他的新增列方式,例如根据现有数据的运算处理结果新增一列,详见后续用函数来处理数据的部分)
data.insert(loc=2, column='X', value=d) # 插入数据列d,成为数据集data中名为X的列
5、替换
data.replace("A","B") # 将数据集data中值为A处替换为B
To be continued...