【发布时间】:2021-01-21 04:49:54
【问题描述】:
我需要操作超过 16 次的巨大 csv,我什至无法读取它,带有块参数。
所以我尝试了 1 go 和 300 个 Mo 样本,但循环时间太长了。
我在 300 MO 上试过这个:我通过 df["ID"] = ""
创建了一个新列j = 0
for i in range(len(df["T"]) :
if (df["N"][i+1] == df_base["N"][i]) and (df["C"][i+1] == df["C"][i]) and (df["S"][i+1] == df["S"][i]) and (df["SL"][i+1] == df_base["SL"][i]) :
df["ID"][i] = j
else :
df["ID"][i] = j
j += 1
我这样做是为了得到 1 列来识别独特的事物,而不是 4 列来识别它。
但是太长了,我收到了警告:
"试图在数据帧的切片副本上设置一个值
请参阅文档中的注意事项: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy df_["ID"][i] = j"
我不介意这个错误,但2小时内的算法从未完成,所以我放弃了,因为我在工作,我不会停留2小时无所事事......
-那么如何知道函数在执行之前/不执行时的执行时间? - 我需要什么电脑来做这个......
这是一台带 8 go RAM 的笔记本电脑(7.88 go 可以使用,但由于其他应用程序对社会来说是强制性的),速度 2667 MHz,处理器 intel core i5-8365U CPU @ 1.60 GHz 有还有 Intel UHD Graphics 620,但我不知道这对您是否有用。 我使用 Jupyter Notebook,我尝试了 pycharm,但由于安全限制,我不能。
我的主要问题是加速这些进程,内存,处理器更重要的是什么?可以做什么?谢谢
谢谢。
【问题讨论】: