更新时间:2023-10-25 来源:黑马程序员 浏览量:
DataFrame 也是由
pandas库提供的一个类,DataFrame类对象的结构类似于二维数组或表格。与Series类对象类似,DataFrame类对象也由索引和数据组成,但该对象有两组索引,分别是行索引和列索引。DataFrame类对象的结构示意图如图所示。
DataFrame类对象的结构示意图
在图中,DataFrame类对象的行索引位于最左侧一列,列索引位于最上面一行。DataFrame类对象其实可以视为若干个公用行索引的Series类对象的组合,该对象的每一列数据都是一个Series类对象。
通过DataFrame类的构造方法可以创建二维数据。DataFrame类构造方法的语法格式如下。
pandas.DataFrame (data-None, Index-tone, columns-None, dtype=None, copy=False)
以上构造方法中各参数的含义如下。
·data:表示传入的数据,可以是ndaray、字典、列表或可迭代对象。
·index:表示行索引,默认生成0~N的整数索引。
·columns:表示列索引,默认生成0~N的整数索引。
·dtype:表示数据的类型。
·copy:表示是否复制数据,默认为False。
接下来,通过在DataFrame0方法中传入二维数组的方式创建DataFrame类对象,代码如下。
In []: inport numpy as np inport pandas as pd # 创建二维数组 demo_arr = np.array([['a', 'b', 'c'], ['d', 'e', 'f']]) df_obj = pd. DataFrame (demo_arr) # 根据二维数组创建DataFrame类对象 print (df_cbj) 0 1 2 0 a b c 1 d e f
以上代码首先创建了一个2行3列的二维数组demo_arr,然后根据demo_arr创建了一个DataFrame类对象d_obj。从输出结果可以看出,df_obj对象一共有3列数据,其行索引与列索引均为自动生成的整数索引。
在创建DataFrame类对象时,可以通过给index和columns参数传值的方式指定行索引与列索引,使该对象拥有自定义的标签索引,代码如下。
In []: # 创建DataFrame类对象,同时指定行索引与列素引 df_obj = pd.DataFrame(demo_arr, index = ['row_01', 'row_02'], columns={'col_01', 'col_02', 'col_03'}) print (df_obj) col_01 col_02 col_03 row_01 a b c row_02 d e f