Re: [问题] for + if 优化问题

楼主: TuCH (谬客)   2019-04-29 08:37:18
一千万笔大约0.6秒 给您参考看看
import pandas as pd
import numpy as np
# 随机产生测试资料
data = np.random.randint(1,9,10000000)
# pandas 读取
df = pd.DataFrame(data)
# column 取名
df.columns = ['A']
# column B 初始化
df['B'] = 1
# 计算
df.loc[df['A'].diff()==0,'B'] = df['A'].shift()+1
※ 引述《Brahms5566 (Brahms)》之铭言:
: 想请教各位大大
: 在python里面要怎么写出excel以下的功能:
: if A2=A1, 则B2=A1+1 , 否则 B2=1
: 小弟试写for+if如下, 但速度实在太慢, excel在B栏用if函数往下拉只需要5秒,
: python却要120秒...
: df是dataframe, 有A, B两栏
: for i in range(len(df)):
: if df['A'][i+1] == df['A'][i]:
: df['B'][i+1] = df['A'][i] + 1
: else:
: df['B'][i+1] = 1
: 请问要怎么修改可以速度快一点..
: 谢谢!

Links booklink

Contact Us: admin [ a t ] ucptt.com