我正在处理一组数据,需要在400.000
行之前清理一下
要采取的两项行动:
-转售发票月份是字符串M201705
,我想创建一个名为
Year
在这种情况下只有年份2017
TR
结尾,我想从这些产品中删除TR
。例如M23065TR
我想在M23065
中更改这种情况下的所有产品,但是在列中还有一些产品名称已经很好了M340767
下面是我的代码,它需要超过2h
才能运行,您是否有一个解决方案来简化它以减少时间。
多谢各位for i in range(Ndata.shape[0]):
Ndata.loc[i,'Year']=Ndata.loc[i,'Resale Invoice Month'][1:5]
if (Ndata['Commercial Product Code'][i][-2:]=='TR')==True:
Ndata.loc[i,'Commercial Product Code']=Ndata.loc[i,'Commercial Product Code'][:-2]
使用
pandas
时,始终尝试矢量化,而不是使用循环您可以执行以下操作:
相关问题 更多 >
编程相关推荐