如何获取Pandas中的行数?

时间:2015-03-18 08:17:18

标签: python pandas

我想获得dataframe中的行数:

count1 = df[(df['col1'] == xxx) & (df['col2'] == yyy)].count()

但它仍然会回归系列赛。如何将实际计数作为int?

3 个答案:

答案 0 :(得分:1)

我不知道为什么count()没有按预期工作,但这确实有效:

df2 = df[(df['col1'] == xxx) & (df['col2'] == yyy)]
count = len(df2) # int

答案 1 :(得分:0)

将生成的系列转换为列表可以帮助您“tolist()”

答案 2 :(得分:0)

不清楚你在这里期待什么df.count()会返回一个系列或df,显示行数或列数,为什么你会期望返回一个简单的标量值?

如果您只想行行,请执行len(count)count.shape[0]

示例:

In [173]:

df = pd.DataFrame({'a':[0,2,2,3,5], 'b':[0,1,1,3,5], 'c':np.random.randn(5)})
df
Out[173]:
   a  b         c
0  0  0 -1.192011
1  2  1  0.290372
2  2  1 -0.092076
3  3  3  0.821918
4  5  5  0.551033
In [180]:

count1 = df[(df['a'] == 2) & (df['b']==1)]
len(count1)
Out[180]:
2