抓取熊猫系列

时间:2017-02-16 23:56:19

标签: string pandas filtering

我有一个带X列的数据帧df。 我想用df [' job.filename']列中的子字符串填充df [' date']和df [' time']。 我试图将系列转换为列表,然后抓住列表[x:y] =日期和

for i,row in df.iterrows(): df.set_value(i,'time',row['job.filename'][-10:-4]) df.set_value(i,'date',row['job.filename'][21:27])

但这并没有奏效 干杯

1 个答案:

答案 0 :(得分:1)

我带了你的示例job.filename来创建一个数据帧,并尝试了以下内容:

df = pd.DataFrame(['IMAT list 1-3609-0-20161214-092934.csv'])
df['date'] = df[0].str.extract('.*-\d+-(\d+)-\d+') #0 is the column name, in your case job.filename
df['time'] = df[0].str.extract('.*-\d+-\d+-(\d+)')

你得到:

 0                                      date        time

0 IMAT list 1-3609-0-20161214-092934.csv 20161214 092934

只有当所有值都遵循确切的模式

时,此正则表达式才有效