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 ...
随机推荐
- HDU1789 Doing Homework again 做作业【贪心】
题目链接:https://vjudge.net/problem/HDU-1789 题目大意: 给出N个作业的截至日期,和N个作业不交所扣掉的分数,要求输出扣除分数做少的方案. 解析: 与上一道销售商品 ...
- docker 搭建nginx
docker pull nginx 先用docker 去把镜像拉下来 $ docker run --name tmp-nginx-container -d nginx $ docker cp tmp- ...
- 进程队列补充-创建进程队列的另一个类JoinableQueue
JoinableQueue同样通过multiprocessing使用. 创建队列的另外一个类: JoinableQueue([maxsize]):这就像是一个Queue对象,但队列允许项目的使用者通知 ...
- C#的?和??
1.?? 为了实现Nullable数据类型转换成non-Nullable类型数据,才有的一个操作符: 意义:一变量取值,取符号左边的值,若左边为null,那么取赋值??右边的: 栗子:int a=3 ...
- Java基础之理解Annotation
一.概念 Annontation是Java5开始引入的新特征.中文名称一般叫注解.它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadata)与程序元素(类.方法.成员变量等)进行关 ...
- p4中如何rollback/backout merge/integration
原文: http://answers.perforce.com/articles/KB_Article/How-To-Rollback-An-Integration 当我们需要将一个branch上的代 ...
- LINUX 修改SSH默认22端口的方法
首先修改配置文件 vi /etc/ssh/sshd_config 找到#Port 22一段,这里是标识默认使用22端口,修改为如下: Port 22 Port 50000 然后保存退出 执行/etc/ ...
- 1.2 Stream API
引例: List<String> strList = Arrays.asList("zhaojigang","nana","tianya& ...
- C# ConcurrentDictionary实现
ConcurrentDictionary的源码看了很多遍,今天抽点时间整理一下,它的实现比Dictionary要复杂很多,至于线程安全我觉得比较简单,用的是lock的思想.首先我们来看看它的源码. p ...
- windows下php7.1安装redis扩展以及redis测试使用全过程(转)
最近做项目,需要用到redis相关知识.在Linux下,redis扩展安装起来很容易,但windows下还是会出问题的.因此,特此记下自己实践安装的整个过程,以方便后来人. 一,php中redis扩展 ...