数据清洗的步骤和方法

数据清洗主要是把有用的数据留下,无用的数据删掉。

数据清洗的步骤和方法

1.去除重复的数据

Pandas库:duplicated():找到重复数据,重复的数据方法返回false。

        drop_duplicates(): 找到重复数据,删除掉重复数据。

举例说明:df.duplicated(“name”); 找到name行中的重复数据,并且标记为false。

      df.drop_duplicates(‘age’);结果处理为 删除掉age列中的重复数据。

2.对于缺少数据的处理

1)先要找到缺少的数据

from pandas import DataFrame

df.isnull(): 判断数据是否为空值。

df.notnull(): 判断数据是否不为空值。

2)找到缺失值后要如何处理

你可以选择删除:df.dropna()

            标记当行里数据全部为空时,才选择删除:df.dropna(how=‘all’)

            当以列为单位删除时: df.dropna(how=‘all’,axis=1)

你可以选择用其他数值进行填补:

            用问号填补空白数据:df.fillna(‘?’) 

            用同一列上的前一个数据来填补:df.fillna(method = ‘pad’)

            用同一列上的后一个数据来填补:df.fillna(method = ‘bfill’)

            问题:如何用limit限制每列可以替代NAN的数目。

你可以选择用统计性数值的数据来替代:

            用列上除控制之外的平均数来替代:df.fillna(df.mean()) (个数不包括空值)

            用其他的列的统计数据来替代:df.fillna(df.mean()[‘高代’:’解几’])(用解几列的平均值来替代高代列上的空值)

你可以选择指定数据来填补:

            df.fillna({‘数分’:100,’高代’:0}) (意思是:数分列上的空值填补为100,高代列上填补的空值为0)

你需要清除字符型数据左右首尾的字符rstrip():

                        df[‘name’].str.rstrip(‘n’) //删除最右边的字符。如果是n,则删除n;否则,就删除最右边字符就OK。

作者:东日情书

链接:https://www.jianshu.com/p/efb14f0a4e35

来源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论