Pandas DataFrame.var(~)
方法计算源 DataFrame 的每行或每列的方差。 (无偏)方差使用以下公式计算:
其中,
是行或列的大小
是行或列中第 索引的值
是行或列中的值的平均值。
注意
var(~)
方法还可以计算总体方差。我们通过设置 ddof=0
来做到这一点。
参数
1.axis
| int
或 string
| optional
是否按列或按行计算方差:
轴 |
说明 |
---|---|
|
计算每列的方差。 |
|
计算每行的方差。 |
默认情况下,axis=0
。
2. skipna
| boolean
| optional
是否跳过 NaN
。跳过的 NaN
不会计入总大小 ( )。默认情况下,skipna=True
。
3. level
| string
或 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.var() # axis=0
A 4.0
B 9.0
dtype: float64
行方向方差
计算每行的方差:
df.var(axis=1)
0 0.5
1 0.0
2 0.5
dtype: float64
指定numeric_only
考虑以下 DataFrame :
df = pd.DataFrame({"A":[3,5], "B":[True,5], "C":["x",7]})
df
A B C
0 3 True x
1 5 5 7
这里,列B
和C
是混合类型。
None
默认情况下, numeric_only=None
,这意味着混合类型的行/列也会被考虑:
df.var() # numeric_only=None
A 2.0
B 8.0
dtype: float64
B
列的方差仍然可计算的原因是,True
在 Pandas 中内部表示为 1
。相反,由于 "x"+7
未定义,因此无法计算列 C
的方差。
False
numeric_only=False
表示混合类型的行/列也会被考虑,但如果方差不可计算,则会引发错误:
df.var(numeric_only=False)
TypeError: could not convert string to float: 'x'
True
仅计算数字行/列的方差:
df.var(numeric_only=True)
A 2.0
dtype: float64
相关用法
- Python Pandas DataFrame values属性用法及代码示例
- Python Pandas DataFrame empty属性用法及代码示例
- Python Pandas DataFrame pop方法用法及代码示例
- Python Pandas DataFrame nsmallest方法用法及代码示例
- Python Pandas DataFrame sample方法用法及代码示例
- Python Pandas DataFrame items方法用法及代码示例
- Python Pandas DataFrame max方法用法及代码示例
- Python Pandas DataFrame swaplevel方法用法及代码示例
- Python Pandas DataFrame agg方法用法及代码示例
- Python Pandas DataFrame copy方法用法及代码示例
- Python Pandas DataFrame pow方法用法及代码示例
- Python Pandas DataFrame insert方法用法及代码示例
- Python Pandas DataFrame lt方法用法及代码示例
- Python Pandas DataFrame all方法用法及代码示例
- Python Pandas DataFrame unstack方法用法及代码示例
- Python Pandas DataFrame mean方法用法及代码示例
- Python PySpark DataFrame filter方法用法及代码示例
- Python Pandas DataFrame tz_convert方法用法及代码示例
- Python Pandas DataFrame isin方法用法及代码示例
- Python PySpark DataFrame collect方法用法及代码示例
- Python PySpark DataFrame intersect方法用法及代码示例
- Python PySpark DataFrame dtypes属性用法及代码示例
- Python Pandas DataFrame rank方法用法及代码示例
- Python Pandas DataFrame tail方法用法及代码示例
- Python Pandas DataFrame transform方法用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | var method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。