使用 value_count(bins=x) 访问 bins 间隔
Accessing the bins intervals with value_count(bins=x)
我需要帮助来访问 value_count() 函数创建的垃圾箱。
尝试使用打印、循环访问,但我不明白它是如何工作的。
import pandas as pd
sr = pd.Series(data = [1,2,3,3,4,5,7,1,2])
sr.value_counts(bins=2)
实际输出为:
(0.993, 4.0] 7
(4.0, 7.0] 2
您可以获得Series
的索引:
sr = pd.Series(data = [1,2,3,3,4,5,7,1,2])
s = sr.value_counts(bins=2)
print (s)
(0.993, 4.0] 7
(4.0, 7.0] 2
dtype: int64
print (s.index)
IntervalIndex([(0.993, 4.0], (4.0, 7.0]],
closed='right',
dtype='interval[float64]')
然后 select 通过索引 - 例如第一个值:
print (s.index[0])
(0.993, 4.0]
如果索引的第一个值中需要 select 值,则必须使用 Interval.left
and Interval.right
, because working with Interval
和 select,因为索引不起作用:
print (s.index[0].left)
0.993
print (s.index[0].right)
4.0
print (s.index[0][0])
TypeError: 'pandas._libs.interval.Interval' object does not support indexing
我需要帮助来访问 value_count() 函数创建的垃圾箱。
尝试使用打印、循环访问,但我不明白它是如何工作的。
import pandas as pd
sr = pd.Series(data = [1,2,3,3,4,5,7,1,2])
sr.value_counts(bins=2)
实际输出为:
(0.993, 4.0] 7
(4.0, 7.0] 2
您可以获得Series
的索引:
sr = pd.Series(data = [1,2,3,3,4,5,7,1,2])
s = sr.value_counts(bins=2)
print (s)
(0.993, 4.0] 7
(4.0, 7.0] 2
dtype: int64
print (s.index)
IntervalIndex([(0.993, 4.0], (4.0, 7.0]],
closed='right',
dtype='interval[float64]')
然后 select 通过索引 - 例如第一个值:
print (s.index[0])
(0.993, 4.0]
如果索引的第一个值中需要 select 值,则必须使用 Interval.left
and Interval.right
, because working with Interval
和 select,因为索引不起作用:
print (s.index[0].left)
0.993
print (s.index[0].right)
4.0
print (s.index[0][0])
TypeError: 'pandas._libs.interval.Interval' object does not support indexing