python - 在 pandas 数据框中获取 int 索引

标签 python pandas

我有一个由字符串索引的 pandas 数据框。假设我的索引类似于 df.index = ['AA','AB','AC',...] 并且我想访问 df.loc['AC': 'AE'],效果很好。

有什么方法可以获取这些索引的位置,给我['AC':'AE'] => [2,3,4]?我知道有 df.index.get_loc('AC') => 2 ,但这仅适用于单个值,不适用于列表。

最佳答案

用途:

df = pd.DataFrame({'a': [5,6,7,8, 10]}, index=['AA','AB','AC','AD','AE'])

pos = list(range(df.index.get_loc('AC'), df.index.get_loc('AE') + 1))
print (pos)
[2, 3, 4]

另一个解决方案 Index.searchsorted :

pos = list(range(df.index.searchsorted('AC'), df.index.searchsorted('AE') + 1))
print (pos)
[2, 3, 4]

a = df.index.searchsorted(['AC', 'AE'])
pos = list(range(a[0], a[1] + 1))
print (pos)
[2, 3, 4]

关于python - 在 pandas 数据框中获取 int 索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50814455/

相关文章:

python - 如何确保只有在 pytest 中明确要求时才运行带有标记的测试?

python - 如何修剪与给定范围匹配的数组数组中的值对?

python - Pandas DataFrame 过滤列 A 取决于列 B 是否包含 A 中一组值的 x

python - Pandas 仅在特定日期之前从另一列复制值

python - groupby 和mean返回NaN

python - 显示或保存 URL 图像列表

Python:在静态上下文中嵌套一行for循环时出错

python - GNU Radio/Python - USRP同时接收和采集

python - 计算由另一列分组的列的 z 分数

python - 查找自上次事件 Pandas 数据框以来的天数