使用 df.info() 方法查看数据信息后发现数据存在的问题:冗余的数据,缺失的数据,格式错误的数据。
当某列存在数据缺失时:
mean = df[\'somecolumn\'].mean() df[\'somecolumn\'].fillna(mean)
#注意此时原df并未被修改,需要
df[\'somecolumn\'] = df[\'somecolumn\'].fillna(mean) #或
df[\'somecolumn\'].fillna(mean, inplace=True)
用以计算均值并填充缺值。
当数据存在冗余时:
首先可以使用 df.duplicated() 查看冗余行,该函数默认将非首次出现(完全相同的)的冗余行标记为 True,再使用 df.drop_duplicates(inplcae=True) 删除冗余行。
subset 参数:
添加这个参数以指定某些列作为冗余认定的标准。
当数据的格式错误时:
举例,若某一列的值应当为 datetime 而原始值为 str 类型时:
df[\'timestamp\'] = pd.to_datetime(df[\'timestamp\']) df.info()
这种处理在你将df 存储到 csv 文件后,下次打开该列值的类型又会变成 str。