Skip to main content
 首页 » 编程设计

python之如何统计以数字命名的列标签的个数

2025年05月04日20xing901022

我想计算带有数字命名标签的列数。

  movie_id  1   2   5   6   7   10  12  13  borda   rank 
0   1       5   4   4   4   0   4   0   3   24      1 
1   2       3   0   3   0   0   0   0   3   9       3 
2   3       4   0   0   0   0   0   0   0   4       4 
3   4       3   0   0   0   5   4   5   5   22      2 
4   5       3   0   0   0   0   0   0   1   4       4 

在这种情况下,理想情况下要计算的列是 '1'、'2'、'5'、'6', '7', '10', '12', '13'。换句话说,那些非数字命名标签的列将不会被计算在内。

我需要处理几千列的DataFrames,所以人工统计列数是不可能的。我的想法是,这可能与 loc 或 iloc 有关,但我不知道如何用代码来实现它。

请您参考如下方法:

如果需要使用数字计算列数 str.isnumeric用 sum 计算 True 的值:

out = df.columns.astype(str).str.isnumeric().sum() 
print (out) 
8