1、条件查询:

result = df.query("((a==1 and b=="x") or c/d < 3))"
print result

2、遍历

a)根据索引遍历

for  idx in df.index:
  dd = df.loc[idx]
  print(dd)

b)按行遍历

for  i in range(0, len(df)):
  dd = df.iloc[i]
  print(dd)

3、对某列求均值

# 对“volume”列求均值
result = df["volume"].mean()
print(result)

4、按照指定列排序

result_df = df.sort_values(by="sales" , ascending=False)
print(result_df)

注意,以上排序,非inplace

5、提取特定行/列

如有数据:

        code          update_time  last_price  open_price     ...      option_gamma  option_vega  option_theta  option_rho
42 HK.02018 2019-04-26 16:08:05 53.70 52.70 ... NaN NaN NaN NaN
15 HK.00151 2019-04-26 16:08:33 6.17 6.21 ... NaN NaN NaN NaN
14 HK.00101 2019-04-26 16:08:05 18.22 18.26 ... NaN NaN NaN NaN

a)按照索引提取

提取索引为42的行和所有列:

result = df.loc[42, :]
print(result)

result:

        code          update_time  last_price  open_price     ...      option_gamma  option_vega  option_theta  option_rho
42 HK.02018 2019-04-26 16:08:05 53.70 52.70 ... NaN NaN NaN NaN

提取索引为15,42的数据,  只需要code和update_time两列:

result = df.loc[[15,42], [0,2]]
print(result)

result:

        code          update_time
42 HK.02018 2019-04-26 16:08:05
15 HK.00151 2019-04-26 16:08:33

b)按行提取

提取第2行的数据, 所有列:

result = df.iloc[1, :]
print(result)

result:

       code          update_time  last_price  open_price     ...      option_gamma  option_vega  option_theta  option_rho
15 HK.00151 2019-04-26 16:08:33 6.17 6.21 ... NaN NaN NaN NaN

提取前2行的数据, 所有列:

result = df.iloc[0:2, :]
print(result)

result:

        code          update_time  last_price  open_price     ...      option_gamma  option_vega  option_theta  option_rho
42 HK.02018 2019-04-26 16:08:05 53.70 52.70 ... NaN NaN NaN NaN
15 HK.00151 2019-04-26 16:08:33 6.17 6.21 ... NaN NaN NaN NaN

提取1、3行的数据, 只需要code和update_time两列:

result = df.iloc[[0,2], 0:2]
print(result)

result:

        code          update_time
42 HK.02018 2019-04-26 16:08:05
14 HK.00101 2019-04-26 16:08:05

6、复制列

df['col']=df['col1']+df['col2']

将col1和col2相除的结果加1,放入新的newcol列:

df['newcol']=df['col1']/df['col2']+1

7、重命名列

new_df = df.rename(columns={'oldName1': 'newName1', 'oldName2': 'newName2'})
print(new_df)
# inplace模式
df.rename(columns={'oldName1': 'newName1', 'oldName2': 'newName2'}, inplace=True)
print(df)

python panda::dataframe常用操作的更多相关文章

  1. 二叉树的python可视化和常用操作代码

    二叉树是一个重要的数据结构, 本文基于"二叉查找树"的python可视化 pybst 包, 做了一些改造, 可以支持更一般的"二叉树"可视化. 关于二叉树和二叉 ...

  2. pyspark dataframe 常用操作

    spark dataframe派生于RDD类,但是提供了非常强大的数据操作功能.当然主要对类SQL的支持.   在实际工作中会遇到这样的情况,主要是会进行两个数据集的筛选.合并,重新入库.   首先加 ...

  3. Python数据类型及常用操作

    Python字符串类型 1.用途: 用来记录有描述性的状态.比如:人名,地址等. 2.定义方式: 创建字符串非常简单,在‘ ’,“ ”,‘’‘ ’‘’内一填写一系列的字符例如:msg='hello' ...

  4. Python字符串的常用操作学习

    >>> name = "I love my job!" >>> name.capitalize() #首字母大写 'I love my job! ...

  5. Python集合的常用操作

    字典常用的就是,他的去重. set集合是python的一个基本数据类型. set中的元素是不重复的.⽆无序的.⾥面的元素必须是可hash的(int, str, tuple,bool). 我们可以这样来 ...

  6. python os 模块常用操作

    python 2.7 os 常用操作 官方document链接 文件和目录 os.access(path, mode) 读写权限测试 应用: try: fp = open("myfile&q ...

  7. 初识python: 字符串常用操作

    直接上代码示例: #!/user/bin env python # author:Simple-Sir # time:20180914 # 字符串常用操作 name = 'lzh lyh' print ...

  8. R 语言的Dataframe常用操作

    上节我们简单介绍了Dataframe的定义,这节我们具体来看一下Dataframe的操作 首先,数据框的创建函数为 data.frame( ),参考R语言的帮助文档,我们来了解一下data.frame ...

  9. python selenium 基本常用操作

    最近学习UI自动化,把一些常用的方法总结一下,方便自己以后查阅需要.因本人水平有限,有不对之处多多包涵!欢迎指正! 一.xpath模糊匹配定位元素 武林至尊,宝刀屠龙刀(xpath),倚天不出(css ...

随机推荐

  1. .Net三层架构

    .Net三层架构   希望朋友们留下自己对三层架构的理解... 三层体系结构的概念 用户界面表示层(USL) 业务逻辑层(BLL) 数据访问层(DAL) BLL将USL与DAL隔开了,并且加入了业务规 ...

  2. java控台输入

    import java.util.Scanner;//访问util包的Scanner(控台输入) public class HelloWorld {public static void main(St ...

  3. Mac osx 系统安装 eclipse

    https://jingyan.baidu.com/article/fea4511ad46a86f7bb9125e5.html

  4. Java面试题复习笔记(Web方向)

    1.Http中get和post请求的区别? 共同点:都是Http请求方式,用户可以通过不同的请求方式完成对资源(Url)的操作.具体来讲就是get一般用于获取/查询资源信息,post用于更新资源信息. ...

  5. Emacs Org-mode 1 下载、安装、基本使用

    1.1 总述 Org 是一种帮助我们做笔记.日常事件或者项目计划的快速高效的文本格式系统. Org 有以下特点: Org mode 基于组织结构(outline-mode)对文本进行组织.具有良好的快 ...

  6. el内部支持运算表达式,外部不支持

    el内部支持运算表达式 如"${pageBean.currentPage==1}" "${pageBean.currentPage+1}"........ 外部 ...

  7. Codeforces 811C Vladik and Memorable Trip (区间异或最大值) (线性DP)

    <题目链接> 题目大意: 给你n个数,现在让你选一些区间出来,对于每个区间中的每一种数,全部都只能出现在这个区间. 每个区间的价值为该区间不同的数的异或值之和,现在问你这n个数最大的价值是 ...

  8. Python中何时使用断言

    这个问题是如何在一些场景下使用断言表达式,通常会有人误用它,所以我决定写一篇文章来说明何时使用断言,什么时候不用. 为那些还不清楚它的人,Python的assert是用来检查一个条件,如果它为真,就不 ...

  9. EL表达式与标签的使用

  10. IDEA_构建Maven项目报错(1)

    构建报错: [ERROR] Plugin org.apache.maven.plugins:maven-archetype-plugin:RELEASE or one of its dependenc ...