python数据清洗1
创始人
2024-05-14 14:44:09

数据获取——》数据清洗——》数据转换——》数据分析

  • 通过设置步长,有间隔的取元素
  • 通过设置步长为-1,将元素颠倒

在这里插入图片描述

数据清洗工具

目前在Python中, numpy和pandas是最主流的工具。

  1. Numpy中的向量化运算使得数据处理变得高效;
  2. Pandas提供了大量数据清洗的高效方法。

在Python中,尽可能多的使用numpy和pandas中的函数,提高数据清洗的效率

一、Numpy

1.可以通过np.array([1,2,3,4])创建一维数组
2. np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])创建多维数组
3. 可以使用其他函数例如arange、linspace、zeros等创建 np.arange(0,10,1) np.linspace(1,10,10) np.zeros([2,3])
4. 常用方法

  • ndim: 查看数组维度
  • size:返回数组元素的个数
  • dtype:返回数组中元素的类型

5.常用数据清洗函数

  • np.sort(x) #从小到大排序
  • argsort函数返回数据中从小到大的索引值
  • sorted(x,reverse=True) #降序,从大到小
  • axis=0 #0表示对列,1表示对行
  • np.where(x>3,1,-1) #满足条件的赋值1,反之-1
  • np.extract(x>3,x) #只输出满足条件的数据

二、Pandas

1.series序列

  • pd.Series([1,2,3,4,5])
  • pd.Series([1,2,3,4,5],index=[‘a’,‘b’,‘c’,‘d’,‘e’],name=‘这是一个series序列’)
  • pd.Series[‘北京’:1,‘上海’:2,‘广东’:3,‘深圳’:4,‘浙江’:5]

2.series方法

  • series.values
  • series.index

3.dataframe
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.dataframe方法

  • df.values
    在这里插入图片描述
  • df.index
    在这里插入图片描述
  • df.columns
    在这里插入图片描述
  • df.dtypes
    在这里插入图片描述
  • df.ndim
  • df.size

三、文件操作(csv)

1.使用read_csv/read_excel方法读取,结果为dataframe格式
2.在读取csv文件时,文件名称尽量是英文
3.读取csv时,注意编码,常用编码为utf-8、gbk 、gbk2312和gb18030等
4.使用to_csv/to_excel方法快速保存

  • data.to_csv(‘name.csv’,encoding=‘utf-8’,index=False) #建议用utf-8编码或者中文gbk编码,默认是utf-8编码, index=False表示不写出索引行

数据库文件

1.使用sqlalchemy建立连接
2.pandas中read_sql 函数读入,读取完以后是dataframe格式
3.dataframe的to_sql方法保存
df.to_sql(name, con=engine, if_exists=‘replace/append/fail’,index=False)
name:表名; con:连接;
if_exists:表如果存在怎么处理。三个选项 append代表追加, replace代表删除原表,建立新表,fail代表什么都不干;index=False:不插入索引index
4.建立连接
conn=create_engine(‘mysql+pymysql://root:passward@IP:3306/test01’)
root: 用户名;passward: 密码;IP : 服务器IP,本地电脑用localhost;3306: 端口号; test01 : 数据库名称

四、数据筛选方法

  • df.info() #查看数据

  • df.head(5) #查看前5行

  • df.tail(5) #查看后5行

  • df[‘id’] #简单索引

  • df[‘id’][1:5] #第二行到第五行

  • df[[‘id’,‘name’,‘score’]][:5] #多个变量选择,前5行

  • loc与iloc
    loc
    在这里插入图片描述
    iloc
    在这里插入图片描述

     **loc 与 iloc区别**![在这里插入图片描述](https://img-blog.csdnimg.cn/b3d6f3ccad68468cb50c6c40f9313b24.png)
    

五、数据增加和删除

1.增加一列

  • df[‘购买者’]=np.where(df[‘buy_mount’]>3,‘高’,‘低’)

在这里插入图片描述
2.插入一列

  • df.insert(0,‘auction_id’,auction_id)

在这里插入图片描述
3.删除一列

  • del df[‘auction_id’]

在这里插入图片描述
4.drop删除行和列
在这里插入图片描述

六、数据修改和查找

1.数据修改
在这里插入图片描述

  • df.rename(columns={‘user_id’:‘用户ID’,‘birthday’:‘出生日期’,‘gender’:‘性别’},inplace=True) #修改列标签
  • df.rename(index={1:‘one’,10:‘ten’},inplace=True) #修改行索引名称
    在这里插入图片描述
    在这里插入图片描述

七、数据整理

数据合并

一般均为纵向合并,即使用concat时,axis =1(0代表横向);注意join取inner或者outer时,分别代表交集和并集
在这里插入图片描述

在这里插入图片描述

八、层次化索引

在这里插入图片描述

九、数据转换

1.Pandas中使用to_datetime()方法将文本格式转换为日期格式
在这里插入图片描述

2.dataframe数据类型如果为datetime64,可以使用dt方法取出年月日等
在这里插入图片描述

3.对于时间差数据,可以使用timedelta函数将其转换为指定时间单位的数值
在这里插入图片描述

4.时间差数据,可以使用dt方法访问其常用属性

相关内容

热门资讯

阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...