Pandas之Dataframe索引,排序,统计,重新设置索引

一:叠加

import pandas as pd

a_list = [df1,df2,df3]
add_data = pd.concat(a_list,ignore_index = True)

其中的ignore_index参数代表是否重新建立索引。

如果df比较多,可以采用如下方法建立a_list

a_list = []
for i in range(len(df)):
a_list.append(df[i])

二:排序

df.sort_values(by=["B","A"] , ascending=(False,False))
df.sort_values(by=["A","B"] , ascending=(False,False))

这两个表达式结果不一样,第一个是先按B排的基础上,当B一样时再按A排,第二个是先按照A排完再按B排。

其中ascending默认是FALSE,即默认会按照相应的by中的第几个元素降序排序,当希望用第几个元素升序排序时,可以设置成TRUE

三:统计

df["A"].value_counts()#对A列进行统计,计数然后生成一个只有一个A值和对应计数值。

这个是统计A列中的唯一值有多少。

如果统计多列的计数值,可以采用如下方法

 a = [["None" for col in range(3)] for row in
range(len(df["A"]*len(df["B"])
k = 0
for i in range(len(df["A"]):
for j in range(len(df["B"]):
a[k][0] = df.A[i]
a[k][1] = df.B[j]
data_select = df[df.A==x[i]&df.B==x[j]]
a[k][2] = len(data_select)
df["A"].unique()

这个会直接取出A列中的唯一值

四、重新设置索引

df = df.reset_index(drop = True)

重新设置行索引

Pandas之Dataframe叠加,排序,统计,重新设置索引的更多相关文章

  1. 吴裕雄--天生自然python学习笔记:pandas模块DataFrame 数据的修改及排序

    import pandas as pd datas = [[65,92,78,83,70], [90,72,76,93,56], [81,85,91,89,77], [79,53,47,94,80]] ...

  2. python 数据处理学习pandas之DataFrame

    请原谅没有一次写完,本文是自己学习过程中的记录,完善pandas的学习知识,对于现有网上资料的缺少和利用python进行数据分析这本书部分知识的过时,只好以记录的形势来写这篇文章.最如果后续工作定下来 ...

  3. 重拾Python(4):Pandas之DataFrame对象的使用

    Pandas有两大数据结构:Series和DataFrame,之前已对Series对象进行了介绍(链接),本文主要对DataFrame对象的常用用法进行总结梳理. 约定: import pandas ...

  4. Pandas之DataFrame——Part 3

    ''' [课程2.] 数值计算和统计基础 常用数学.统计方法 ''' # 基本参数:axis.skipna import numpy as np import pandas as pd df = pd ...

  5. Spark与Pandas中DataFrame对比

      Pandas Spark 工作方式 单机single machine tool,没有并行机制parallelism不支持Hadoop,处理大量数据有瓶颈 分布式并行计算框架,内建并行机制paral ...

  6. pandas中DataFrame相关

    1.创建 1.1  标准格式创建 DataFrame创建方法有很多,常用基本格式是:DataFrame 构造器参数:DataFrame(data=[],index=[],coloumns=[]) In ...

  7. Pandas之DataFrame——Part 1

    ''' [课程2.] Pandas数据结构Dataframe:基本概念及创建 "二维数组"Dataframe:是一个表格型的数据结构,包含一组有序的列,其列的值类型可以是数值.字符 ...

  8. Spark与Pandas中DataFrame对比(详细)

      Pandas Spark 工作方式 单机single machine tool,没有并行机制parallelism不支持Hadoop,处理大量数据有瓶颈 分布式并行计算框架,内建并行机制paral ...

  9. pandas 学习 第7篇:DataFrame - 数据处理(应用、操作索引、重命名、合并)

    DataFrame的这些操作和Series很相似,这里简单介绍一下. 一,应用和应用映射 apply()函数对每个轴应用一个函数,applymap()函数对每个元素应用一个函数: DataFrame. ...

随机推荐

  1. 获取Xcode工程所有的类名

    有的时候在需求中需要获取工程中所有的类名.例如在获取工程中继承某个类的列表. 核心代码如下: unsigned ; const char **classes = nil; Dl_info info; ...

  2. element-ui隐藏组件scrollbar的使用

    话不多说,直接上图 总结:el-scrollbar组件设置高度100%包裹住需要滚动的dom结构即可. 再例如: 至于配置props,参见源码https://github.com/ElemeFE/el ...

  3. 【leetcode】485. Max Consecutive Ones

    problem 485. Max Consecutive Ones solution1: class Solution { public: int findMaxConsecutiveOnes(vec ...

  4. Matlab中的rectangle函数

    rectangle函数功能:创建二维矩形对象. rectangle('Position',[x,y,w,h])从点(x,y)开始绘制一个宽w高h的矩形,对坐标轴数据单元指定值.注意,按指定的比例显示矩 ...

  5. mariadb-my.cnf

    [client]port = 3306socket = /tmp/mysql.sockdefault-character-set=utf8 [mysqld]port = 3306socket = /t ...

  6. Intel的CPU漏洞:Spectre

    最近觉得越来越忙,写博客都没精力了.一定是太沉迷农药和刷即刻了…… 17年年底,18年年初,Intel被爆出了Meltdown(熔断)和Spectre(幽灵)漏洞.等Spectre攻击的POC出来以后 ...

  7. HDU - 6080 :度度熊保护村庄 (凸包,floyd最小环)(VJ1900题达成)

    pro:二维平面上,给定N个村庄.M个士兵驻守,把村庄围住,现在我们想留下更多的士兵休息,使得剩下的士兵任然满足围住村庄.N,M<500: sol:即是要找一个最小的环,环把村庄围住. 由于是环 ...

  8. MySQL_优化

    MySQL优化(http://www.cnblogs.com/zengkefu/p/5683438.html) 1.explain+索引. 在你要查询的语句前加explain,看下有没有用到索引,如果 ...

  9. 微信小程序生成二维码工具

    实现的效果 使用(非自适应) 完整代码请参考网址里https://github.com/tomfriwel/weapp-qrcode 页面wxml中放置绘制二维码的canvas: <canvas ...

  10. JS之clientX,clientY,screenX,screenY,offsetX,offsetY区别

    首先需要知道clientX,clientY,screenX,screenY,offsetX,offsetY 是鼠标事件对象下的几个属性. 之前也一直对这些属性搞的稀里糊涂,看文档上说的也是不太理解,反 ...