DataFrame
DataFrame 是一个带有索引的二维数据结构,每列可以有自己的名字,并且可以有不同的数据类型。你可以把它想象成一个 excel 表格或者数据库中的一张表,DataFrame 是最常用的 Pandas 对象。
创建
在构建 DataFrame 的时候,主要有两种思路
数据为字典类的格式, 是以列的方式进行组织, 字典的 key 将会作为列名,字典的值value作为列的数据.
数据为列表类形式, 是以行的方式进行组织的, 列名需要用参数传入进去.
从本地磁盘文件读取:pd.read_....
参数说明:
- filepath_or_buffer, 文件路径
- sep=',', 文件分隔符
- delimiter=None, 同上
- header='infer', 用哪一行作为列名
- names=None, 当读取进来没有列名的时候, 可以用这个设置列名
- index_col=None, 用哪一列作为数据行索引
DataFrame 的索引和切片
提取数据表中的列, 是最常用的操作之一, 因此这个操作也非常简单。
只要把列名作为索引的 key 就可以了,也可以把列当做 DataFrame 的属性提取(.列名)。
索引和切片对应字典和列表的两种方式,也是分为两种思路, 分别是显式索引和隐式索引
显式索引
在显示索引中,把 DataFrame 的索引值当做第一个轴的 key,把列名当做第二个轴的 key
语法 df.loc[索引行,索引列 ]
序列值索引
隐式索引
使用 iloc()
也就是 index_loc
这种方式不看你的行索引和列索引是什么名称,
可以把数据当做是一个有序列表, 只看数据是处于表中的一个什么位置.
新增/删除列
新增行: .loc['行名'] 加"="为修改
新增列: .loc[:,'列名']
删除行/列
.pop()和.drop():index=None 删除行,columns=None 删除列
查看前几条信息:head()
查看后几条信息:tail()
转置: .T
掩码提取数据:
利用逻辑判断提取数据
逻辑关系:
与 and &
或 or |
非 not ~
保存数据:to_****()
暂无数据