python - 从中间的 pandas df 读取行

标签 python pandas dataframe

我可以在 pandas df 中读取中间的行吗,就像我有一个包含 1000 万条记录的数据框,我想读取 200 万到 300 万条记录之间的记录。我知道我可以使用 skiprows 但这不能解决我的问题。

解决方法:

start_point = 2000000, number_of_records_to_be_loaded = 1000000 #2M-1M
pd.read_csv(file,skiprows=start_point,nrows=number_of_records) 

最佳答案

您可以将可调用函数传递给 skiprows,以便 pd.read_csv 知道从哪里开始和停止(如果您想要更复杂的行选择操作,这会很有用)。对于您的问题,这有效:

pd.read_csv(filepath, skiprows=lambda x: x not in range(2000000,3000000))

编辑:正如您所建议的,以下内容也有效:

pd.read_csv(file, skiprows=2000000, nrows=1000000) 

关于python - 从中间的 pandas df 读取行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69370097/

相关文章:

python - 如何在 Python 中命名列表列表?

Python - numpy.loadtxt 如何忽略结束逗号?

python - 为什么使用 lambda 函数将其设为属性?

python - 将对象列表转换为 Pandas 数据框

python - 如何计算每个产品的滚动平均值?

r - 如何通过分类变量过滤 R 中的 data.frame?

python - 如何为两列python数据框创建总和行

python - group by() 之后只有一列

python - 使用条件语句返回数据帧的子集

python - 合并数据帧而不复制 python pandas 中的行