pandas在进行数据存储与输出时会做一些相应的操作

1.*索引:将一个列或多个列读取出来构成DataFrame,其中涉及是否从文件中读取索引以及列名

2 *类型推断和数据转换:包括用户自定义的转换以及缺失值标记

3 *日期解析

4*迭代:针对大文件进行逐块迭代。这个是Pandas和Python原生的csv库的最大区别

5 *不规整数据问题:跳过一些行,或注释等等
 
 import pandas as pd
import numpy as np pd.read_csv('ch04/ex1.csv') # 它输出的是DataFrame
pd.read_table('ch04/ex1.csv',sep=',') # 它的效果和上一行一样 pd.read_csv('ch04/ex2.csv',header=None,names=['a','b','c','d','msg'])
# 它为读取的文件添加列索引 pd.read_csv('ch04/ex2.csv',header=None,
names=['a','b','c','d','msg'],index_col=['msg','b'])
# 为文件添加列索引后,又将'msg','b'两列变为行索引 pd.read_table('ch04/ex3.csv',sep='\s+')
# 文件中的分隔符用到正则表达式sep='\s+' pd.read_csv('ch04/ex5.csv',
na_values={'message':['NA','NULL','foo'],'something':['two']})
# 读出的文件没有值的默认为NaN值,
# na_values通过字典形式表示message与something中需要变为NaN值的一些位置 pd.read_csv('ch04/ex6.csv',nrows=10)
# 表示只读取10行 # 如果要取出每个索引出现的次数,可以利用chunksize
tr = pd.read_csv('ch04/ex6.csv',chunksize=1000)
# 先取出1000行
# 它返回<pandas.io.parsers.TextFileReader at 0x1b116b02780>支持迭代
result = pd.Series([])
for chunk in tr:
result = result.add(chunk['key'].value_counts(),fill_value=0)
# add方法会为索引对应的数据不存在添加默认值,可以采用fill_value=0填充默认值 result = result.sort_values(ascending=False)
result[:10] # 取出前十大的数

往磁盘读入数据

 import pandas as pd
import numpy as np df = pd.read_csv('ch04/ex5.csv')
df.to_csv('ch04/ex5_out.csv',index=False)
# 如果没有index=False,读取的文件与源文件有差异,给源文件加了索引
# index=False指定不写索引值 df.to_csv('ch04/ex5_out.csv',index=False,
header=None,columns=['b','c','message'],sep='|')
# header=None,不写列标签,只写'b','c','message'三列,每个数字或字符串用'|'分隔开

pandas之数据IO笔记的更多相关文章

  1. pandas 存取数据小笔记

    import pandas as pd 1.   读取和保存 csv文件 #读 df = pd.read_csv(read_file_path, header=0) # 其中read_file_pat ...

  2. 【笔记】Pandas分类数据详解

    [笔记]Pandas分类数据详解 Pandas  Pandas分类数据详解|轻松玩转Pandas(5) 参考:Pandas分类数据详解|轻松玩转Pandas(5)

  3. 【转载】使用Pandas对数据进行筛选和排序

    使用Pandas对数据进行筛选和排序 本文转载自:蓝鲸的网站分析笔记 原文链接:使用Pandas对数据进行筛选和排序 目录: sort() 对单列数据进行排序 对多列数据进行排序 获取金额最小前10项 ...

  4. 【转载】使用Pandas进行数据提取

    使用Pandas进行数据提取 本文转载自:蓝鲸的网站分析笔记 原文链接:使用python进行数据提取 目录 set_index() ix 按行提取信息 按列提取信息 按行与列提取信息 提取特定日期的信 ...

  5. 【转载】使用Pandas进行数据匹配

    使用Pandas进行数据匹配 本文转载自:蓝鲸的网站分析笔记 原文链接:使用Pandas进行数据匹配 目录 merge()介绍 inner模式匹配 lefg模式匹配 right模式匹配 outer模式 ...

  6. 【转载】使用Pandas创建数据透视表

    使用Pandas创建数据透视表 本文转载自:蓝鲸的网站分析笔记 原文链接:使用Pandas创建数据透视表 目录 pandas.pivot_table() 创建简单的数据透视表 增加一个行维度(inde ...

  7. 转载:使用Pandas进行数据匹配

    使用Pandas进行数据匹配 本文转载自:蓝鲸的网站分析笔记 原文链接:使用Pandas进行数据匹配 目录 merge()介绍 inner模式匹配 lefg模式匹配 right模式匹配 outer模式 ...

  8. python-数据描述与分析2(利用Pandas处理数据 缺失值的处理 数据库的使用)

    2.利用Pandas处理数据2.1 汇总计算当我们知道如何加载数据后,接下来就是如何处理数据,虽然之前的赋值计算也是一种计算,但是如果Pandas的作用就停留在此,那我们也许只是看到了它的冰山一角,它 ...

  9. 利用Python进行数据分析(12) pandas基础: 数据合并

    pandas 提供了三种主要方法可以对数据进行合并: pandas.merge()方法:数据库风格的合并: pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起: 实例方法c ...

随机推荐

  1. nginx 动态黑名单

    原理: 根据nginx 访问日志记录发现可疑的或者不正常的访问记录记录然后自动添加到nginx的黑名单 起到阻止的作用  可以作为防范少量的ddos攻击 1.首先要格式化nginx的日志(相关内容可以 ...

  2. Java核心复习—— 原子性、有序性与Happens-Before

    一. 产生并发Bug的源头 可见性 缓存导致的可见性问题 原子性 线程切换带来的原子性问题 有序性 编译优化带来的有序性问题 上面讲到了 volatile 与可见性,本章再主要讲下原子性.有序性与Ha ...

  3. oracle中的trigger

    https://blog.csdn.net/indexman/article/details/8023740/ https://www.cnblogs.com/sharpest/p/7764660.h ...

  4. angular中的服务和持久化实现

    1.创建服务: ng g service my-new-service 创建到指定目录下面 ng g service services/storage 2.app.module.ts 里面引入创建的服 ...

  5. 让群辉支持DTS音轨

    让群晖Video Station支持DTS音轨的方法原因:因版权问题,群晖Video Station默认不支持DTS音轨,因此默认不能播放使用DTS音轨的影片. 网上搜到好多解决办法,通常是让添加源h ...

  6. Linux 验证当前 Video0 不否是v4l设备 linux v4l 编程(1) Video 4 Linux 简介

    #include <stdio.h> #include <string.h> #include <errno.h> #include <sys/types.h ...

  7. osg 场景漫游

    #ifdef _WIN32 #include <Windows.h> #endif // _WIN32 #include <osg/Group> #include <os ...

  8. 阶段5 3.微服务项目【学成在线】_day07 课程管理实战_02-我的课程-前端页面与Api说明

    我的课程列表使用element 的card组件,如下: 前端页面代码 点击新增到了一个新增课程的页面 新增课程的界面 下面的card是循环遍历的代码 写死的card的静态数据 请求服务端的接口拿到数据 ...

  9. Qt编写自定义控件43-自绘电池

    一.前言 到了9102年了,现在智能手机不要太流行,满大街都是,甚至连爷爷奶奶级别的人都会用智能手机,本次要写的控件就是智能手机中的电池电量表示控件,采用纯painter绘制,其实也可以采用贴图,我估 ...

  10. videojs改变音量大小

    <audio id=example-video preload="auto" class="video-js vjs-default-skin" type ...