对于 Pandas, 接触过 Python 数据处理的小伙伴们都应该挺熟悉的,做数据处理不可或缺的一个程序包,最大的特点高效,本篇文章将通过案例介绍一下 Pandas 的一些基础使用!

1,读入数据

大部分数据都可以用 read_csv() 函数读入,函数中有个 sep 参数,表示数据的分隔符,默认为 “,” (因为大部分 csv 文件数据之间就是以 ,隔开的)

users = pd.read_csv("https://raw.githubusercontent.com/justmarkham/DAT8/master/data/u.user",sep = '|')# Read data;
users

原始数据:

读取之后的数据:

除了 read_csv 之外,还有一个常用的 read_table函数也可进行读取操作,用法与 read_csv 相似

2,改变索引值,只展示前几行数据

set_index() 函数用来改变索引值,注意需要加一个参数 replace = True 表示替代; 利用 head(n) 函数表示只展示前 n 行数据

users.set_index('user_id',inplace = True)
users.head(25)

tail(n) 只展示后几行数据;

3,查看数据的行和列的基本信息

1,shape 返回 数据的行数和列数,以 tuple 形式返回;

users.shape# (943, 4)

2,columns 返回数据列名;

users.columns# Index(['age', 'gender', 'occupation', 'zip_code'], dtype='object')

3,index 返回行名;

users.indexInt64Index([  1,   2,   3,   4,   5,   6,   7,   8,   9,  10,...934, 935, 936, 937, 938, 939, 940, 941, 942, 943],dtype='int64', name='user_id', length=943)

4,dtypes 返回各列的数据类型;

users.dtypes# age            int64
gender        object
occupation    object
zip_code      object
dtype: object

4,只选取某列或多列数据

Pandas 提供多种方式可供选择,注:users 表示 Pandas 可处理的DataFrame 格式;

1,users.列名;

users.occupation

2,users[['列名']];

users[['occupation']]

3,users.loc[:,['列名']];

users.loc[:,['occupation']]

同时选取多列数据时

1,users[['列名1','列名2']];

users[['occupation','age']]

2,users.loc[:,['列名1','列名2']];

users.loc[:,['occupation','age']]

5,对列中数据做去重统计

1,列名.nunique() 查看某一列数据有多少个不重复样本;

users.occupation.nunique()# 21

也可以通过这种方式实现

列名.value_counts().count()

users.occupation.value_counts().count()# 21

如果想在1 的基础之上,查看每一个不重复样本在数据列表冲出现了几次,可用下面语句

users.列名.value_counts()

users.occupation.value_counts().head()# student          196
other            105
educator          95
administrator     79
engineer          67
Name: occupation, dtype: int64

6,对数据列表中的数字列做个简单统计

users.describe() 即可实现,默认统计的是 numeric columns(列中数据都是以数值进行展示的)

users.describe()

当然也可以统计全部列,加一个参数 include = 'all';

users.describe(include = 'all')

users.列名.describe() 也可以对指定列进行统计:

users.occupation.describe()#count         943
unique         21
top       student
freq          196
Name: occupation, dtype: object

7,对数据做组聚类

groupby 函数对某一列做聚类操作,返回的是 GroupBy 对象;与 5 中方法相似,区别是 groupby 是以聚类后的列为参照,查看其他列的数据统计情况

c =users.groupby("occupation")
c# <pandas.core.groupby.generic.DataFrameGroupBy object at 0x0000017673002788>

GroupBy.head(n) 查看前 n 行数据

c.head(5)

GroupBy.cout() 对每个样本对应其他列进行数据统计

c.count()

GroupBy.size() 统计列中每个样本出现次数

c.size()

还有其它许可操作的函数,

详细的可去官网上查询:https://pandas.pydata.org/docs/reference/groupby.html

8,对数据按照某一列进行排序

用到 data.sort_values() 函数,默认从小到大,可以设置 ascending = False 设置为从大到小;

users.sort_values(["age"],ascending = False)

也可以参考多个列进行排序:

users.sort_values(["age","zip_code"],ascending = False)

9,创建新的列

加入新的列比较简单,创建一个 Series (行数需与原列表数据行数保持一致),赋值到源数据即可

data['列名'] = 新创建的 series;下面我利用对 age 中数据进行均一化,把数据存放在新的列 age_normalize 中

10,删除指定列

用 drop() 函数可删除源数据中的指定列

users.drop(['age'],axis = 1)

这里的 axis 代表指定要删除的是行还是列,默认为0,0代表的是行,1代表的是列;也可以直接用下面命令:

users.drop(columns =['age'])

