demimute

导航

动手学数据分析 Task1 学习笔记

学习笔记

思考1: pd.read_csv()和pd.read_table()有什么不同

pd.read_csv() 直接读取‘,’为分隔符的文本文件,pd.read_table()需要设置sep。

思考2:了解一下'.tsv'和'.csv'的不同,如何加载这两个数据集?

TSV 是Tab-separated values的缩写,即制表符分隔值。 相对来说CSV,Comma-separated values(逗号分隔值)更常见一些。

TSV与CSV的区别: 1)从名称上即可知道,TSV是用制表符(Tab,'\t')作为字段值的分隔符;CSV是用半角逗号(',')作为字段值的分隔符; 2)IANA规定的标准TSV格式,字段值之中是不允许出现制表符的。
Python对TSV文件的支持: Python的csv模块准确的讲应该叫做dsv模块,因为它实际上是支持范式的分隔符分隔值文件(DSV,delimiter-separated values)的。 delimiter参数值默认为半角逗号,即默认将被处理文件视为CSV。 当delimiter='\t'时,被处理文件就是TSV。

TSV可以通过 pd.read_table('file.tsv',sep='\t')

思考3: 什么是逐块读取?为什么要逐块读取呢?

逐块读取就是通过 chunksize= 参数来设置读取大小。
采用逐块读取文件的主要目的是防止文件过大,一次性加载到内存,会让内存爆掉,或者内存一次性无法加载这么多。

思考4: 大家可以chunker(数据块)是什么类型?用for循环打印出来出处具体的样子是什么?

设置 chunksize参数之后,读取的数据块为TextFileReader,可以遍历打印,打印效果为根据chunksize大小分别打印。

思考5:还有其他的删除多余的列的方式吗?

del test1['a']
test1.drop('a',axis=1,inplace=True)
如果想要完全的删除你的数据结构,使用inplace=True,因为使用inplace就将原数据覆盖了,所以这里没有用

思考6:对比iloc和loc的异同

loc是利用索引名和列名进行检索
iloc是利用索引号和列号进行检索

思考7:通过书本你能说出Pandas对DataFrame数据的其他排序方式吗?

Pandas支持三种排序方式,按索引标签排序,按值排序,按两种方式混合排序。

  • 按索引排序
    Series.sort_index()与DataFrame.sort_index方法用于按索引层级对Pandas对象排序。
  • 按值排序
    Series.sort_values()方法用于按值对Series排序。DataFrame.sort_values()方法用于按行列的值对DataFrame排序。DataFrame.sort_values()的可选参数by用于指定按哪列排序,该参数的值可以是一列或多列数据。
  • 按索引和值排序
    通过参数by传递给DataFrame.sort_values()的字符串可以引用列或索引层名。

posted on 2022-05-17 18:56  dEMiMuTe  阅读(32)  评论(0编辑  收藏  举报