pandas  学习总结

作者:csj 更新时间:2018.04.02 shenzhen

email:59888745@qq.com

home: http://www.cnblogs.com/csj007523/p/8149929.html

1.import

2.export

3.create object

4.vewing,inspecting data

5.select data

6.data cleaning

7.filter,sort,groupby

8.join:merge,concat

import:

pd.read_csv('path')

pd.read_excel('path')

pd.read_table('path')

pd.read_sql(query,connstr)

read_html(url)

read_json(jsonstr)

pd.DataFrame(dict)

exporting:

df.to_csv(filename)

df.to_excel(filename)

df.to_json(filename)

df.to_sql(talbename,connstr)

create object:

pd.DataFrame(np.random.rand(20,4))

pd.Series(mylist)

df.index=pd.date_range('2018/01/01',periods=df.shape[0])

viewing/inspecting data:

df.head()

df.tail()

df.shape()

df.info()

df.describe()

df.apple()

df.columns

df.index s.value_counts()

select data:

df[col]

df[[col1,col2]]

df.col1

df.loc[col1/indexname]

df.iloc[0,:]

df.iloc[0,0]

data cleaning:

pd.isnull()

pd.notnull()

df.columns=['a','b','c','d']

df.dropna(how='any')

df.dropna(how='all')

df.dropna()

df.fillna(x)

df.fillna(s.mean())

s.astype(float)

s.replace(1,'one')

s.replace([1,3],['one','three'])

df.rename(columns=lambda x:x+1)

df.rename(columns={'oldcolname':'newcolumns'})

df.rename(index=lambda x:x+1)

df.set_index('colu1')

filter,sort ,groupby:

df[df[col]>10]

df[df[col] > 5 & df[col] <10]

df.sort_values(col1)

df.sort_values(col1,ascending=False)

df.sort_values([col1,col2],ascending=[False,True])

df.groupby([col1,col2])

df.groupby(col).agg(np.mean)

df.apply(np.mean)

df.apply(np.max,axis=1)  #across each row

df.pivot_table(index=col1,values=[col2,col3],aggfunc=mean)

join/combine:

pd.merge(lef,right,how='left/right/outer/inner/',on=['key1','key2'])  横向连接,用于将多个dataframe通过某个相同的键合并

为一个 pd.concat([df1,df2],axis=1)  可横向可纵向

Statistics:

df.describe() df.mean() df.corr() df.count() df.max() df.min() df.median() df.std()

pandas 学习总结的更多相关文章

  1. 用scikit-learn和pandas学习线性回归

    对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了. 1. 获取数据,定义问题 没有数据,当然没法研究机器学习 ...

  2. Pandas 学习笔记

    Pandas 学习笔记 pandas 由两部份组成,分别是 Series 和 DataFrame. Series 可以理解为"一维数组.列表.字典" DataFrame 可以理解为 ...

  3. Python pandas学习总结

    本来打算学习pandas模块,并写一个博客记录一下自己的学习,但是不知道怎么了,最近好像有点急功近利,就想把别人的东西复制过来,当心沉下来,自己自觉地将原本写满的pandas学习笔记删除了,这次打算写 ...

  4. pandas学习(数据分组与分组运算、离散化处理、数据合并)

    pandas学习(数据分组与分组运算.离散化处理.数据合并) 目录 数据分组与分组运算 离散化处理 数据合并 数据分组与分组运算 GroupBy技术:实现数据的分组,和分组运算,作用类似于数据透视表 ...

  5. pandas学习(创建多层索引、数据重塑与轴向旋转)

    pandas学习(创建多层索引.数据重塑与轴向旋转) 目录 创建多层索引 数据重塑与轴向旋转 创建多层索引 隐式构造 Series 最常见的方法是给DataFrame构造函数的index参数传递两个或 ...

  6. pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)

    pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...

  7. pandas学习(创建数据,基本操作)

    pandas学习(一) Pandas基本数据结构 Series类型数据 Dataframe类型 基本操作 Pandas基本数据结构 两种常用数据结构: Series 一维数组,与Numpy中的一维ar ...

  8. 用 scikit-learn 和 pandas 学习线性回归

      用 scikit-learn 和 pandas 学习线性回归¶ from https://www.cnblogs.com/pinard/p/6016029.html 就算是简单的算法,也需要跑通整 ...

  9. pandas学习系列(一):时间序列

    最近参加了天池的一个机场航空人流量预测大赛,需要用时间序列来预测,因此开始使用python的pandas库 发现pandas库功能的确很强大,因此在这记录我的pandas学习之路. # -*- cod ...

随机推荐

  1. vue 如何拿到后台传回的富文本中的img,进行9宫格排列展示以及相关处理

    描述: res.data.list 返回的数组, 数组中的每个对象有一个 content,就是传回来的富文本的内容,要拿到这里面的所有的img,进行9宫格排列处理: 1.let img = this. ...

  2. Bootstrap 分页、标签、徽章、超大屏幕、页面标题

    分页(pagination), 是一种无序列表 1.默认的分页(.pagination) 代码示例: <ul class="pagination"> <li> ...

  3. HDU.6155.Subsequence Count(线段树 矩阵)

    题目链接 首先考虑询问[1,n]怎么做 设 f[i][0/1]表示[1,i]以0/1结尾的不同子序列个数 则 \(if(A[i]) f[i][1] = f[i-1][0] + f[i-1][1] + ...

  4. Python3练习题系列(04)

    题目: 制作一个游戏 知识点: 函数.if_elif_else, while, exit 游戏图谱: 游戏代码: from sys import exit def gold_room(): print ...

  5. 19 个必须知道的 Visual Studio 快捷键

    项目相关的快捷键 Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = 显示Solution Explorer(解决方案资源管理器) Shift + Alt+ C = 添加 ...

  6. iOS离屏渲染之优化分析

    在进行iOS的应用开发过程中,有时候会出现卡顿的问题,虽然iOS设备的性能越来越高,但是卡顿的问题还是有可能会出现,而离屏渲染是造成卡顿的原因之一.因此,本文主要分析一下离屏渲染产生的原因及避免的方法 ...

  7. c# sqlite 数据库加密

    c# sqlite 数据库加密 2010-05-29 10:55 用了ADO.NET 2.0 SQLite Data Provider这样可以直接利用它来创建一个加密的sqlite数据库.有关c#代码 ...

  8. EasyUI学习总结(四)——parser源码分析

    parser模块是easyloader第一个加载的模块,它的主要作用,就是扫描页面上easyui开头的class标签,然后初始化成easyui控件. /** * parser模块主要是解析页面中eas ...

  9. Maven项目搭建-Eclipse版

    一.Maven简单介绍 Maven是基于Java平台的项目构建(mvn clean install).依赖管理(中央仓库,Nexus)和项目信息管理的项目管理工具. Maven是基于项目对象模型(PO ...

  10. 本地项目文件夹同步到GitLab的操作步骤

    一.需求 本地有一个微信小程序的项目源码,只是文件夹的形式,包括一些js和一些页面,想把这个文件夹用GitLab管理,于是就需要把本地文件夹push到服务器的GitLab上面 二.操作 2.1:本地文 ...