- 删除数据
-
#行删除 train = train.drop(train[(train['GrLivArea']>4000)].index) #列删除 train.drop("Id", axis = 1, inplace = True)
-
连接数据
#并重设索引,列相同
all_data = pd.concat((train, test)).reset_index(drop=True)
#当axis = 1的时候,concat就是行对齐,然后将不同列名称的两张表合并
result = pd.concat([df1, df4], axis=1)
#加上join参数的属性,如果为’inner’得到的是两表的交集(指取索引相同的行,列进行扩展),如果是outer,得到的是两表的并集。
result = pd.concat([df1, df4], axis=1, join='inner')
- 缺失值处理
#统计每一列的缺失数,isnull()返回的是true和false的表,也就是1和0
all_data_na = all_data.isnull().sum()
#填充缺失数据
all_data[col] = all_data[col].fillna("None")
#众数填充,mode取出的是众数的集合,所以取第一个
all_data['X'] = all_data['X'].fillna(all_data['X'].mode()[0])
#中值填充,用Neighborhood将数据分组,每组缺失值用LotFrontage中值填充
all_data["LotFrontage"] = all_data.groupby("Neighborhood")["LotFrontage"].transform(lamb
聚合
#聚合出来的是行数据,transform对列操作
all_data["LotFrontage"] = all_data.groupby("Neighborhood")["LotFrontage"].transform(
lambda x: x.fillna(x.median()))
- 取数据值
#loc位置取值
all_data.loc[a