学习Python, 当然少不了pandas,pandas是python数据科学中的必备工具,熟练使用pandas是从sql boy/girl 跨越到一名优秀的数据分析师傅的必备技能。

这篇pandas常用操作总结帮大家回顾下pandas的常用语法,尤其是我们分析数据时常用的方法。文末还有pandas的cheat sheet,帮助你记住常见的pandas操作。

常用操作分类:

  1. 从不同文件中导入数据
  2. 以不同的文件格式导出DataFrames
  3. 查看DataFrame信息
  4. 选择数据的特定子集
  5. 数据清理命令
  6. 分组、排序和过滤数据
  7. 其他

以下df代表DataFrame对象,ser代表Series对象。

从不同文件中导入数据

  • 从CSV文件中读取所有数据:pd.read_csv(file_name)
  • 从一个分隔的文本文件(如TSV)中读取所有数据:pd.read_table(file_name)
  • 从Excel表读取:pd.read_excel(file_name)
  • 从SQL数据库中读取数据:pd.read_sql(query, connectionObject)
  • 从JSON格式的字符串或URL中获取数据:pd.read_json(jsonString)
  • 要获取剪贴板的内容:pd.read_clipboard()

以不同的文件格式导出DataFrames

  • 将DataFrame写入CSV文件:df.to_csv(file_name)
  • 将DataFrame写入Excel文件:df.to_excel(file_name)
  • 将一个DataFrame写入一个SQL表:df.to_sql(tableName, connectionObject)
  • 将DataFrame写入JSON格式的文件:df.to_json(file_name)

查看DataFrame信息

  • 获取所有与索引、数据类型和内存相关的信息:http://df.info()
  • 要提取DataFrame的起始n行:df.head(n)
  • 要提取DataFrame中最后n行:df.tail(n)
  • 要提取DataFrame中可用的行数和列数:df.shape。
  • 总结数字列的统计:df.describe()
  • 要查看唯一值及其计数:ser.value_counts(dropna=False)

选择数据的特定子集

  • 提取第一行:df.iloc[0,:]。
  • 提取第一列的第一个元素: df.iloc[0,0]
  • 返回标签为'col'的列作为Series:df[col]。
  • 返回具有新数据框架的列:df[[col1,col2]]。
  • 按位置选择数据:ser.iloc[0]。
  • 按索引选择数据:ser.loc['index_one']

数据清理命令

  • 同时重命名所有列:df.rename(columns = lambda x: x + '1')
  • 选择性地重命名列:df.rename(columns = {'oldName': 'newName'})
  • 重命名所有的索引:df.rename(index = lambda x: x + 1)
  • 按顺序重命名列:df.columns = ['x', 'y', 'z']。
  • 检查是否存在空值,相应地返回一个布尔值arrray:pd.isnull()
  • pd.isnull()的反向:pd.notnull()
  • 删除所有包含空值的记录:df.dropna()
  • 删除所有包含空值的列:df.dropna(axis=1)
  • 用'n'代替每个空值:df.fillna(n)
  • 要将series的所有数据类型转换为浮点数:ser.astype(float)
  • 将所有数字1替换为'1',将3替换为'3':ser.replace([1,2], ['one', 'two'])

分组、排序和过滤数据

  • 返回列值的groupby对象:df.groupby(colm)
  • 返回多列值的groupby对象:df.groupby([colm1, colm2])
  • 按升序排序(按列):df.sort_values(colm1)
  • 要按降序排序(按列):df.sort_values(colm2, ascending=False)
  • 提取列值大于0.6的行:df[df[colm] > 0.6]

其他

  • 将第一个DataFrame的行添加到第二个DataFrame的末尾:df1.append(df2)
  • 将第一个DataFrame的列添加到第二个DataFrame的末尾:pd.concat([df1,df2],axis=1)
  • 返回所有列的平均值:df.mean()
  • 返回非空值的数量:df.count()

Pandas cheat sheet,简单两页全面地总结了pandas的使用方法。

完整版:pandas cheat sheet

