考虑下面的pandas DataFrame:
from pandas import Timestamp
df = pd.DataFrame({
'day': [Timestamp('2017-03-27'),
Timestamp('2017-03-27'),
Timestamp('2017-04-01'),
Timestamp('2017-04-03'),
Timestamp('2017-04-06'),
Timestamp('2017-04-07'),
Timestamp('2017-04-11'),
Timestamp('2017-05-01'),
Timestamp('2017-05-01')],
'act_id': ['916298883',
'916806776',
'923496071',
'926539428',
'930641527',
'931935227',
'937765185',
'966163233',
'966417205']
})
如您所见,在7天内分发了9个唯一ID。
我正在寻找添加两个新列的方法。
每个新日的增量编号。例如1表示2017-03-27'(同一天的相同数字),2表示' 2017-04-01' 3表示' 2017-04-03& #39;等。
每天每个新act_id的增量编号。例如1表示' 916298883' 2表示' 916806776' (链接到同一天' 2017-03-27'),1为' 923496071',1为' 926539428'等。
决赛桌应该看起来像this
我已经尝试使用apply和函数构建第一列,但它并没有按预期工作。
#Create helper function to give index number to a new column
counter = 1
def giveFlag(x):
global counter
index = counter
counter+=1
return index
然后:
# Create day flagger column
df_helper['day_no'] = df_helper['day'].apply(lambda x: giveFlag(x))
答案 0 :(得分:0)
试试这个:
Code:
echo on
cmdkey.exe /list > "%TEMP%\List.txt"
findstr.exe Target "%TEMP%\List.txt" > "%TEMP%\tokensonly.txt"
FOR /F "tokens=1,2 delims= " %%G IN (%TEMP%\tokensonly.txt) DO cmdkey.exe /delete:%%H
del "%TEMP%\List.txt" /s /f /q
del "%TEMP%\tokensonly.txt" /s /f /q
pause