normalize函数_Pandas 数据处理(一) —— 几个简单函数掌握!相关推荐

  1. python normalize函数_归一化函数normalize详解

    opencv 2 归一化函数normalize详解 1. 归一化定义与作用 归一化就是要把需要处理的数据经过处理后 (通过某种算法)限制在你需要的一定范围内.首先归一化是为了后面数据处理的方便,其次是 ...

  2. pandas使用normalize函数将dataframe中的时间(time)数据列转化为日期(date)数据列(例如,从2019-12-25 11:30:00到2019-12-25)

    pandas使用normalize函数将dataframe中的时间(time)数据列转化为日期(date)数据列(例如,从2019-12-25 11:30:00到2019-12-25) 目录

  3. OpenCV中矩阵的归一化*(Normalize函数)

    图像处理中,图片像素点单通道值一般是[0-255]的unsigned char类型,将其转化到[0,1]之间,更方便计算,这就需要用到矩阵的归一化运算. 今天,写程序中需要对某矩阵归一化,用OpenC ...

  4. matlab 手工实现normalize函数 未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘normalize‘

    matlab自带的normalize函数有时候总抽风不好使: 未定义与 'double' 类型的输入参数相对应的函数 'normalize' 不过考虑到这个东西本身也不难,无非就是这么个公式:Xi−μ ...

  5. 浅谈对transforms.ToTensor()和transforms.Normalize()函数的理解

    前言 在进行tensor图片数据进行视觉时,一般会进行预处理操作,这个时候就需要用到ToTensor()和Normalize()这两个函数. 提示:以下是本篇文章正文内容,下面案例可供参考 一.ToT ...

  6. R语言使用vtreat包的designTreatmentsC函数构建数据处理计划(treatment plan)、使用vtreat包进行数据准备

    R语言使用vtreat包的designTreatmentsC函数构建数据处理计划(treatment plan).使用vtreat包进行数据准备 目录

  7. normalize 函数

    2. normalize 函数介绍 函数原型: void normalize(InputArray src,OutputArray dst, double alpha=1, doublebeta=0, ...

  8. python normalize函数_数据正规化 (data normalization) 的原理及实现 (Python sklearn)

    原理 数据正规化(data normalization)是将数据的每个样本(向量)变换为单位范数的向量,各样本之间是相互独立的.其实际上,是对向量中的每个分量值除以正规化因子.常用的正规化因子有 L1 ...

  9. python数据处理常用函数_pandas数据分析常用函数总结大全:上篇

    基础知识在数据分析中就像是九阳神功,熟练的掌握,加以运用,就可以练就深厚的内力,成为绝顶高手自然不在话下! 为了更好地学习数据分析,我对于数据分析中pandas这一模块里面常用的函数进行了总结.整篇总 ...

最新文章

  1. RxJava 中的map与flatMap
  2. 霍夫变换概述和标准霍夫变换
  3. 威纶通触摸屏与仪表通讯_西门子S7-200PLC与威纶通HMI的通信案例
  4. jsp mysql 推荐算法_基于jsp+mysql+Spring+mybatis的SSM协同过滤音乐推荐管理系统(个性化推荐)...
  5. 微机个人笔记-半导体存储器(芯片的角度)概述
  6. 比较连续分配、分页和分段三种存储分配机制的优缺点_第十九期-处理器存储模型概述(1)...
  7. Java -考研 学习路线(笔记链接汇总)-个人用
  8. 电大网络教育计算机应用基础,(热)最新电大奥鹏远程网络教育计算机应用基础题库.doc...
  9. 华为手机天气小工具误删/移除/丢失/不见了怎么办?
  10. shell下office、html、pdf文档互转方法
  11. 少年派的计算机游戏怎么弄,少年派的无聊之旅攻略大全图文详解
  12. 关于《深圳市龙华区技能人才扶持办法(试行)》的政策解读
  13. JavaScript 音乐导航(缓动动画、会唱歌的导航)
  14. 基于vue 在平面图上画路线图 canvas
  15. java实现DES加解密算法
  16. 头歌--Java循环与分支语句编程练习
  17. 2021管理类联考真题pdf-文都管联院
  18. 解决办法:360压缩解压出现空白文件创建失败,但压缩包文件无损坏显示有十几个文件
  19. android记事本开发背景,Android记事本开发之界面设计
  20. Q3净收入创单季新高,每日优鲜靠什么增速增效?

热门文章

  1. c#异常处理_C#异常处理能力问题和解答 套装4
  2. php xlsx里插入图片_常见的 PHP 面试题和答案分享
  3. ipfs分布式存储网络服务器系统,IPFS分布式存储是什么意思 分布式云存储服务器详解...
  4. 为什么阿里全面推动 K8S 落地,咬紧牙关也要搞云原生?
  5. if快还是switch快?解密switch背后的秘密
  6. 99%的程序员都在用Lombok,原理竟然这么简单?我也手撸了一个!|建议收藏!!!...
  7. java免费游戏,java – 分配免费游戏
  8. 玛酷机器人课程视频_建阳玛酷机器人丨2019WRO机器人比赛凯旋而归!
  9. JQuery Datatables辅助函数
  10. winpe镜像文件iso下载_精品软件:最喜爱的也是最纯净WinPE-微PE工具箱