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. Beta冲刺(2/7)

    目录 摘要 团队部分 个人部分 摘要 队名:小白吃 组长博客:hjj 作业博客:beta冲刺(2/7) 团队部分 后敬甲(组长) 过去两天完成了哪些任务 整理博客 做了点商家数据表格 接下来的计划 做 ...

  2. rsync3.1.3的编译安装和常用操作

    .rsync的编译安装 .tar.gz cd rsync- ./configure --prefix=/usr/local/rsync- --disable-ipv6 .rsync的配置文件: [ro ...

  3. SQL中笛卡尔积-cross join的用法

    在数学中,笛卡尔乘积是指两个集合X和Y的笛卡尓积(Cartesian product),又称直积,表示为X × Y,第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员 假设集合A={a ...

  4. docker简单介绍---网络端口管理

    一.查看docker支持的网络类型 docker network ls bridge:容器使用虚拟交换机的进行通信 host:使用宿主机的网络 none:只给容器分配一个lo的网卡,无法和外界进行通信 ...

  5. Linux /etc/sudoers 文件详解

    [root@test ~]# cat /etc/sudoers## Sudoers allows particular users to run various commands as## the r ...

  6. SSH 架构

    这几天学习了 ssh 架构,中间出了好多错误,现在终于整理好了,就记录下来 ssh机构的框架构成,以及它们的作用 struts2 :这个框架主要用做控制处理的,其核心是 Contraller ,即 A ...

  7. Selenium API常用方法

    driver.findElements()//定位一组List元素集合 driver.findElement()//定位一个元素 driver.getTitle()//获取页面标题 driver.ge ...

  8. 数字滚动特效 NumScroll

    1.使用前先引入jquery2.前端学习群:814798690 下载地址 https://github.com/chaorenzeng/jquery.numscroll.js.git 快速使用 1.引 ...

  9. easyui提交form表单接受数据处理、

    $('#Form').form('submit', { url:"withdrawal/bankAuthenticate4List.do", onSubmit: function( ...

  10. Spark SQL大数据处理并写入Elasticsearch

    SparkSQL(Spark用于处理结构化数据的模块) 通过SparkSQL导入的数据可以来自MySQL数据库.Json数据.Csv数据等,通过load这些数据可以对其做一系列计算 下面通过程序代码来 ...