【发布时间】:2019-03-21 02:08:12
【问题描述】:
我是 Python 的新手,我正在使用一个感兴趣的数据集来帮助我学习,特别是试图更好地理解 pandas 和 numpy。
我的数据框有超过一百万行,我正在尝试创建一个自定义存储桶,以便找到更多有趣的见解。我的数据集如下所示:
我的数据表:
Price Postal_area Purchase_Month
123000 SE22 2018_01
240000 GU22 2017_02
.
.
.
我想将数据分组到
我试图做的是创建一个自定义函数:
def price_range(Price):
if (Price <= 100000):
return ("Low Value")
elif (100000 < Price < 200000):
return ("Medium Value")
elif (200001 < Price < 500000):
return ("Medium High")
elif (Price > 500001):
return ("High")
else:
return ("Undefined")
然后我在我的数据集中创建一个新列,如下所示:
for val in (my_table.Price):
my_table["price_range"] = (price_range(val))
我应该能够从中创建一个 agg,但它是一个极其缓慢的过程 - 已经在大约 100 万行上运行了 30 多分钟并且仍在运行!
我曾尝试使用 numpy 和 pandas(数据透视表、groupby、lambdas)创建自定义数据存储桶,但无法弄清楚如何合并自定义存储桶逻辑。
我查看了以下几个其他答案,但它没有满足我的特定自定义需求: Efficient way to assign values from another column pandas df
非常感谢任何帮助!
【问题讨论】:
标签: python pandas dataframe aggregate bins