在python中处理大量excel行

在python中处理大量excel行,python,excel,pandas,numpy,bigdata,Python,Excel,Pandas,Numpy,Bigdata,我有.xlsx文件,其中只包含一列名为“nomenktura”,包含数千行(从60k到600k)。所有的值都是字符串。我需要检查它们是否符合我的模式。如果没有,我应该更改它们()并将结果导出到另一个.xlxs文件中 我编写了一个基本代码,可以使用pandas完成我需要的所有操作,但随着时间的推移,它的工作速度会变慢(前5k行在3分钟内处理,下5k行在30分钟内处理,依此类推)。 我是Python新手,熊猫完全是初学者。我想到的唯一想法是通过pd.DataFrame中的所有元素进行迭代,使用我的函

我有
.xlsx
文件,其中只包含一列名为“nomenktura”,包含数千行(从60k到600k)。所有的值都是字符串。我需要检查它们是否符合我的模式。如果没有,我应该更改它们()并将结果导出到另一个
.xlxs
文件中

我编写了一个基本代码,可以使用pandas完成我需要的所有操作,但随着时间的推移,它的工作速度会变慢(前5k行在3分钟内处理,下5k行在30分钟内处理,依此类推)。 我是Python新手,熊猫完全是初学者。我想到的唯一想法是通过
pd.DataFrame
中的所有元素进行迭代,使用我的函数
change\u nomen()
处理它们,将它们附加到一个空数组中,并使用此数组创建新的
pd.DataFrame
。然后直接导出到excel

下面是一个简短的程序版本,显示我使用的逻辑

import pandas as pd

def change_nomen(nomen):
    # code with millions of elif
    return new_nomen

def main():
    data = pd.read_excel("data\\test\\100k_test.xlsx")
    new_nomen_name_list = {"nomenklatura": []}

    for nomen in data["nomenklatura"]:
        new_nomen_name_list["nomenklatura"].append(change_nomen(nomen))
    
    result = pd.DataFrame(data = new_nomen_name_list)
    result.to_excel("data\\test_output\\100 000_added_zeroes.xlsx")
    
main()
我应该使用什么工具来加速我的程序?我知道
pandas.DataFrame.apply()
numpy.array()
可以帮我解决这个问题。但最有效的解决方案是什么?也许我应该试试别的

谢谢你的回答

你可能想读书