dates=pd.date_range('',periods=6) #创建固定频度的时间序列
df=pd.DataFrame(np.random.randn(6,4),index=dates,columns=list('ABCD')) #创建6*4的随机数,索引,列名称。
df2=pd.DataFrame({'A':pd.Timestamp(''),'B':pd.Series(1)})#字典创建Dataframe,假如字典的数据长度不同,以最长的数据为准。
df2.dtypes #查看各行的数据格式
df2.head() df2.tail(5) #查看前、后几列
df.columns df.value #查看列名、value
df.describe() #查看描述性的统计,比如每一列的count、mean、std(标准差)...
df.T df.sort(columns='C') #转秩、排序
df['A'] df[1:3]#选择A列数据,选择1-2行数据,切片操作得到的是行数据。
df.loc[:,['A','B']] #选择多列数据
df.loc['':'',['A','B']] #选择局部区域
df.at[dates[0],'A'] #选择某个值
df.iloc[3] df.iloc[1,1]#提取第四行数据,取第2行第2列的这个数
df.iloc[3:5,0:2] #像array一样切片操作
df.iloc[[1,2,4],[0,2]] #提取不连续的行和列
df.iat[1,1]#专门取某个数,效率比较高
df[(df.D>0)&(df.C<0)] #选择D列数据大于0的行
df[['A','B']][(df.D>0)&(df.C<0)]#选择D列数据大于0的行,只返回A,B两列
df['D'].isin(alist)#alist是一个预先定义的列表,把要筛选的值写到列表中,查找D数据中含有alist的值
os.getcwd()#获得当前的工作目录
df=pd.read_csv('',encoding='gbk',sep=',')#读取csv文件
counts=df[u'专业名称'].value_counts() #计数统计
plt=counts.plot(kind='bar').get_figure()
plt.savefig('d/plot.png') #画图
good=df[df[u'高考分数']>520] #筛选
good_counts=good[u'专业名称'].value_counts()
per=good_counts/counts #计算百分比,直接利用矩阵的除法
df.groupby('A').first() #按A列分组,输出每一组的第一行数据
df.groupby(['A','B']) #按两列分组
#创建函数,作为分组标准。 下例:如果列名是abem中的之一,就分为组别v反之为w
def get_type(letter):
if letter.lower() in 'abem':
return 'v'
else:
return 'w'
grouped=df.groupby(get_type,axis=1) import pandas.util.testing as tm
colors=tm.choice(['red','green'],size=10)
foods=tm.choice(['eggs','ham'],size=10) #随机创建两个数组
index=pd.MultiIndex.from.arrays([colors,foods],names=['color','food']) #创建MultiIndex对象,然后创建DataFrame对象
df.pd.DataFrame(np.random.randn(10,2),index=index)
print df.query('color=="red"') #查询
grouped=df.groupby(level='food')#在分组中使用索引
df.index.names=[None,None]
print df.query('ilevel_0=="red"')#删除了索引名称,只能使用ilevel_0表示第一个索引

