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. MXNet 中的 hybird_forward 的一个使用技巧

    from mxnet.gluon import nn from mxnet import nd class SliceLike(nn.HybridBlock): def __init__(self, ...

  2. collections集合模块 [namedtuple,deque,*]

    collections是Python内建的一个集合模块,提供了许多有用的集合类. namedtuple namedtuple是一个函数, 它用来创建一个自定义的tuple对象,并且规定了 tuple元 ...

  3. doker学习笔记

    1.获取镜像: docker pull mysql 2,查看已安装的镜像: docker image 3,运行: 查看docker运行:docker info(docker run ubuntu ec ...

  4. 20172302《程序设计与数据结构》实验三 敏捷开发与XP实践报告

    课程:<程序设计与数据结构> 班级: 1723 姓名: 侯泽洋 学号:20172302 实验教师:王志强老师 实验日期:2018年5月16日 必修/选修: 必修 1.实验内容 (1)代码规 ...

  5. 不让Editplus保存时java文件时生成.bak文件

    EditPlus是一个强大的编辑工具,不单单是编辑文字强大,很多的刚开始学习编程语言的初学者会选择它,例如 html,js,php,java.但是却遇到一个问题,就是每次编辑完后点保存就会出 现bak ...

  6. RxJava2学习笔记(2)

    上一篇已经熟悉了Observable的基本用法,但是如果仅仅只是“生产-消费”的模型,这就体现不出优势了,java有100种办法可以玩这个:) 一.更简单的多线程 正常情况下,生产者与消费者都在同一个 ...

  7. Android中Local Service最本质的作用是什么?

    把Service等同于thread或process是一个非常常见的误解.需要强调又强调的第一点是,Android的Service是一个Context,并不必然等于一个额外的thread.如果你有仔细看 ...

  8. 细说ASP.NET Windows身份认证

    上篇博客我谈到了一些关于ASP.NET Forms身份认证方面的话题,这次的博客将主要介绍ASP.NET Windows身份认证. Forms身份认证虽然使用广泛,不过,如果是在 Windows Ac ...

  9. ios webview下纯JS实现长按

    app,其中有长按LI列表弹出菜单,只要清楚五个方法就行:ontouchstart.ontouchmove.ontouchend.setTimeout.clearTimeout 1.首先在我们按下手指 ...

  10. Date与Quartz的cron之间的相互转换

    1.概述 最近在写一个Quartz相关的模块,需要实现Date与Quartz的cron之间的相互转换,在网上查了一下竟然没有找到,但是找到一份这样的博客:http://hw1287789687.ite ...