如何加速numpy数组/数据帧迭代过程[关闭]

问题描述 投票:0回答:1

如何加快python中的循环过程?

我有一个包含大约1800000条记录的数据框对象。第2列包含文本数据。

我使用iloc将数据帧转换为一维numpy数组并选择第二列(text colum)和所有行。

在内部循环中,我连接了我的文本列的值并存储在变量中。

它的痛苦,花费了大量的时间和更多(在一个小时内它能够迭代超过100000次)来迭代180000条记录的数组。请大家帮忙。我是python编程的新手

code snippet

python python-3.x pandas dataframe numpy-ndarray
1个回答
1
投票

看看你的代码,看起来你只是将第二列折叠成一个大的,我假设的文本文件?如果是这样,试试这个:

corpus = DataSet.iloc[:,2].str.cat(sep=", ")

将字符串命令与数据帧一起使用时,需要在其前面加上“.str”。 cat() method在大熊猫中加入文本。系列成一个文本块。每当您只选择一个数据帧的一列时,您将返回一个pandas系列,它将采用与数据帧不同的方法。

总代码是:

DataSet = pd.read_csv('yourfilename.csv')
Corpus = DataSet.iloc[:,2].str.cat(sep=", ") # no braces around the 2

# that's it.

'sep'参数是文本之间的分隔符,您可以将其设置为您想要的。

© www.soinside.com 2019 - 2024. All rights reserved.