Python:读取文件以在数组中存储数据的有效方法
我有一个txt文件,其结构如下:Python:读取文件以在数组中存储数据的有效方法,python,Python,我有一个txt文件,其结构如下: @<TRIPOS>MOLECULE 2bsm_lig.pdb 45 47 0 0 0 SMALL USER_CHARGES @<TRIPOS>ATOM 1 CL25 43.5837 12.4179 37.4396 Cl 1 BSM1 -0.1770 2 N1 40.4187 9.0729 42.8516 N.ar 1 BSM1
@<TRIPOS>MOLECULE
2bsm_lig.pdb
45 47 0 0 0
SMALL
USER_CHARGES
@<TRIPOS>ATOM
1 CL25 43.5837 12.4179 37.4396 Cl 1 BSM1 -0.1770
2 N1 40.4187 9.0729 42.8516 N.ar 1 BSM1 0.2996
3 H1 40.0025 9.0411 43.7713 H 1 BSM1 0.2700
我已经使用Pandas(在python3上)完成了这个操作,但是对于我的程序来说太慢了,因为这个操作将在一个大循环上执行。您知道读取这些数据并将其存储在一个阵列中的最有效方法吗?我可以存储在单个列表或numpy数组中。这已经得到了详细的回答 pandas可以灵活地使用
chunksize
参数以小块的形式读取大数据集
您可以尝试以下方法:
chunk_df = read_csv(<your_file_here>, iterator=True, chunksize=10000) # Return TextFileReader object for iteration. See the IO Tools docs for more.
chunk_df=read_csv(,iterator=True,chunksize=10000)#返回TextFileReader对象进行迭代。有关更多信息,请参阅IO工具文档。
.用迭代器自己解析,以避免内存开销HunkSize做到了这一点。谢谢
chunk_df = read_csv(<your_file_here>, iterator=True, chunksize=10000) # Return TextFileReader object for iteration. See the IO Tools docs for more.