汇总分类变量时超出最大递归深度
maximum recursion depth exceeded when summarizing a categorical variable
在尝试获取 pandas 系列类别的每个级别的计数时,出现 'maximum recursion depth exceeded' 错误
产生错误的代码示例如下:
vs = pd.Series([0,0,0,1,1,1,1,1]).astype('category')
tn = pd.Series.value_counts(vs)
print(tn[0])
print(tn[1])
产生错误的部分是对 tn[0] 的调用。调用 tn[1] 不会出现此类错误。
如果我添加更多级别,我可以调用下一个级别,但 tn[0] 总是 return 错误。
这段代码有什么问题?
我正在使用 Python 3.7.4 和 Pandas 0.25.1.
使用:
vs = pd.Series([0,0,0,1,1,1,1,1]).astype('category')
tn = vs.value_counts()
print(tn)
1 5
0 3
dtype: int64
print(tn[pd.Categorical(0)])
1 5
dtype: int64
print(tn[pd.Categorical(1)])
0 3
dtype: int64
对于 select 按职位使用 Series.iloc
or Series.iat
:
print(tn.iloc[0])
5
print(tn.iloc[1])
3
在尝试获取 pandas 系列类别的每个级别的计数时,出现 'maximum recursion depth exceeded' 错误
产生错误的代码示例如下:
vs = pd.Series([0,0,0,1,1,1,1,1]).astype('category')
tn = pd.Series.value_counts(vs)
print(tn[0])
print(tn[1])
产生错误的部分是对 tn[0] 的调用。调用 tn[1] 不会出现此类错误。 如果我添加更多级别,我可以调用下一个级别,但 tn[0] 总是 return 错误。 这段代码有什么问题? 我正在使用 Python 3.7.4 和 Pandas 0.25.1.
使用:
vs = pd.Series([0,0,0,1,1,1,1,1]).astype('category')
tn = vs.value_counts()
print(tn)
1 5
0 3
dtype: int64
print(tn[pd.Categorical(0)])
1 5
dtype: int64
print(tn[pd.Categorical(1)])
0 3
dtype: int64
对于 select 按职位使用 Series.iloc
or Series.iat
:
print(tn.iloc[0])
5
print(tn.iloc[1])
3