python - 通过数据框进行高效搜索

标签 python pandas dataframe

我正在尝试在大型数据框中搜索特定日期。日期在 data_value 列中可能有多个值。找到日期后,我从与该数据关联的一组可能值中提取最大值。

有没有办法提高效率?现在运行速度很慢。

max_temps = []
for date in dates:
    value = data_w[data_w['Date']==date]['Data_Value'].max()
    max_temps.append(value)

最佳答案

如果我正确理解你的问题,那么你需要这样,

temp=data_w[data_w['Date'].isin(dates)]
print temp.groupby('Date')['Data_Value'].max()

说明:

首先在大型数据框中应用 isin,然后应用 groupby 并从中取出 max

关于python - 通过数据框进行高效搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53368628/

相关文章:

python - 我的IF语句出现语法错误,不确定为什么吗?

python - 在 QT for Python 中使用 QFrames?

Python 重命名 Pandas DataFrame 列

python - 按日期顺序组织数据行 Pandas Python

python - 如何在多个 csv 文件中收集样本

python - 有什么方法可以替换 pandas pd.merge 吗?

python - 无法解开从 pandas DataFrame 继承的类

python - 用 Pandas DataFrame 中月份 (AND - 1) 的值替换月份 IN 的 NaN

python - 通过检查连续元素来切片数据帧

Python - 创建一个新列,该列从右侧取第一列不是 Pandas 中的 NaN