首頁(yè)常見問(wèn)題正文

怎樣通過(guò)DataFrame類的構(gòu)造方法創(chuàng)建二維數(shù)據(jù)?

更新時(shí)間:2023-10-25 來(lái)源:黑馬程序員 瀏覽量:

DataFrame 也是由 pandas庫(kù)提供的一個(gè)類,DataFrame類對(duì)象的結(jié)構(gòu)類似于二維數(shù)組或表格。與Series類對(duì)象類似,DataFrame類對(duì)象也由索引和數(shù)據(jù)組成,但該對(duì)象有兩組索引,分別是行索引和列索引。DataFrame類對(duì)象的結(jié)構(gòu)示意圖如圖所示。

1698217572462_索引.png

DataFrame類對(duì)象的結(jié)構(gòu)示意圖

在圖中,DataFrame類對(duì)象的行索引位于最左側(cè)一列,列索引位于最上面一行。DataFrame類對(duì)象其實(shí)可以視為若干個(gè)公用行索引的Series類對(duì)象的組合,該對(duì)象的每一列數(shù)據(jù)都是一個(gè)Series類對(duì)象。

通過(guò)DataFrame類的構(gòu)造方法可以創(chuàng)建二維數(shù)據(jù)。DataFrame類構(gòu)造方法的語(yǔ)法格式如下。

pandas.DataFrame (data-None, Index-tone, columns-None,               
dtype=None, copy=False)

以上構(gòu)造方法中各參數(shù)的含義如下。

·data:表示傳入的數(shù)據(jù),可以是ndaray、字典、列表或可迭代對(duì)象。

·index:表示行索引,默認(rèn)生成0~N的整數(shù)索引。

·columns:表示列索引,默認(rèn)生成0~N的整數(shù)索引。

·dtype:表示數(shù)據(jù)的類型。

·copy:表示是否復(fù)制數(shù)據(jù),默認(rèn)為False。

接下來(lái),通過(guò)在DataFrame0方法中傳入二維數(shù)組的方式創(chuàng)建DataFrame類對(duì)象,代碼如下。

In []:   inport numpy as np
         inport pandas as pd
         # 創(chuàng)建二維數(shù)組
         demo_arr = np.array([['a', 'b', 'c'], ['d', 'e', 'f']])
         df_obj = pd. DataFrame (demo_arr)     # 根據(jù)二維數(shù)組創(chuàng)建DataFrame類對(duì)象
         print (df_cbj)
           0 1 2
         0 a b c
         1 d e f

以上代碼首先創(chuàng)建了一個(gè)2行3列的二維數(shù)組demo_arr,然后根據(jù)demo_arr創(chuàng)建了一個(gè)DataFrame類對(duì)象d_obj。從輸出結(jié)果可以看出,df_obj對(duì)象一共有3列數(shù)據(jù),其行索引與列索引均為自動(dòng)生成的整數(shù)索引。

在創(chuàng)建DataFrame類對(duì)象時(shí),可以通過(guò)給index和columns參數(shù)傳值的方式指定行索引與列索引,使該對(duì)象擁有自定義的標(biāo)簽索引,代碼如下。

In []:  # 創(chuàng)建DataFrame類對(duì)象,同時(shí)指定行索引與列素引
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


分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!