如何根据索引名称的长度选择熊猫系列行?

Mil*_*001 2 python pandas

我有一个如下所示的pandas系列,如何仅选择索引长度大于3的行?

s = pd.Series([1,2,3,4,5], index=['a','bb','ccc','dddd','eeeee'])
Run Code Online (Sandbox Code Playgroud)

要求的输出:

dddd     4
eeeee    5
Run Code Online (Sandbox Code Playgroud)

我的尝试:

s[len(s.index.name)>3]
Run Code Online (Sandbox Code Playgroud)

Pou*_*del 5

你可以试试:

s[s.index.str.len()>3]

Gives
dddd     4
eeeee    5
Run Code Online (Sandbox Code Playgroud)


Sco*_*ton 5

使用清单理解:

s[[len(i)>3 for i in s.index]]
Run Code Online (Sandbox Code Playgroud)

输出:

dddd     4
eeeee    5
dtype: int64
Run Code Online (Sandbox Code Playgroud)

  • 因为...因为...我没有理由。哦!这是因为我没有意识到您可以传递地图对象。 (2认同)