pandas 学习总结
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 学习总结的更多相关文章
- 用scikit-learn和pandas学习线性回归
对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了. 1. 获取数据,定义问题 没有数据,当然没法研究机器学习 ...
- Pandas 学习笔记
Pandas 学习笔记 pandas 由两部份组成,分别是 Series 和 DataFrame. Series 可以理解为"一维数组.列表.字典" DataFrame 可以理解为 ...
- Python pandas学习总结
本来打算学习pandas模块,并写一个博客记录一下自己的学习,但是不知道怎么了,最近好像有点急功近利,就想把别人的东西复制过来,当心沉下来,自己自觉地将原本写满的pandas学习笔记删除了,这次打算写 ...
- pandas学习(数据分组与分组运算、离散化处理、数据合并)
pandas学习(数据分组与分组运算.离散化处理.数据合并) 目录 数据分组与分组运算 离散化处理 数据合并 数据分组与分组运算 GroupBy技术:实现数据的分组,和分组运算,作用类似于数据透视表 ...
- pandas学习(创建多层索引、数据重塑与轴向旋转)
pandas学习(创建多层索引.数据重塑与轴向旋转) 目录 创建多层索引 数据重塑与轴向旋转 创建多层索引 隐式构造 Series 最常见的方法是给DataFrame构造函数的index参数传递两个或 ...
- pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)
pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...
- pandas学习(创建数据,基本操作)
pandas学习(一) Pandas基本数据结构 Series类型数据 Dataframe类型 基本操作 Pandas基本数据结构 两种常用数据结构: Series 一维数组,与Numpy中的一维ar ...
- 用 scikit-learn 和 pandas 学习线性回归
用 scikit-learn 和 pandas 学习线性回归¶ from https://www.cnblogs.com/pinard/p/6016029.html 就算是简单的算法,也需要跑通整 ...
- pandas学习系列(一):时间序列
最近参加了天池的一个机场航空人流量预测大赛,需要用时间序列来预测,因此开始使用python的pandas库 发现pandas库功能的确很强大,因此在这记录我的pandas学习之路. # -*- cod ...
随机推荐
- MXNet 中的 hybird_forward 的一个使用技巧
from mxnet.gluon import nn from mxnet import nd class SliceLike(nn.HybridBlock): def __init__(self, ...
- collections集合模块 [namedtuple,deque,*]
collections是Python内建的一个集合模块,提供了许多有用的集合类. namedtuple namedtuple是一个函数, 它用来创建一个自定义的tuple对象,并且规定了 tuple元 ...
- doker学习笔记
1.获取镜像: docker pull mysql 2,查看已安装的镜像: docker image 3,运行: 查看docker运行:docker info(docker run ubuntu ec ...
- 20172302《程序设计与数据结构》实验三 敏捷开发与XP实践报告
课程:<程序设计与数据结构> 班级: 1723 姓名: 侯泽洋 学号:20172302 实验教师:王志强老师 实验日期:2018年5月16日 必修/选修: 必修 1.实验内容 (1)代码规 ...
- 不让Editplus保存时java文件时生成.bak文件
EditPlus是一个强大的编辑工具,不单单是编辑文字强大,很多的刚开始学习编程语言的初学者会选择它,例如 html,js,php,java.但是却遇到一个问题,就是每次编辑完后点保存就会出 现bak ...
- RxJava2学习笔记(2)
上一篇已经熟悉了Observable的基本用法,但是如果仅仅只是“生产-消费”的模型,这就体现不出优势了,java有100种办法可以玩这个:) 一.更简单的多线程 正常情况下,生产者与消费者都在同一个 ...
- Android中Local Service最本质的作用是什么?
把Service等同于thread或process是一个非常常见的误解.需要强调又强调的第一点是,Android的Service是一个Context,并不必然等于一个额外的thread.如果你有仔细看 ...
- 细说ASP.NET Windows身份认证
上篇博客我谈到了一些关于ASP.NET Forms身份认证方面的话题,这次的博客将主要介绍ASP.NET Windows身份认证. Forms身份认证虽然使用广泛,不过,如果是在 Windows Ac ...
- ios webview下纯JS实现长按
app,其中有长按LI列表弹出菜单,只要清楚五个方法就行:ontouchstart.ontouchmove.ontouchend.setTimeout.clearTimeout 1.首先在我们按下手指 ...
- Date与Quartz的cron之间的相互转换
1.概述 最近在写一个Quartz相关的模块,需要实现Date与Quartz的cron之间的相互转换,在网上查了一下竟然没有找到,但是找到一份这样的博客:http://hw1287789687.ite ...