繁体   English   中英

Pandas python 将列表转换为 dataframe 并计算出现次数

[英]Pandas python converting a list into a dataframe and count number of occurrences

这是一个如此简单的问题,这就是为什么我无法做到这一点让我无休止的烦恼。

我有一系列列表已转换为扁平列表:

myList= []
for i in myList['variable'].tolist():
    for j in i:
        myList.append(j)
        
frequency = pd.DataFrame(myList).reset_index().sort_values(0).groupby(0).count()

这是让我失望的最后一行。 我不知道为什么,但它返回了组中每个成员的错误计数。

样本输入 = [2, 4, 6, 7, 2, 6, 2]

预计 DataFrame output =

var    count
2        3
4        1
6        2
7        1

如果您想按分类变量分组并计算每个组的聚合统计信息,pandas 可以这样做:

df = pd.DataFrame({
        'a': random.choices(range(1,4), k=20),
        'b': np.random.normal(size=20),
    })

df.groupby('a').count()

#     b
# a
# 1   2
# 2   8
# 3  10

df.groupby('a').agg(('count', 'mean', 'std'))

#       b
#   count      mean       std
# a
# 1     2  0.454240  2.218616
# 2     8  0.165295  1.355922
# 3    10 -0.004880  1.225908

请参阅: groupbycountagg

由于这个网站很有帮助,我想通了。

测试 = pd.DataFrame(list) 频率 = test[0].value_counts()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM