接着上一个博客,https://blog.youkuaiyun.com/waveplot/article/details/88666090
在Series和DataFrame介绍完后,也就是pandas的内置函数,也是一般我们学习pandas的重点。
pd.read_csv()
read函数有几个关键参数,以下介绍:
filepath:文件路径和文件名
sep:分隔符
header:指定读取文件的哪一行作为列的label
dtype:指定读取某一列读取时的格式
- 文件读取函数,在没有特殊要求的情况下,只需要输入一个文件名就可以了也就是 filepath
为了显示方便,使用的是Jupyter
没有什么技术含量,直接放进来就行,raw就是一个DataFrame了。
只不过我们这里读取的是一个CSV文件,那么问题来了,其他文件怎么读?
- txt可不可以呢?当然,都是可以的。
txt文件读进来也是和Excel一样的。但是这里需要注意,文件存储的时候,字符之间是以空格区分的,
所以在数据读取的时候出现了错误。这时候就要使用sep参数
那么问题就又来了,既然是txt文件,那个数据存储的方式应该有多种,那么如何读取?
可以看到,read_csv() 函数以'sep'选项来区分txt字符之间的间隔的。
- 上面是一些普通文件的读取,那如果是一些没有表头的数据呢?如果按照上面的读取方法是不是少了一行?那么这个时候就应该忽略表头,将文件全部视为要操作的值。
上面这个数据在读取时,不需要表头。因此借助 header 参数
如果自己要加上label的话,则需要将 header 赋上其他值
可以看到,文件中的第二行作为数据的label被读取了。
- 很多人也有时很困扰,尤其是习惯了C++编程的同学。会表示:为什么文件读取可以同时存在字符串和数字?
当然,这是因为Python为我们进行了自动识别。但是我们如果有一些特殊要求呢?比如 010 如果正常读取的话就是10,而我们如果想要将其读入为 '010'字符串呢?
这时候就要用 dtype 参数了。
可以看到,dtype这个参数是非常有用的,它可以控制我们读取文件时,每一个数据的形式。