我有一个n
行的 Dataframe 。
我想选择第二行,除非只有一行时我想选择该行。
以下是一些虚拟数据:
import pandas as pd
df=pd.DataFrame(range(20,28),columns=["day"])
df.sort_values("day",ascending=True,inplace=True)
df
我尝试过的事情:
df.head(2).tail(1)
这对于n
= 1失败-例如
df.head(1).iloc[1]
IndexError:单个位置索引器超出界限
一如既往的感谢
5条答案
按热度按时间xpszyzbs1#
您可以用途:
输出:
2ekbmq322#
用途:
如果需要一行 Dataframe :
不含
if-else
的解决方案是获取第二行并乘以条件-如果为True,则选择第一行:pu3pd22g3#
如果你考虑到
应打印:
这就是你(我)想要的。
k3bvogb14#
我们可以写一个条件来检查长度
然后我们可以使用ILOC来查询它
iloc语法- iloc[行,列]
rpppsulh5#
我会使用一个简单的try/except块,如下所示