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. html+jquery实现简单图片裁剪

    有了上一篇图片放大镜的铺垫,今天的这个例子是缩小镜,因为裁剪的原图往往很大,不能在工作区域看到全部图片,所以,要有缩小镜来显示,当前裁剪的区域是原图的个部分.按照惯例首先看下效果图: 功能一:载入默认 ...

  2. C语言链表:删除有序链表中大于mink小于maxk的元素

    #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #define LEN sizeof( ...

  3. ietester下ie6.0停止工作问题的修复

    工作时经常用到ie6.0来测试兼容性,不得不吐槽下ie6.0的过分老旧,页面编写完成后,最痛苦的莫过于在ie6.0下测试兼容性. 今天满怀基情的打算开始了一天的工作,却在刚要开始之初,被同事的iete ...

  4. socket 简单了解

    网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.   建立网络通信连接至少要一对端口号(socket).socket本质是编程接口(API),对TCP/IP的 ...

  5. rem,em,与px的比较用法

    在Web中使用什么单位来定义页面的字体大小,至今天为止都还在激烈的争论着,有人说PX做为单位好,有人说EM优点多,还有人在说百分比方便,以至于出现了CSS Font-Size: em vs. px v ...

  6. C#取出重复的方式以及用字典存储以键存储集合的方法

    最近在做项目的时候,发现有些需求需要特别的方式来实现.下面看代码 private List<string> firstType = new List<string>(); pr ...

  7. http协议状态码解析

    关键词 HTTP协议 状态码 摘要 本文列出了HTTP协议的所有的状态码,并对每个状态码的含义作了深入的解释,以便大家参考.   本文列出了HTTP协议的所有的状态码,并对每个状态码的含义作了深入的解 ...

  8. 在n个任意不相同的数中,输出r个数的组合,并且n和r由键盘输入。

    主要是运用递归的思想,函数主要两个参数,point是上一次取到的位置,picked主要记录在数组b中所取的元素的个数,函数的每一轮递归都会取一个数.   package pack; import ja ...

  9. 各种BUG

    1.下载VS2005,版本太低和win10不好兼容 2.由于提前下载好了,visual studio2010,在下载VS2012过程中提示说检测到要更新VS2010才可以,百度后,返回安装上一步,取消 ...

  10. C++ 中用cin方式获取输入的几种常用方式

    一.前言 在C++程序的编写过程中,可能会经常用到cin方式用来捕获输入设备的输入信息.细分的话,主要的方式有:cin>>.cin.get.cin.getline.在借助键盘等字符输入设备 ...