dataframe使用笔记的更多相关文章

  1. Pandas DataFrame学习笔记

    对一个DF r1  r2  r3 c1 c2 c3 选行:  df['r1']  df['r2':'r2']  #包含r2  df[df['c1']>5] #按条件选 选列:  df['c1'] ...

  2. pandas库学习笔记(二)DataFrame入门学习

    Pandas基本介绍——DataFrame入门学习 前篇文章中,小生初步介绍pandas库中的Series结构的创建与运算,今天小生继续“死磕自己”为大家介绍pandas库的另一种最为常见的数据结构D ...

  3. 学习笔记TF043:TF.Learn 机器学习Estimator、DataFrame、监督器Monitors

    线性.逻辑回归.input_fn()建立简单两个特征列数据,用特证列API建立特征列.特征列传入LinearClassifier建立逻辑回归分类器,fit().evaluate()函数,get_var ...

  4. Spark笔记-DataSet,DataFrame

    DataSet:面向对象的,从JVM进行构建,或从其它格式进行转化 DataFrame:面向SQL查询,从多种数据源进行构建,或从其它格式进行转化 RDD DataSet DataFrame互转 1. ...

  5. 学习笔记13—python DataFrame获取行数、列数、索引及第几行第几列的值

    1. df=DataFrame([{‘A’:’11’,’B’:’12’},{‘A’:’111’,’B’:’121’},{‘A’:’1111’,’B’:’1211’}]) print df.column ...

  6. Pandas DataFrame笔记

    1.属性方式,可以用于列,不能用于行 2.可以用整数切片选择行,但不能用单个整数索引(当索引不是整数时) 3.直接索引可以使用列.列集合,但不能用索引名索引行 用iloc取行,得到的series: d ...

  7. 【Python学习笔记】Pandas库之DataFrame

    1 简介 DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表. 或许说它可能有点像matlab的矩阵,但是matlab的矩阵只能放数值型值(当然matla ...

  8. 利用python数据分析panda学习笔记之DataFrame

    2 DataFrame a:通过传入一个等长的列表构成DataFrame 自动加上索引 data={'state':['ohio','ohio','ohio','Nevada','Nevada'], ...

  9. Python笔记9-----不等长列表转化成DataFrame

    1.不同长度的列表合并成DataFrame. 法1: ntest=['a','b'] ltest=[[1,2],[4,5,6]] 先变成等长的列表:(a:1),(a:2),(b:4),(b:5),(b ...

随机推荐

  1. c++实现web服务框架

    lamada表达式 声明一个返回数组指针的函数            返回指针数组的函数形式如下所示:    括号必须存在 注意->后不能加() Lambda表达式  

  2. qt用mingw编译时报错 multiple definition of

    网上相关回答不少,但过于简单,这里做一下记录. qt用mingw编译程序时报“multiple definition of …”这个错误,错误信息大概是如下图所示: 1 2 3 首先,检查自己的程序是 ...

  3. 你真的了解[super ]关键字吗?

    前言 此篇文章是看了阮老师的es6教程,看到super关键字的时候觉得有必要总结梳理一下,原文还是参考 ECMAScript 6入门. 正文 super 这个关键字,既可以当作函数使用,也可以当作对象 ...

  4. kafka监控工具

    Kafka Web Conslole Kafka Manager KafkaOffsetMonitor.

  5. leetcode_目录

    3Sum Closest 3Sum 4Sum Add Binary Add Two Numbers Anagrams Balanced Binary Tree Best Time to Buy and ...

  6. php CI框架实现验证码功能和增强验证码安全性实战教程

    php CI框架实现验证码功能和增强验证码安全性实战教程 CodeIgniter简称CI是最流行的一个php MVC框架之一,本人讲从实际项目使用中写系列实战经验,有别与其他的理论讲解文章,会附上实战 ...

  7. SNMP学习笔记之SNMPv3的配置和认证以及TroubleShooting

    0x00 增加snmp v3用户 增加用户的时候,必须要停止SNMP服务. # service snmpd stop # net-snmp-config --create-snmpv3-user -r ...

  8. ELK学习笔记之Logstash和Filebeat解析对java异常堆栈下多行日志配置支持

    0x00 概述 logstash官方最新文档.假设有几十台服务器,每台服务器要监控系统日志syslog.tomcat日志.nginx日志.mysql日志等等,监控OOM.内存低下进程被kill.ngi ...

  9. servlet+jsp+java实现Web应用

    servlet+jsp+java实现Web应用 环境: 1,eclipse 2,tomcat3,eclipse tomcat 插件 开发过程: 1,建立一个Dynamic Web Project 2, ...

  10. 如何在 Linux 中挂载 ISO 文件

    在 Windows 中,我们常常使用 Daemon Tools 和 Virtual CloneDrive 等虚拟光驱软件挂载光盘镜像,下面我们一起来学习在 Linux 中如何挂载 ISO 文件. 在 ...