pandas数据结构之基础运算笔记
import pandas as pd
import numpy as np s = pd.Series([1,3,5,6,8],index=list('acefh'))
s.index # 读取行索引
# 输出 Index(['a', 'c', 'e', 'f', 'h'], dtype='object') s.reindex(list('abcdefgh')) # 索引再定义,与元索引相同,值不变,其它变为NaN
s.reindex(list('abcdefgh'),fill_value=0) # 将其它的索引设置默认值0
s.reindex(list('abcdefgh'), method='ffill')
# 其它元Series没有的索引的值对应上一行已有的索引对应值 df = pd.DataFrame(np.random.randn(4,6),index=list('ADFH'),columns=['one','two','three','four','five','six'])
df2 = df.reindex(index=list('ABCDEFGH'))
# DataFrame中再定义行索引,新的索引将默认赋值NaN df.reindex(index=list('ABCDEFGH'),fill_value=0) # DataFrame中为新的索引赋值0
df.loc['A']['one'] = 100 # 将‘A'行’one‘列赋值100 df.reindex(columns=['one','three','five','seven'],fill_value=0) df.reindex(index=list('ABCDEFGH'),method='ffill') # method只对列有效果
# method='ffill',找到上面一行的对应列的值 赋值给新添加的行
# 但是df没有改变 但是df没有改变 但是df没有改变 但是df没有改变 但是df没有改变 df.drop('A') # 默认按行
df.drop(['two','four'],axis=1) #按列
# 但是df没有改变 但是df没有改变 但是df没有改变 但是df没有改变 但是df没有改变 df = pd.DataFrame(np.arange(12).reshape(4,3),index=['one','two','three','four'],columns=list('ABC')) df.apply(lambda x: x.max()-x.min()) # 按列
df.apply(lambda x: x.max()-x.min(), axis=1) # 按行 def min_max(x):
return pd.Series([x.min(),x.max()],index=['min','max']) # 按行
df.apply(min_max, axis=1) df = pd.DataFrame(np.random.randn(4,3),index=['one','two','three','four'],columns=list('ABC')) # formater = lambda x: '%.03f' % x
formater = '{0:0.3f}'.format # 两个结果相同,取3位有效数字 df = pd.DataFrame(np.random.randint(1,10,(4,3)),index=list('ABCD'),columns=['one','two','three']) df.sort_values(by='two',ascending=False) 通过by找到主要排序列对象 ascending=False按从大到小排列 s = pd.Series([3,6,2,6,4]) s.rank(method='average')
# 默认,rank表示列中的值对应的大小排位号(小的数排位靠前)
# df未改变 df未改变 df未改变 df未改变 df未改变 df未改变 df.rank(method='first') # 按列取排位号(小的数排位靠前)
s = pd.Series(list('abbcdabacad'))
s.value_counts() # 列中相应的值出现的次数
s.unique() # 找出列中所有不重复的值
s.isin(['a','c','d']) # 判断列中的值在['a','c','d']是否有相同的值
s.isin(s.unique()) # 判断列中的值在array(['a', 'b', 'c', 'd'])是否有相同的值
pandas数据结构之基础运算笔记的更多相关文章
- 读书笔记一、pandas数据结构介绍
pandas数据结构介绍 主要两种数据结构:Series和DataFrame. Series Series是一种类似于一维数组的对象,由一组数据(各种NumPy数据类型)+数据标签(即索引)组 ...
- python之pandas学习笔记-pandas数据结构
pandas数据结构 pandas处理3种数据结构,它们建立在numpy数组之上,所以运行速度很快: 1.系列(Series) 2.数据帧(DataFrame) 3.面板(Panel) 关系: 数据结 ...
- Oracle基础学习笔记
Oracle基础学习笔记 最近找到一份实习工作,有点头疼的是,有阶段性考核,这...,实际想想看,大学期间只学过数据库原理,并没有针对某一数据库管理系统而系统的学习,这正好是一个机会,于是乎用了三天时 ...
- 尚学堂JAVA基础学习笔记
目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...
- pandas教程1:pandas数据结构入门
pandas是一个用于进行python科学计算的常用库,包含高级的数据结构和精巧的工具,使得在Python中处理数据非常快速和简单.pandas建造在NumPy之上,它使得以NumPy为中心的应用很容 ...
- <数据结构与算法分析>读书笔记--运行时间计算
有几种方法估计一个程序的运行时间.前面的表是凭经验得到的(可以参考:<数据结构与算法分析>读书笔记--要分析的问题) 如果认为两个程序花费大致相同的时间,要确定哪个程序更快的最好方法很可能 ...
- <数据结构与算法分析>读书笔记--函数对象
关于函数对象,百度百科对它是这样定义的: 重载函数调用操作符的类,其对象常称为函数对象(function object),即它们是行为类似函数的对象.又称仿函数. 听起来确实很难懂,通过搜索我找到一篇 ...
- 黑马程序猿————Java基础日常笔记---反射与正則表達式
------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 黑马程序猿----Java基础日常笔记---反射与正則表達式 1.1反射 反射的理解和作用: 首 ...
- 嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av13570243/?from=search&seid=15873837810484552531 中的15-23讲
#coding=gbk#嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av13570243/?from=search&seid=1587383 ...
随机推荐
- ZR#999
ZR#999 解法: 一道计数题,看到要求必须 $ m $ 个标号,所有标号至少出现一次的方案. 很容易想到可以容斥,但容斥这个东西是一种很神奇的东西,你可以看出来一道题需要容斥,但你就是不知道怎么容 ...
- RESTful入门
RESTful入门 1. REST简介 和RPC一样,都是目前比较主流的URL链接风格,也可以说是web服务的一种架构风格.REST全称Representational State Transfer, ...
- T-MAX组--项目冲刺(第一天)
THE FIRST DAY 项目相关 作业相关 具体描述 所属班级 2019秋福大软件工程实践Z班 作业要求 团队作业第五次-项目冲刺 作业正文 T-MAX组--项目冲刺(第一天) 团队名称 T-MA ...
- oracle 编译无效对象
在数据库中,会存在一些无效的对象,导致这种现象的发生原因很多,其中最常见的就是数据库升级(例如修改了表的结构),迁移而引起. 编译无效对象的方式: 1 使用alter **** compile 语句进 ...
- 中间件 | mq消息队列解说
消息队列 1.1 什么是消息队列 我们可以把消息队列比作是一个存放消息的容器,当我们需要使用消息的时候可以取出消息供自己使用.消息队列是分布式系统中重要的组件,使用消息队列主要是为了通过异步处理提高系 ...
- yield 异步 并行 Promise await async
yield方式转移执行权的协程之间不是调用者与被调用者的关系,而是彼此对称.平等的 http://www.geeksforgeeks.org/use-yield-keyword-instead-ret ...
- vue实现滚动条滚到相应高度触发动画的操作
一.vue项目引入animate.css 第一步:在命令行中执行: npm install animate.css --save 第二步:引入及使用: main.js中: import animate ...
- nginx中获取真实的客户端访问IP
date : 2019-06-28 16:54:50 author: headsen chen notice: 个人原创 1,必需要先搞清楚的基本概念 1.1 什么是remote_addr ...
- IntelliJ IDEA中构建spring-boot项目
1. 打开 IDEA ,新建项目 2. 选择Spring Initializr 并在 Choose Initializr Service URL 填入 https://start.spring.io ...
- web手工项目03-登录功能测试用例及缺陷编写-流程图画法-前后台下单及发货流程图-流程图设计测试用例方法-功能测试涉及到的四种数据库场景
回顾 注册功能测试(步骤,需求分析(输入分析,处理分析,输出分析),数据构造(有效等价类,无效等价类,有效数据,无效数据),编写用例,执行用例,缺陷报告) 轮播图功能测试(步骤,需求分析拆分测试点,测 ...