normalize函数_Pandas 数据处理(一) —— 几个简单函数掌握!
对于 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 数据处理(一) —— 几个简单函数掌握!相关推荐
- python normalize函数_归一化函数normalize详解
opencv 2 归一化函数normalize详解 1. 归一化定义与作用 归一化就是要把需要处理的数据经过处理后 (通过某种算法)限制在你需要的一定范围内.首先归一化是为了后面数据处理的方便,其次是 ...
- 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) 目录
- OpenCV中矩阵的归一化*(Normalize函数)
图像处理中,图片像素点单通道值一般是[0-255]的unsigned char类型,将其转化到[0,1]之间,更方便计算,这就需要用到矩阵的归一化运算. 今天,写程序中需要对某矩阵归一化,用OpenC ...
- matlab 手工实现normalize函数 未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘normalize‘
matlab自带的normalize函数有时候总抽风不好使: 未定义与 'double' 类型的输入参数相对应的函数 'normalize' 不过考虑到这个东西本身也不难,无非就是这么个公式:Xi−μ ...
- 浅谈对transforms.ToTensor()和transforms.Normalize()函数的理解
前言 在进行tensor图片数据进行视觉时,一般会进行预处理操作,这个时候就需要用到ToTensor()和Normalize()这两个函数. 提示:以下是本篇文章正文内容,下面案例可供参考 一.ToT ...
- R语言使用vtreat包的designTreatmentsC函数构建数据处理计划(treatment plan)、使用vtreat包进行数据准备
R语言使用vtreat包的designTreatmentsC函数构建数据处理计划(treatment plan).使用vtreat包进行数据准备 目录
- normalize 函数
2. normalize 函数介绍 函数原型: void normalize(InputArray src,OutputArray dst, double alpha=1, doublebeta=0, ...
- python normalize函数_数据正规化 (data normalization) 的原理及实现 (Python sklearn)
原理 数据正规化(data normalization)是将数据的每个样本(向量)变换为单位范数的向量,各样本之间是相互独立的.其实际上,是对向量中的每个分量值除以正规化因子.常用的正规化因子有 L1 ...
- python数据处理常用函数_pandas数据分析常用函数总结大全:上篇
基础知识在数据分析中就像是九阳神功,熟练的掌握,加以运用,就可以练就深厚的内力,成为绝顶高手自然不在话下! 为了更好地学习数据分析,我对于数据分析中pandas这一模块里面常用的函数进行了总结.整篇总 ...
最新文章
- RxJava 中的map与flatMap
- 霍夫变换概述和标准霍夫变换
- 威纶通触摸屏与仪表通讯_西门子S7-200PLC与威纶通HMI的通信案例
- jsp mysql 推荐算法_基于jsp+mysql+Spring+mybatis的SSM协同过滤音乐推荐管理系统(个性化推荐)...
- 微机个人笔记-半导体存储器(芯片的角度)概述
- 比较连续分配、分页和分段三种存储分配机制的优缺点_第十九期-处理器存储模型概述(1)...
- Java -考研 学习路线(笔记链接汇总)-个人用
- 电大网络教育计算机应用基础,(热)最新电大奥鹏远程网络教育计算机应用基础题库.doc...
- 华为手机天气小工具误删/移除/丢失/不见了怎么办?
- shell下office、html、pdf文档互转方法
- 少年派的计算机游戏怎么弄,少年派的无聊之旅攻略大全图文详解
- 关于《深圳市龙华区技能人才扶持办法(试行)》的政策解读
- JavaScript 音乐导航(缓动动画、会唱歌的导航)
- 基于vue 在平面图上画路线图 canvas
- java实现DES加解密算法
- 头歌--Java循环与分支语句编程练习
- 2021管理类联考真题pdf-文都管联院
- 解决办法:360压缩解压出现空白文件创建失败,但压缩包文件无损坏显示有十几个文件
- android记事本开发背景,Android记事本开发之界面设计
- Q3净收入创单季新高,每日优鲜靠什么增速增效?
热门文章
- c#异常处理_C#异常处理能力问题和解答 套装4
- php xlsx里插入图片_常见的 PHP 面试题和答案分享
- ipfs分布式存储网络服务器系统,IPFS分布式存储是什么意思 分布式云存储服务器详解...
- 为什么阿里全面推动 K8S 落地,咬紧牙关也要搞云原生?
- if快还是switch快?解密switch背后的秘密
- 99%的程序员都在用Lombok,原理竟然这么简单?我也手撸了一个!|建议收藏!!!...
- java免费游戏,java – 分配免费游戏
- 玛酷机器人课程视频_建阳玛酷机器人丨2019WRO机器人比赛凯旋而归!
- JQuery Datatables辅助函数
- winpe镜像文件iso下载_精品软件:最喜爱的也是最纯净WinPE-微PE工具箱