gpt4 book ai didi

python - drop_duplicates python 3.6 的替代方案

转载 作者:行者123 更新时间:2023-12-01 09:21:26 24 4
gpt4 key购买 nike

我正在处理大量数据,行数约为 5000 万。我想从多个列中查找唯一的列值。我使用下面的脚本。

dataAll[['Frequency', 'Period', 'Date']].drop_duplicates()

但这需要很长时间,超过 40 分钟。

我找到了一些替代方案:

pd.unique(dataAll[['Frequency', 'Period', 'Date']].values.ravel('K'))

enter image description here

但是上面的脚本将给出数组,但我需要在数据框中像第一个脚本将给出如下

enter image description here

最佳答案

一般来说,您的新代码不可能转换为 DataFrame,因为:

pd.unique(dataAll[['Frequency', 'Period', 'Date']].values.ravel('K'))

创建一个大的1d numpy 数组,因此删除重复项后不可能重新创建行。

例如如果有 2 个唯一值 31 则不可能找到 31 的日期时间。

<小时/>

但是,如果Frequency 只有一个唯一值,并且对于每个Period 都可以像示例中那样找到Date,则解决方案是可能的。

编辑:

一种可能的替代方案是使用 dask.dataframe.DataFrame.drop_duplicates .

关于python - drop_duplicates python 3.6 的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50772282/

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