當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python cudf.DataFrame.describe用法及代碼示例


用法:

DataFrame.describe(percentiles=None, include=None, exclude=None, datetime_is_numeric=False)

生成說明性統計數據。

說明性統計包括總結數據集分布的集中趨勢、離散度和形狀的統計,不包括NaN 值。

分析數字和對象係列,以及混合數據類型的DataFrame 列集。輸出將根據提供的內容而有所不同。有關詳細信息,請參閱下麵的注釋。

參數

percentileslist-like 個數字,可選

要包含在輸出中的百分位數。全部應介於 0 和 1 之間。默認值為 [.25, .5, .75] ,它返回第 25、第 50 和第 75 個百分位數。

include‘all’, list-like of dtypes 或 None(默認),可選

要包含在結果中的數據類型列表。忽略 Series 。以下是選項:

  • ‘all’:輸入的所有列都將包含在輸出中。
  • A list-like of dtypes :將結果限製為提供的數據類型。要將結果限製為數字類型,請提交 numpy.number 。要將其限製為對象列,請提交 numpy.object 數據類型。字符串也可以以 select_dtypes 的樣式使用(例如 df.describe(include=['O']) )。要選擇 pandas 分類列,請使用 'category'
  • 無(默認):結果將包括所有數字列。
excludelist-like of dtypes 或 None(默認),可選,

要從結果中省略的數據類型列表。忽略 Series 。以下是選項:

  • A list-like of dtypes :從結果中排除提供的數據類型。要排除數字類型,請提交 numpy.number 。要排除對象列,請提交數據類型 numpy.object 。字符串也可以以 select_dtypes 的樣式使用(例如 df.describe(include=['O']) )。要排除 pandas 分類列,請使用 'category'
  • 無(默認):結果將不排除任何內容。
datetime_is_numeric布爾值,默認為 False

對於 DataFrame 輸入,這還控製默認情況下是否包含日期時間列。

返回

output_frameSeries或DataFrame

提供的係列或 DataFrame 的匯總統計信息。

注意

對於數字數據,結果的索引將包括 count , mean , std , min , max 以及較低的、50 和較高的百分位數。默認情況下,下百分位是 25 ,上百分位是 7550 百分位數與中位數相同。

對於字符串 dtype 或 datetime dtype,結果的索引將包括 count , unique , topfreqtop 是最常見的值。 freq 是最常見值的頻率。時間戳還包括firstlast 項。

如果多個對象值具有最高計數,則將從具有最高計數的那些中任意選擇counttop 結果。

對於通過 DataFrame 提供的混合數據類型,默認情況下僅返回對數值列的分析。如果 DataFrame 僅包含對象和分類數據而沒有任何數字列,則默認返回對對象和分類列的分析。如果 include='all' 作為選項提供,則結果將包括每種類型的屬性的聯合。

includeexclude 參數可用於限製 DataFrame 中的哪些列被分析用於輸出。分析 Series 時忽略這些參數。

例子

說明包含數值的Series

>>> import cudf
>>> s = cudf.Series([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
>>> s
0     1
1     2
2     3
3     4
4     5
5     6
6     7
7     8
8     9
9    10
dtype: int64
>>> s.describe()
count    10.00000
mean      5.50000
std       3.02765
min       1.00000
25%       3.25000
50%       5.50000
75%       7.75000
max      10.00000
dtype: float64

說明一個分類的 Series

>>> s = cudf.Series(['a', 'b', 'a', 'b', 'c', 'a'], dtype='category')
>>> s
0    a
1    b
2    a
3    b
4    c
5    a
dtype: category
Categories (3, object): ['a', 'b', 'c']
>>> s.describe()
count     6
unique    3
top       a
freq      3
dtype: object

說明時間戳 Series

>>> import numpy as np
>>> s = cudf.Series([
...   np.datetime64("2000-01-01"),
...   np.datetime64("2010-01-01"),
...   np.datetime64("2010-01-01")
... ])
>>> s
0   2000-01-01
1   2010-01-01
2   2010-01-01
dtype: datetime64[s]
>>> s.describe()
count                     3
mean    2006-09-01 08:00:00
min     2000-01-01 00:00:00
25%     2004-12-31 12:00:00
50%     2010-01-01 00:00:00
75%     2010-01-01 00:00:00
max     2010-01-01 00:00:00
dtype: object

說明 DataFrame 。默認情況下,僅返回數字字段。

>>> df = cudf.DataFrame({"categorical": cudf.Series(['d', 'e', 'f'],
...                         dtype='category'),
...                      "numeric": [1, 2, 3],
...                      "object": ['a', 'b', 'c']
... })
>>> df
  categorical  numeric object
0           d        1      a
1           e        2      b
2           f        3      c
>>> df.describe()
       numeric
count      3.0
mean       2.0
std        1.0
min        1.0
25%        1.5
50%        2.0
75%        2.5
max        3.0

說明 DataFrame 的所有列,無論數據類型如何。

>>> df.describe(include='all')
       categorical numeric object
count            3     3.0      3
unique           3    <NA>      3
top              d    <NA>      a
freq             1    <NA>      1
mean          <NA>     2.0   <NA>
std           <NA>     1.0   <NA>
min           <NA>     1.0   <NA>
25%           <NA>     1.5   <NA>
50%           <NA>     2.0   <NA>
75%           <NA>     2.5   <NA>
max           <NA>     3.0   <NA>

通過將 DataFrame 中的列作為屬性訪問來說明該列。

>>> df.numeric.describe()
count    3.0
mean     2.0
std      1.0
min      1.0
25%      1.5
50%      2.0
75%      2.5
max      3.0
Name: numeric, dtype: float64

DataFrame 說明中僅包括數字列。

>>> df.describe(include=[np.number])
       numeric
count      3.0
mean       2.0
std        1.0
min        1.0
25%        1.5
50%        2.0
75%        2.5
max        3.0

DataFrame 說明中僅包括字符串列。

>>> df.describe(include=[object])
       object
count       3
unique      3
top         a
freq        1

僅包括來自 DataFrame 說明的分類列。

>>> df.describe(include=['category'])
       categorical
count            3
unique           3
top              d
freq             1

DataFrame 說明中排除數字列。

>>> df.describe(exclude=[np.number])
       categorical object
count            3      3
unique           3      3
top              d      a
freq             1      1

DataFrame 說明中排除對象列。

>>> df.describe(exclude=[object])
       categorical numeric
count            3     3.0
unique           3    <NA>
top              d    <NA>
freq             1    <NA>
mean          <NA>     2.0
std           <NA>     1.0
min           <NA>     1.0
25%           <NA>     1.5
50%           <NA>     2.0
75%           <NA>     2.5
max           <NA>     3.0

相關用法


注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cudf.DataFrame.describe。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。