【问题标题】:Selecting a row based on conditions on .csv file根据 .csv 文件上的条件选择行
【发布时间】:2022-01-01 01:12:02
【问题描述】:

我正在尝试根据 .csv 文件中的特定条件选择一行。

如图所示。我有一个包含该表的 .csv 文件。在最后一行,“raw_flow_rate”和“avg_flow_rate”是相同的。我正在用这行代码选择那一行。

select_data = New_data[New_data["raw_flow_rate"] == New_data["avg_flow_rate"]]

而且效果很好。但我的目标是选择所选行的上一行。在这种情况下,索引号为 4。我已经尝试过 ID 列只是根据 (ID-1) 操作选择上一行。

storeID = select_data["ID"] - 1
final_data = New_data[New16_data["ID"] == storeID]

但这给出了错误can only compare identically-labeled series objects

有没有什么简单的方法可以从满足条件的行中选择上一行?我正在使用 Pandas 处理 .csv 文件。文件很大,所以最好使用更简单的方法。谢谢

【问题讨论】:

标签: python pandas data-science


【解决方案1】:

由于New_data["raw_flow_rate"] == New_data["avg_flow_rate"] 是掩码,您可以将掩码上移一位:

select_data = New_data[(New_data["raw_flow_rate"] == New_data["avg_flow_rate"]).shift(-1).fillna(False)]

【讨论】:

    猜你喜欢
    • 2020-01-24
    • 2019-01-15
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 2016-09-16
    • 1970-01-01
    • 1970-01-01
    • 2021-05-11
    相关资源
    最近更新 更多