繁体   English   中英

Pandas - 计算每个系列中的元素数

[英]Pandas - Count number of elements in each series

我有一张这样的表:

ID,Variation_price
1,{X:1, Y:2, Z:3}    
2,{}
3,{X:5, W:6}

如何计算每个 ID 的项目数以获得此结果:

1: 3
2: 0
3: 2

让我们做

df['count_n']=df['Variation'].str.len()

如果数据类型是字符串

df['count_n']=df['Variation'].str.count(':')

您可以使用以下内容来获取字典的长度。

df['count_n'] = 0.0
for i in range(len(df)):
    df.loc[i, 'count_n']=len(df.loc[i,'Variation'])

您可以执行len()来获取每个列表的元素数。 例子:

for index_, row_ in iterrow(tables)
    print(len(row_))

如果您的 Variation 列是字符串类型:

import ast
df.set_index('ID').Variation.apply(ast.literal_eval).apply(len)

如果您的 Variation 列是 dict 类型:

df.set_index('ID').Variation.apply(len)

暂无
暂无

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

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