数据冗余的三种类型(Python办公自动化,如何数据选取,减少数据冗余)

一张表中通常会包含很多字段,造成数据冗余,在做数据分析时,我们仅需要提取数据分析所需要的字段,这里就需要用到数据选取的知识点。

本文构建数据表做数据索引,然后对数据内容进行调整,包含修改数据类型、去除空格、数据替换、截取字符等,最后做数据规整。

数据冗余

一、构建数据表

首先导入常用的库,设置一些数据字段,构建一张数据表。

import pandas as pd import numpy as np import datetime df = pd.DataFrame({'用户ID':[1001,1002,1003,1004,1005,1006], '日期':pd.date_range(datetime.datetime(2021,3,23),periods=6), '城市':['北京', '上海', '广州', '上海', '杭州', '北京'], '年龄':[23,44,54,32,34,32], '性别':['F','M','M','F','F','F'], '成交量':[3200,1356,2133,6733,2980,3452]}, columns =['用户ID','日期','城市','年龄','性别','成交量']) df二、数据索引

1、索引修改

#修改索引,直接赋值给Index即可 df.index=list('abcdef') df

2、数据索引

索引某行,有三种方法,一种是loc按照名字索引,另一种是iloc按照下标索引,Ix是loc和iloc的混合,既能按索引标签提取,也能按位置进行数据提取。

#索引两列 df.loc[:,['城市','成交量']]

#索引前两行,两列 df.loc[['a','b'],['城市','成交量']]

#获取第一列、第二列数据 df.iloc[:,0:2]

#获取第二行、第三行,第一、二、三列的数据 df.iloc[[1, 2],[0, 1, 2]]

# 仅取出第1行的数据 df.iloc[0]

#索引全部行数据 df.iloc[:,[0, 1, 2]]

#使用ix按索引标签和位置混合提取数据 df.ix[:'2021-03-26',:3]

3、条件筛选

#筛选性别为F的数据 df[df['性别']=='F']

df[(df['城市']=='北京') & (df['年龄']>30)]

#布尔索引加普通索引选择指定的行和列 df[df['年龄']>30][['用户ID','城市','成交量']]

#切片索引加普通索引选择指定的行和列 df.iloc[0:3][['用户ID','城市','成交量']]三、数据内容调整

1、修改数据类型

#数据类型修改 df.dtypes

#将用户ID数值类型转化为字符串类型 df['用户ID'] = df['用户ID'].astype(str) df['用户ID'].dtype

2、去除空格

#去除字段中的空格 df = pd.DataFrame({'城市':['北京 ', ' 上海', ' 广州 ', '上海', ' 杭州 ', ' 北京']}) df['城市']

df['城市'].str.strip()

3、数据替换

df['城市'] = df['城市'].replace('北京','北京市') df['城市']

4、截取部分字符

#截取部分字符到日期日 df['日期'] = df['日期'].astype(str) df['日期'].str[8:10]四、数据规整

1、数据排序

#排序,以成交量降序排列 df.sort_values(['成交量'],ascending=False)

2、数据分类

#使用where进行判断,条件满足为第一个值,不满足则返回第二个值 df['达成情况']=np.where(df['成交量']>3000,'达成量高','达成量低') df

您可以还会对下面的文章感兴趣

最新评论

  1. 冷面君子
    冷面君子
    发布于:2022-04-27 05:29:41 回复TA
    州', '北京'],'年龄':[23,44,54,32,34,32],'性别':['F','M','M','
  1. 冰火
    冰火
    发布于:2022-04-27 05:48:25 回复TA
    日期'].astype(str)df['日期'].str[8:10]四、数据规整1、数据排序#排序,以成交量降序排列df.sort_values(['成交量'],ascending=False)2、数据分类#使用wh
  1. 甘晴勤天
    甘晴勤天
    发布于:2022-04-27 04:40:00 回复TA
    最伟大的人,是在嘈杂人群中完美地坚持独立的人。

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

使用微信扫描二维码后

点击右上角发送给好友