我正在研究一种确定数据集的最小和最大频率的方法。方法value_counts()返回数据的不同值和频率。我试过查看此处列出的文档,但它解决不了我的问题。我的目标是
例如,
样本输入数据
A1,A2,A3,Class
2,0.4631338,1.5,3
8,0.7460648,3.0,3
6,0.264391038,2.5,2
5,0.4406713,2.3,1
2,0.410438159,1.5,3
2,0.302901816,1.5,2
6,0.275869396,2.5,3
8,0.084782428,3.0,3
2,0.53226533,1.5,2
8,0.070034818,2.9,1
2,0.668631847,1.5,22 42
8 24
5 20
6 10
7 2
4 1
3 1maxValue = 8,maxF = 24 minValue = 2,minF = 42
预期: maxf返回数据集的maxf频率,minf返回数据集的最小频率。
实数:我正忙于处理来自值计数的频率。
我编写了一个处理数据集的程序
def main():
s = pd.read_csv('A1-dm.csv')
print("******************************************************")
print("Entropy Discretization STARTED")
s = entropy_discretization(s)
print("Entropy Discretization COMPLETED")
def entropy_discretization(s):
I = {}
i = 0
n = s.nunique()['A1']
print("******************")
print("calculating maxf")
maxf(s['A1'])
print("******************")
def maxf(s):
print(s.value_counts())
def minf(s):
print(s.value_counts())如果能对此提供任何帮助,我们将不胜感激。我
发布于 2021-10-20 10:50:10
美国Series.idxmax和Series.idxmin,必要时输出Series使用Series.agg
s = df['Class'].value_counts()
print (s)
3 5
2 4
1 2
Name: Class, dtype: int64
print (s.agg(['max','idxmax','min','idxmin']))
max 5
idxmax 3
min 2
idxmin 1
Name: Class, dtype: int64另外:
print (s.max(), s.idxmax(), s.min(), s.idxmin())
5 3 2 1https://stackoverflow.com/questions/69644592
复制相似问题