【发布时间】:2021-05-02 18:20:58
【问题描述】:
我想从 DataFrame 中随机选择 n 个连续行。 这是我能想到的唯一有效代码:
random_row = df.sample(n=1)
start = random_row.index
end = start + n - 1
n_rows = df.iloc[int(start.values):int(end.values)]
但我觉得它的代码很糟糕,就像 hacky 一样,而且不是很 Python。出于某种原因,我无法使用Int64Indexes,这感觉很奇怪。我希望能够通过...索引来索引 DataFrame,但它会引发一些错误。
谁能建议如何使我的代码更好或推荐一种更好的方法来做我正在做的事情?
【问题讨论】:
-
这能回答你的问题吗? Random blocks of data in Pandas
-
@HenryEcker 不幸的是不是因为我的随机行必须事先选择,然后我必须得到以下 n 行。