pandas 按字符串肚脐眼 读取数据_十分钟学习pandas! pandas常用操作总结!相关推荐

  1. 【Unity3D读取数据】(一)Txt文档操作(创建、读取、写入、修改)

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 QQ群:1040082875 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有 ...

  2. 十分钟学习自然语言处理概述

    十分钟学习自然语言处理概述 摘要:近来自然语言处理行业发展朝气蓬勃,市场应用广泛.笔者学习以来写了不少文章,文章深度层次不一,今天因为某种需要,将文章全部看了一遍做个整理,也可以称之为概述.关于这些问 ...

  3. vue-cli十分钟学习入门笔记――开袋即食

    vue-cli十分钟学习之从一无所知到糊里糊涂 文章目录 vue-cli十分钟学习之从一无所知到糊里糊涂 1.为啥要学习Vue? 2.NodeJs安装及其npm介绍 3.脚手架vue-cli安装 4. ...

  4. linux pandas教程_十分钟入门 Pandas

    # 十分钟入门 Pandas 本节是帮助 Pandas 新手快速上手的简介.烹饪指南里介绍了更多实用案例. 本节以下列方式导入 Pandas 与 NumPy: In [1]: import numpy ...

  5. pandas 空字符串与na区别_关于python:Pandas用空白/空字符串替换NaN

    我有一个Pandas Dataframe,如下所示: 1    2       3 0  a  NaN    read 1  b    l  unread 2  c  NaN    read 我想用空 ...

  6. python 按列读取数据并写入txt_Python数据分析之Pandas读写外部数据文件!

    阅读目录 1 引言 2 文本文件(txt.csv) 2.1 读取数据 2.2 写入数据 3 excel文件 3.1 读取数据 3.2 写入数据 4 mysql数据库 5 mongodb数据库 1 引言 ...

  7. 多线程不重复读取数据_用 PHP 实现多线程编程

    (给PHP开发者加星标,提升PHP技能) 转自:腾讯云(枕边书) cloud.tencent.com/developer/article/1012783 1.前言 前些天帮同事查一个问题,第一次接触到 ...

  8. pandas 批量修改列名_十分钟想搞定pandas?

    用Python做数据分析,Numpy,Pandas,matplotlib是怎么也绕不开的三个包,我最开始学习pandas是看的<利用Python进行数据分析>,看了好几遍,不是从头到尾看了 ...

  9. python处理期货数据_用python中的Pandas库实现一个商品期货网格策略

    Pandas是基于NumPy的一种工具,该工具是为了解决数据分析任务而创建的.Pandas纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具.pandas提供了大量能使我们快速便捷 ...

最新文章

  1. 28 岁退休程序员自述:不是富二代,行政专业出身,非典型程序员
  2. Mybatis知识(4)
  3. RAP、Mock.js、Vue.js、Webpack
  4. cxf开发实践(添加SSL支持)
  5. 计算1至1000间的合数c语言,输出1000以内的素数的算法(实例代码)
  6. ip_vs实现分析(7)
  7. C/C++ / 函数调用规则汇总
  8. python 两个数据框合并计算_一文掌握Excel、SQL、Python【数据合并】大法!
  9. 小样本不符合正态_金莎相亲对象不符合择偶标准,男生单眼皮小眼睛,但她还是沦陷了...
  10. beaglebone black的cape管理
  11. 访问iis元数据库失败怎么解决
  12. 今日直播预告 | 漏洞审计介绍
  13. WEB安全之:密码穷举破解
  14. failed creating java jvm.dll
  15. MSXML的不同版本使用
  16. 使用python脚本和crontab在阿里云实现优矿自动签到
  17. 程序员兼职网站(自由职业)
  18. Pointnet语义分割任务S3DIS数据集上的注意点
  19. 一文了解SAP IBP是什么?
  20. 含文档+PPT+源码等]精品基于ssm的足球联赛管理系统的设计与实现vue[包运行成功]计算机Java毕业设计SSM项目源码

热门文章

  1. [云炬创业管理笔记]第一章测试4
  2. [云炬创业基础笔记] 第三章测试2
  3. ODS:输出多样化采样,有效增强白盒和黑盒攻击的性能 | NeurIPS 2020
  4. 本期赠书中奖名单公布
  5. 吴恩达《优化深度神经网络》精炼笔记(3)-- 超参数调试、Batch正则化和编程框架...
  6. zepto的ajax使用,Ajax的实现及使用-zepto
  7. xamarin textview 滚动_微软测试 Win10 Chromium/Edge CPU 优化和滚动新效果
  8. 高级C语言教程-C语言函数setjmp()函数
  9. phonegap在android中如何退出程序
  10. 为eclipse在线安装svn