gpt4 book ai didi

python - 采样 Pandas Dataframe 的最快方法?

转载 作者:太空宇宙 更新时间:2023-11-04 00:06:27 29 4
gpt4 key购买 nike

首先,我想从三个数据帧(每个 150 行)中随机抽取样本并连接结果。其次,我想尽可能多地重复这个过程。

对于第 1 部分,我使用以下函数:

def get_sample(n_A, n_B, n_C):
A = df_A.sample(n = n_A, replace=False)
B = df_B.sample(n = n_B, replace=False)
C = df_C.sample(n = n_C, replace=False)
return pd.concat([A, B, C])

对于第 2 部分,我使用以下行:

results = [get_sample(5,5,3) for i in range(n)] 

目前 n = 50.000 在我的 MacBook 上分析大约需要 1 分 40 秒。欢迎就如何提高此过程的速度提出任何建议!

PM 三个数据帧(df_A、df_B、df_C)仅在一个分类特征上有所不同。挑战在于我想要每个类别的特定数量的样本。

最佳答案

使用 numpy ndarrays 应该更快,因为 pandas 本身是建立在 numpy 上的。采样可以通过以下方式完成:numpy.random.choice,如 here 所解释的那样.这应该相当于 pd.sample。然后你可以从 numpy 切换回 pandas。

关于python - 采样 Pandas Dataframe 的最快方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53950607/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com