ent*_*ere 1 python dataframe python-3.x pandas
给定以下数据框:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.uniform(-1,1,size=(6, 2)), columns=list('AB'))
A B
0 0.179713 0.341367
1 -0.439868 0.999864
2 -0.253476 -0.816107
3 -0.829449 -0.562657
4 0.174300 0.055969
5 0.922375 0.987108
Run Code Online (Sandbox Code Playgroud)
如何计算特定列大于 0 的行/条目的百分比并且仅返回浮点值?
以下代码返回一个 Series,其中 A 的输出覆盖 B 的输出。
a = df[df['A'] > 0].count()/df['A'].count()
A 0.5
B 0.5
dtype: float64
Run Code Online (Sandbox Code Playgroud)
但是,所需的输出只是一个浮点值,而不是一个系列。
Desired output:
0.5
Run Code Online (Sandbox Code Playgroud)
您可以使用loc,因为前面的代码返回数据帧计数,在您的情况下您需要系列
a = df.loc[df['A'] > 0,'A'].count()/df['A'].count()
a
Out[58]: 0.5
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4624 次 |
| 最近记录: |