Pandas DataFrame.std(~)
方法計算源 DataFrame 的每行或每列的標準差。 (無偏)標準差使用以下公式計算:
其中,
是行或列的大小
是行或列中第 索引的值
是行或列中的值的平均值。
注意
std(~)
還可以計算總體標準差。我們通過設置 ddof=0
來做到這一點。
參數
1.axis
| int
或 string
| optional
是否按列或按行計算標準差:
軸 |
說明 |
---|---|
|
計算每列的標準偏差。 |
|
計算每行的標準差。 |
默認情況下,axis=0
。
2. skipna
| boolean
| optional
是否跳過 NaN
。跳過的 NaN
不會計入總大小 ( )。默認情況下,skipna=True
。
3. level
| int
| optional
要考慮的級別的名稱或整數索引。僅當您的 DataFrame 是多索引時才需要這樣做。
4. ddof
| int
| optional
自由度δ。這可用於修改分母:
默認情況下,ddof=1
。
5. numeric_only
| None
或 boolean
| optional
允許的值如下:
值 |
說明 |
---|---|
|
僅考慮數字行/列(例如 |
|
嘗試使用所有類型(例如字符串和日期)進行計算,並在無法計算標準差時拋出錯誤。 |
|
嘗試計算所有類型,並忽略所有無法計算標準差的行/列不會引發錯誤. |
請注意,隻有當類型之間明確定義了 +
運算符時,才能計算標準差。
默認情況下,numeric_only=None
。
返回值
如果指定了level
參數,則將返回DataFrame
。否則,將返回Series
。
例子
考慮以下 DataFrame :
df = pd.DataFrame({"A":[3,5,7], "B":[2,5,8]})
df
A B
0 3 2
1 5 5
2 7 8
列標準差
要計算每列的標準差:
df.std() # axis=0
A 2.0
B 3.0
dtype: float64
行方向標準差
計算每行的標準差:
df.std(axis=1)
0 0.707107
1 0.000000
2 0.707107
dtype: float64
指定numeric_only
考慮以下 DataFrame :
df = pd.DataFrame({"A":[3,5], "B":[True,5], "C":["x",6]})
df
A B C
0 3 True x
1 5 5 6
這裏,列B
和C
是混合類型。
None
默認情況下, numeric_only=None
,這意味著混合類型的行/列也會被考慮:
df.std() # numeric_only=None
A 1.414214
B 2.828427
dtype: float64
B
列的標準差仍然可計算的原因是,True
在 Pandas 中內部表示為 1
。相反,由於 "x"+7
未定義,因此無法計算列 C
的標準差。
False
numeric_only=False
表示混合類型的行/列也會被考慮,但如果無法計算標準差,則會引發錯誤:
df.std(numeric_only=False)
TypeError: could not convert string to float: 'x'
True
僅計算數字行/列的標準差:
df.std(numeric_only=True)
A 1.414214
dtype: float64
相關用法
- Python Pandas DataFrame stack方法用法及代碼示例
- Python Pandas DataFrame sample方法用法及代碼示例
- Python Pandas DataFrame swaplevel方法用法及代碼示例
- Python PySpark DataFrame sampleBy方法用法及代碼示例
- Python Pandas DataFrame set_axis方法用法及代碼示例
- Python Pandas DataFrame select_dtypes方法用法及代碼示例
- Python PySpark DataFrame selectExpr方法用法及代碼示例
- Python PySpark DataFrame show方法用法及代碼示例
- Python PySpark DataFrame select方法用法及代碼示例
- Python Pandas DataFrame shift方法用法及代碼示例
- Python Pandas DataFrame sort_index方法用法及代碼示例
- Python Pandas DataFrame size屬性用法及代碼示例
- Python Pandas DataFrame set_index方法用法及代碼示例
- Python Pandas DataFrame swapaxes方法用法及代碼示例
- Python PySpark DataFrame sort方法用法及代碼示例
- Python PySpark DataFrame sample方法用法及代碼示例
- Python Pandas DataFrame sub方法用法及代碼示例
- Python Pandas DataFrame sem方法用法及代碼示例
- Python Pandas DataFrame sum方法用法及代碼示例
- Python PySpark DataFrame summary方法用法及代碼示例
- Python Pandas DataFrame shape屬性用法及代碼示例
- Python Pandas DataFrame sort_values方法用法及代碼示例
- Python Pandas DataFrame slice_shift方法用法及代碼示例
- Python Pandas DataFrame squeeze方法用法及代碼示例
- Python Pandas DataFrame empty屬性用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 Pandas DataFrame | std method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。